Manchmal kann es vorkommen, dass der Benutzer mit Pod-Status wie „Fehler“, „Fehler“ oder „Unbekannter Status“ konfrontiert wird. Um den Pod zu debuggen oder die im Pod ausgeführte Anwendung zu überwachen, muss der Benutzer möglicherweise die Protokolle des Pods anzeigen.
Dieser Beitrag erklärt:
- Wie erhalte ich Protokolle eines einzelnen Pods?
- Wie erhalte ich Protokolle bestimmter Pod-Container?
- Wie erhalte ich Protokolle aller Pod-Container?
- Wie erhalte ich Bereitstellungsprotokolle in Kubernetes?
- Wie erhalte ich Protokolle aller Pods der Kubernetes-Bereitstellung?
- Abschluss
Wie erhalte ich Protokolle eines einzelnen Pods?
Die Pods können als separate Komponente im Kubernetes-Cluster ausgeführt oder durch die Kubernetes-Bereitstellung verwaltet und betrieben werden. Bei Pods, auf denen separate Containeranwendungen ausgeführt werden und die nicht Teil einer Bereitstellung sind, können die Protokolle dieser Pods nur einzeln überprüft werden. Um die Protokolle eines einzelnen Pods zu überprüfen, führen Sie die folgenden Schritte aus.
Schritt 1: Pods besorgen
Um Kubernetes-Pods aufzulisten, verwenden Sie „ kubectl holt Pods ” Befehle:
kubectl holt Pods
Aus der folgenden Ausgabe können Sie sehen, dass derzeit fünf Pods ausgeführt werden: „ Demo-Pod ” läuft und hat nur einen Container. Die nächsten drei Pods sind Teil von „ HTML-Bereitstellung ', und der letzte ' Web-App „Pod führt zwei Container aus:
Schritt 2: Protokolle eines einzelnen Pods anzeigen
Um die Protokolle eines einzelnen Pods abzurufen, verwenden Sie „ kubectl protokolliert
kubectl protokolliert den Demo-Pod
Wie erhalte ich Pod-Protokolle vom Ende?
Normalerweise sind die Protokolle länger und können Hunderte von Zeilen enthalten. Manchmal möchten Benutzer Pods von bestimmten Punkten oder bis zu einer bestimmten Anzahl von Protokollen anzeigen. Um eine bestimmte Anzahl von Protokollen vom Ende aus anzuzeigen, verwenden Sie den folgenden Befehl:
kubectl protokolliert den Demo-Pod --Schwanz 2Hier das ' -Schwanz Die Option „wird verwendet, um das Protokoll vom Ende aus anzuzeigen.
Wie erhalte ich Protokolle bestimmter Pod-Container?
Der einzelne Kubernetes-Pod kann einen oder mehrere Container ausführen. Um auf das Protokoll eines Pod-Containers zuzugreifen, befolgen Sie die folgenden Anweisungen.
Schritt 1: Pods besorgen
Um die Pods des Kubernetes-Clusters aufzulisten, verwenden Sie „ kubectl holt Pods ' Befehl:
kubectl holt PodsHier das ' Web-App ” führt mehr als einen Container aus:
Notiz: Manchmal erinnert sich der Benutzer möglicherweise nicht an die Namen der im Pod ausgeführten Container. Um die Behälterdetails im Inneren des Pods zu überprüfen, inspizieren Sie den Pod durch das „ kubectl beschreibt Pod
Schritt 2: Protokolle des Containers anzeigen
Um die Protokolle des jeweiligen Pod-Containers abzurufen, verwenden Sie den Befehl „kubectl logs
Wie erhalte ich Protokolle aller Pod-Container?
Um Protokolle aller Container des Kubernetes-Pods anzuzeigen, legen Sie das „ –alle-Container „Wert als“ WAHR ' im ' kubectl-Protokolle ' Befehl:
kubectl protokolliert die Web-App --all-container = WAHR
Wie erhalte ich Bereitstellungsprotokolle in Kubernetes?
Bereitstellungen sind weitere zentrale Kubernetes-Ressourcen, die die Containeranwendung innerhalb der Pods ausführen. Das Deployment verwaltet und betreibt die laufenden Pods mithilfe von Replikaten. Um die Bereitstellungsprotokolle anzuzeigen, führen Sie die unten aufgeführten Schritte aus.
Schritt 1: Holen Sie sich alle Kubernetes-Ressourcen
Um alle Ressourcen von Kubernetes aufzulisten, verwenden Sie den Befehl „kubectl get all“:
kubectl bekommt allesHier können Sie sehen, dass drei Pods unter der Bereitstellung „html-deployment“ ausgeführt werden:
Schritt 2: Bereitstellungsprotokolle anzeigen
Um die Protokolle der Kubernetes-Bereitstellung abzurufen, verwenden Sie „ kubectl protokolliert die Bereitstellung/
Die Ausgabe zeigt, dass drei Pods in „html-deployment“ gefunden werden und derzeit nur die Protokolle des ersten Pods angezeigt werden:
Wie erhalte ich Protokolle aller Pods der Kubernetes-Bereitstellung?
Im obigen Fall werden nicht die Protokolle aller Bereitstellungs-Pods angezeigt. Um die Protokolle aller Pods einer Kubernetes-Bereitstellung anzuzeigen, ermitteln Sie zunächst die Bezeichnung der Pods. Greifen Sie dann auf die Protokolle aller Pods zu, indem Sie die Pod-Bezeichnung angeben. Gehen Sie zur Demonstration die folgenden Anweisungen durch.
Schritt 1: Pods besorgen
Greifen Sie mit der Option „–show-label“ im Befehl „kubectl get pods“ auf die Kubernetes-Pods zusammen mit ihren Beschriftungen zu:
kubectl holt Pods --show-labelHier zeigt das folgende Ergebnis die Pods zusammen mit den Beschriftungen. Diese Pods haben dieselbe Bezeichnung, da sie unter derselben Bereitstellung ausgeführt werden:
Schritt 2: Protokolle aller Bereitstellungs-Pods anzeigen
Sehen Sie sich nun die Protokolle aller Bereitstellungs-Pods anhand der Pod-Beschriftung an. Verwenden Sie dazu den Befehl „kubectl logs -l
kubectl-Protokolle -l App =nginx --all-container
Live-Ansicht der Protokolle von Pods
Um die Protokolle während der Ausführung der Kubernetes-Pods live anzuzeigen, verwenden Sie die Option „-f“ zusammen mit dem Befehl „kubectl logs“:
kubectl-Protokolle -l App =nginx -FHier wird die Option „-l“ verwendet, um die Pod-Bezeichnung anzugeben, und die Option „–all-containers“ zeigt die Protokolle aller Container an, die unter den Pods ausgeführt werden:
Dabei geht es darum, Protokolle aller Pods mit kubectl anzuzeigen.
Abschluss
In Kubernetes kann der Benutzer die Protokolle aller Pods anzeigen, die unter der Bereitstellung ausgeführt werden. Um die Protokolle eines einzelnen Pods abzurufen, verwenden Sie den Befehl „kubectl logs