Freigeben über


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

  1. 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.

  2. 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 --namespacekubectl exec Parameter hinzufügen.

    kubectl exec azure-vote-front-848767080-tf34m -it -- /bin/bash
    
  3. 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

  1. Führen Sie aus tcpdump -s 0 -vvv -w /capture.cap , um mit der Erfassung von TCP-Paketen auf Ihrem Pod zu beginnen.

  2. Nachdem die Paketerfassung abgeschlossen ist, beenden Sie Ihre Pod-Shellsitzung.

  3. 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.