Pods: De minste enhetene
Lær om Pods, de grunnleggende byggeklossene i Kubernetes, og hvordan du definerer og administrerer dem.
Pods: De minste enhetene er en gratis leksjon i Grunnleggende Docker og DevOps på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Grunnleggende Docker og DevOps, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Grunnleggende Docker og DevOps inneholder totalt 4 leksjoner.
Hva er en Kubernetes Pod?
I Kubernetes er den minste og mest grunnleggende enheten De kan distribuere, en Pod. Tenk på en Pod som et «hus» som inneholder én eller flere containere.
Pods er et abstraksjonslag over containere. De representerer en prosess som kjører i klyngen, og kapsler inn applikasjonscontainere, lagringsressurser, en unik nettverks-IP-adresse og alternativer som styrer hvordan containerne skal kjøre.

Pod kontra container: forskjellen
De lurer kanskje på «Hvorfor trenger jeg en Pod hvis jeg allerede har containere?» Her er den viktigste forskjellen:
- En container (for eksempel en Docker-container) er en pakke som inneholder en applikasjon og avhengighetene dens.
- En Pod er Kubernetes’ abstraksjon som pakker inn én eller flere containere og gir dem delte ressurser og én felles nettverksidentitet.
Mens en container er det som faktisk kan kjøres, er en Pod måten Kubernetes administrerer og orkestrerer disse kjørbare enhetene på.
Hvorfor bruke Pods?
Pods har flere viktige fordeler:
- Delt nettverksnavnerom: Alle containere i en Pod deler samme IP-adresse og nettverksporter. De kan kommunisere med hverandre ved hjelp av
localhost. - Delt lagring: Pods kan dele lagringsvolumer, slik at containere i samme Pod får tilgang til felles data.
- Samplassering og samscheduling: Containere som må samarbeide tett (for eksempel en applikasjon og en loggagent), kan garanteres å kjøre på samme node og blir alltid planlagt sammen.
En Pod-definisjons anatomi
Pods defineres ved hjelp av YAML-konfigurasjonsfiler. Her er de viktigste komponentene De finner:
apiVersion: Angir Kubernetes API-versjonen (for eksempelv1).kind: Typen Kubernetes-objekt, som erPod.metadata: Informasjon som Pod-ensnameoglabels.spec: Den ønskede tilstanden for Pod-en, inkludertcontainerssom skal kjøres,volumesog andre innstillinger.
Definere en Pod med én container
De fleste Pods inneholder én enkelt container. Dette er vanlig for enkle applikasjoner. Her er en grunnleggende YAML-definisjon for en Pod som kjører en Nginx-webserver:
apiVersion: v1
kind: Pod
metadata:
name: my-nginx-pod
labels:
app: webserver
spec:
containers:
- name: nginx-container
image: nginx:latest
ports:
- containerPort: 80Distribuere Deres første Pod
For å opprette en Pod fra en YAML-fil bruker De kommandoen kubectl apply. Den ber Kubernetes om å opprette eller oppdatere ressurser basert på definisjonen Deres.
La oss si at De lagrer den forrige Nginx Pod-definisjonen som nginx-pod.yaml. Da distribuerer De den slik:
kubectl apply -f nginx-pod.yaml
Kubernetes planlegger deretter denne Pod-en for kjøring på en av arbeidsnodene.
Undersøke Pods: Get og Describe
Når Pod-ene er distribuert, vil De kontrollere statusen deres. Her er to viktige kubectl-kommandoer:
kubectl get pods: Viser alle Pods i gjeldende navnerom, med navn, status og node.kubectl describe pod <pod-name>: Gir detaljert informasjon om en bestemt Pod, inkludert hendelser, containerstatus og tildelte ressurser.
Disse kommandoene er avgjørende for overvåking og feilsøking.
Pods med flere containere: sidecars
Selv om Pods med én container er vanlige, kan enkelte situasjoner ha nytte av Pods med flere containere. Et klassisk eksempel er sidecar-mønsteret.
En sidecar-container kjører sammen med hovedcontaineren for applikasjonen i samme Pod og utfører hjelpeoppgaver som:
- Logg- og overvåkingsagenter
- Datasynkronisering
- Proxying av nettverkstrafikk
De deler Pod-ens nettverk og lagring, noe som gjør kommunikasjonen effektiv.
Eksempel: Pod med flere containere
Her er et eksempel på en Pod med flere containere. Den har en Nginx-webserver og en busybox-sidecar-container som skriver logger til et delt volum.
apiVersion: v1
kind: Pod
metadata:
name: multi-container-pod
spec:
volumes:
- name: shared-log-volume
emptyDir: {}
containers:
- name: web-server
image: nginx:latest
ports:
- containerPort: 80
volumeMounts:
- name: shared-log-volume
mountPath: /var/log/nginx
- name: log-writer
image: busybox:latest
command: ["/bin/sh", "-c", "while true; do echo 'Hello from sidecar!' >> /var/log/app.log; sleep 5; done"]
volumeMounts:
- name: shared-log-volume
mountPath: /var/log/appTest kunnskapen Deres om Pods
Hvilket av følgende utsagn om Kubernetes Pods er SANT?
Oppsummering: Pods – kjerneenheten
De har nettopp lært om Kubernetes Pods, de grunnleggende byggeklossene for applikasjonene Deres i en klynge.
- Pods kapsler inn én eller flere containere og gir dem delte ressurser.
- De tilbyr delt nettverk og lagring og garanterer samplassering for relaterte containere.
- De definerer Pods ved hjelp av YAML og distribuerer dem med
kubectl apply. kubectl get podsogkubectl describe podhjelper Dem med å overvåke dem.
Deretter skal vi utforske flere kubectl-kommandoer for samhandling med klyngen Deres!
Lær deg Grunnleggende Docker og DevOps med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Pods: De minste enhetene» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Grunnleggende Docker og DevOps, inkludert «Pods: De minste enhetene», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Grunnleggende Docker og DevOps inneholder totalt 4 leksjoner.
Hva lærer jeg i «Pods: De minste enhetene»?
Lær om Pods, de grunnleggende byggeklossene i Kubernetes, og hvordan du definerer og administrerer dem. Du øver på Grunnleggende Docker og DevOps med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Grunnleggende Docker og DevOps?
Ingen tidligere erfaring er nødvendig. Grunnleggende Docker og DevOps på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Pods: De minste enhetene»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Grunnleggende Docker og DevOps-leksjonen?
Ja. Alle Grunnleggende Docker og DevOps-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Kubernetes-arkitektur
- Pods: De minste enhetene
- Det viktigste om kubectl-kommandoer
- Namespaces og labels for organisering