Felsöka Pods och Services
Använd kubectl-kommandon och andra verktyg för att effektivt felsöka Pods som inte fungerar korrekt och anslutningsproblem.
Felsöka Pods och Services är en gratis lektion i Grunderna i Kubernetes på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Grunderna i Kubernetes, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Grunderna i Kubernetes innehåller totalt 4 lektioner.
Varför felsökning är viktig
När applikationerna inte beter sig som de ska i Kubernetes är felsökning din superkraft! Den hjälper dig att förstå vad som gick fel och hur du åtgärdar det.
Vanliga tecken på problem är:
- Pods som har fastnat i tillståndet 'Pending' eller 'CrashLoopBackOff'.
- Services som inte går att nå.
- Applikationer som inte svarar som förväntat.
Vi lär oss viktiga verktyg för att diagnostisera dessa problem.
Ditt kubectl-kit för felsökning
Kubernetes tillhandahåller kraftfulla kommandoradsverktyg, främst kubectl, som hjälper dig att granska och felsöka klustret.
Viktiga kommandon som vi utforskar i dag är:
kubectl describe: Hämta detaljerad information om resurser.kubectl logs: Visa utdata från containers.kubectl exec: Kör kommandon i containers.kubectl port-forward: Få åtkomst till Services lokalt.
När du behärskar dessa blir du riktigt bra på Kubernetes-felsökning!
Djupdykning med kubectl describe
Kommandot kubectl describe är det första du bör använda för detaljerad information om alla Kubernetes-resurser, särskilt Pods.
Det ger en mängd information, bland annat om händelser, status, IP-adresser, volymer och containerdetaljer. Leta efter 'Events' längst ned för ledtrådar!
kubectl describe pod my-nginx-podFörstå klusterhändelser
Händelser är viktiga för att förstå vad som har hänt med dina Pods eller andra resurser. De berättar om skapande, schemaläggning, fel och mycket mer.
Du kan se händelser för en specifik resurs med hjälp av describe, eller visa händelser i hela klustret med kubectl get events.
kubectl get events --sort-by='.lastTimestamp'Tolka containerloggar
Applikationer skriver vanligtvis ut viktiga meddelanden, fel och felsökningsinformation till sina standardströmmar för utdata och fel. Med kubectl logs kommer du åt denna information.
Om en Pod kraschar är det viktigt att kontrollera loggarna för att förstå varför den misslyckas. Du kan även följa loggar i realtid.
kubectl logs my-app-pod -fKöra kommandon i containers
Ibland räcker det inte att visa loggar. Du kan behöva köra kommandon inuti en container som körs för att diagnostisera problem, precis som när du ansluter till en server via SSH.
kubectl exec låter dig köra kommandon eller till och med öppna ett skal, till exempel bash eller sh, direkt i en container.
kubectl exec -it my-app-pod -- /bin/bashLokal åtkomst med port-forward
När du misstänker att en Service inte går att nå, eller vill testa den lokalt utan att exponera den externt, är kubectl port-forward ett användbart verktyg.
Det skapar en säker tunnel från din lokala dator till en Pod eller Service i klustret, så att du kan komma åt den via localhost.
kubectl port-forward service/my-web-service 8080:80Diagnostisera Service-problem
Om applikationen inte går att nå via sin Service bör du kontrollera två saker:
- Service Selector: Matchar den dina Pods etiketter korrekt?
- Endpoints: Har Servicen några aktiva endpoints (det vill säga körande Pods)?
Använd kubectl get svc och kubectl get ep för att granska dessa.
kubectl get svc my-web-service
kubectl get ep my-web-serviceHantera vanliga problem
Vi tittar på två vanliga Pod-problem:
CrashLoopBackOff: Containern startar och kraschar upprepade gånger. Kontrollerakubectl logsefter fel.ImagePullBackOff: Kubernetes kan inte hämta containerimagen. Kontrollera imagenamn, tagg och åtkomst till registret.
kubectl describe pod visar ofta den ursprungliga orsaken i avsnittet 'Events'.
Felsökningsutmaning!
Du upptäcker att en Pod med namnet data-processor-xyz befinner sig i tillståndet CrashLoopBackOff. Du måste undersöka varför den kraschar.
Vilka av följande två kommandon är viktigast att köra först för att diagnostisera den omedelbara orsaken?
Repetition: bemästra felsökning
Bra jobbat! Du har lärt dig använda viktiga kubectl-kommandon för att felsöka Pods och Services:
kubectl describeför detaljerad resursinformation och händelser.kubectl logsför att se vad som händer i containers.kubectl execför interaktiv felsökning.kubectl port-forwardför lokal åtkomst till Services.
Dessa verktyg är viktiga för att hålla dina Kubernetes-applikationer igång utan problem. Fortsätt öva!
Lär dig Grunderna i Kubernetes med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Felsöka Pods och Services” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Grunderna i Kubernetes, inklusive ”Felsöka Pods och Services”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Grunderna i Kubernetes innehåller totalt 4 lektioner.
Vad lär jag mig i ”Felsöka Pods och Services”?
Använd kubectl-kommandon och andra verktyg för att effektivt felsöka Pods som inte fungerar korrekt och anslutningsproblem. Ni övar på Grunderna i Kubernetes med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Grunderna i Kubernetes?
Du behöver inga förkunskaper. Utbildningen i Grunderna i Kubernetes på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”Felsöka Pods och Services”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Grunderna i Kubernetes-lektionen?
Ja. Varje Grunderna i Kubernetes-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Diagnostisera vanliga problem
- Felsöka Pods och Services
- Bästa praxis och tips för produktion
- Resource Quotas och Limit Ranges