Med företag som försöker använda containerteknologi för distribution på produktionsnivå blir klusterhantering och orkestrationsmotorer framträdande. Naturligtvis är Kubernetes en av de framstående orkestrationsmotorerna där ute. Pods and Nodes spelar en viktig roll i Kubernetes-världen. Så låt oss diskutera grunderna i dessa komponenter.
Kubernetes Pods
En pod kan definieras som en samling containrar som delar nätverkslagring och bruksanvisningar. Det fungerar som en enhet. Alla containrar i Pod är samplacerade och samplanerade. Det är i grunden en applikationsspecifik “logisk värd”.
Här är egenskaperna hos en Kubernetes Pod:
- Delad lagring: Delar lagringen som volymer.
- Unik IP: Har en unik kluster-IP-adress tilldelad.
- Behållarinformation: Innehåller information om containerversioner och instruktioner för containerutförande och portanvändning.
Det finns inga hårda och snabba regler om hur man kombinerar containrar för att skapa en Pod. Men tanken är att tätt koppla ihop en eller flera applikationsbehållare. I den fysiska eller virtuella maskinvärlden skulle en Pod se ut som en enda maskin med värd för tätt kopplade applikationer.
Vid utformningen av en Pod bör Kubernetes-utvecklare tänka på Pod som en atomenhet. Så du kan lägga till applikationer som kommer att dra nytta av närhet. Du kan till exempel lägga en behållare för Node.js webbapplikation och behållaren som förser den med data i samma Pod. På så sätt kommer behållarna att dra nytta av samplacering och samschemaläggning i en enda Pod.
Pods ska vara lätt utbytbara. Varje Pod skapas genom att kombinera en eller flera applikationsbehållare. Sedan distribueras den till en nod. Den förblir på noden tills den avslutas. Om noden misslyckas skapar Kubernetes-huvudkomponenter liknande Pods i de friska noderna i klustret.
Kubernetes noder
En nod definieras som en arbetarmaskin. I den tidiga utvecklingen av Kubernetes kallades en nod för minion. Det kan vara en fysisk eller virtuell maskin. Befälhavaren hanterar varje nod. Flera pods kan distribueras till en nod och det finns inga begränsningar för vilken typ av pods som kan köras på noderna. Kubernetes Master hanterar schemaläggningen av Pods över de olika noderna och håller reda på tillgängliga resurser på dem.
Här är de obligatoriska komponenterna i en Kubernetes-nod:
- Kubelett: Varje nod har en Kubelet. Det är mellanhänder mellan Kubernetes Master och Kubernetes Nodes. Kubelet-processen är ansvarig för att köra Pods och behållarna inuti dessa Pods.
- Behållarens körtid: Det är container runtime manager. Det hämtar containeravbildningen från ett register, packar upp den och kör containerapplikationen.
Till skillnad från Pods skapas inte noder direkt av Kubernetes. Kuberenetes tar den fysiska eller virtuella maskinen i din pool av resurser i ditt moln eller datacenter och skapar en abstraktion. Så när Kuberenetes skapar en nod skapar den ett objekt som representerar noden.
Slutsats
Pods och noder är grundläggande begrepp för Kubernetes. Behållare kombineras för att skapa Pod-arbetsbelastningar och sedan distribueras Pods till noder eller arbetsmaskiner. Genom kombinationen av Pods och Nodes kan Kubernetes bygga kraftfulla kluster för att stödja storskaliga applikationer.
Ytterligare studier:
- Kubernetes Pods
- Kubernetes noder
Referenser:
- https: // kubernetes.io / docs / tutorials / kubernetes-basics / Explore-intro /
- https: // kubernetes.io / docs / koncept / konfiguration / tilldela-pod-nod /
- https: // kubernetes.io / docs / koncept / arbetsbelastningar / pods / pod /
- https: // kubernetes.io / docs / koncept / arkitektur / noder /
- Skapa ett Kubernetes-kluster med två noder på 10 minuter, YouTube Video