Erfassen von TCP-Paketen von einem Pod in einem AKS-Cluster
In diesem Artikel wird erläutert, wie Sie eine TCP-Datenverkehrserfassung in einem Pod eines AKS-Clusters (Azure Kubernetes Service) durchführen und die Erfassung auf Ihren lokalen Computer herunterladen.
Voraussetzungen
Sie müssen die Azure CLI-Version 2.0.59 oder höher ausführen.
Führen Sie aus az --version
, um die Version zu überprüfen. Informationen zum Installieren der neuesten Version der Azure CLI finden Sie unter Installieren der Azure CLI.
Identifizieren des Pods und Installieren von TCPdump
Identifizieren Sie den Namen des Pods, von dem Sie die TCP-Pakete erfassen möchten. Dies sollte der Pod sein, der die Konnektivitätsprobleme aufweist. Führen Sie dazu aus
kubectl get pods -A
, um die Liste der Pods in Ihrem AKS-Cluster anzuzeigen. Ausgabebeispiel:NAME READY STATUS RESTARTS AGE azure-vote-back-2549686872-4d2r5 1/1 Running 0 31m azure-vote-front-848767080-tf34m 1/1 Running 0 31m
Wenn Sie den Namespace kennen, in dem der Pod ausgeführt wird, können Sie auch ausführen,
kubectl get pods -n <namespace>
um eine Liste der Pods abzurufen, die in diesem Namespace ausgeführt werden.Stellen Sie eine Verbindung mit dem Pod her, den Sie im vorherigen Schritt identifiziert haben. Die folgenden Befehle verwenden "azure-vote-front-848767080-tf34m" als Podnamen. Ersetzen Sie sie durch den richtigen Podnamen. Wenn sich der Pod nicht im Standardnamespace befindet, müssen Sie dem Befehl den
--namespace
kubectl exec
Parameter hinzufügen.kubectl exec azure-vote-front-848767080-tf34m -it -- /bin/bash
Nachdem Sie eine Verbindung mit dem Pod hergestellt haben, führen Sie aus
tcpdump --version
, um zu ermitteln, ob der TCPdump installiert ist. Wenn Sie die Meldung "Befehl nicht gefunden" erhalten, führen Sie den folgenden Befehl aus, um den TCPdump im Pod zu installieren:apt-get update && apt-get install tcpdump
Wenn Ihr Pod Alpine Linux verwendet, führen Sie den folgenden Befehl aus, um TCPdump zu installieren:
apk add tcpdump
Erfassen und Speichern von TCP-Paketen in einem lokalen Verzeichnis
Führen Sie aus
tcpdump -s 0 -vvv -w /capture.cap
, um mit der Erfassung von TCP-Paketen auf Ihrem Pod zu beginnen.Nachdem die Paketerfassung abgeschlossen ist, beenden Sie Ihre Pod-Shellsitzung.
Führen Sie den folgenden Befehl aus, um die Pakete im aktuellen Verzeichnis zu speichern:
kubectl cp azure-vote-front-848767080-tf34m:/capture.cap capture.cap
Kontaktieren Sie uns für Hilfe
Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.