Führen Sie die Paketerfassung für eine Paketkerninstanz durch

Die Paketerfassung für Pakete auf Steuerungs- oder Datenebene wird mit dem MEC-Dataplane Trace-Tool durchgeführt. MEC-Dataplane (MEC-DP) Trace ähnelt tcpdump, einem Computerprogramm für die Datennetzwerkpaketanalyse, das auf einer Befehlszeilenschnittstelle (CLI) ausgeführt wird. Sie können MEC-DP Trace verwenden, um Pakete auf jeder Schnittstelle der Benutzerebene im Zugriffsnetzwerk (N3-Schnittstelle) oder Datennetzwerk (N6-Schnittstelle) auf Ihrem Gerät sowie auf der Steuerebene (N2-Schnittstelle) zu überwachen und aufzuzeichnen. Sie können über das Azure-Portal oder die Azure CLI auf MEC-DP Trace zugreifen.

Die Paketerfassung funktioniert durch Spiegelung von Paketen auf eine Linux-Kernelschnittstelle, die dann mithilfe von tcpdump überwacht werden kann. In dieser Anleitung erfahren Sie, wie Sie die Paketerfassung einer Paketkerninstanz durchführen.

Wichtig

Durch das Ausführen der Paketerfassung wird die Leistung Ihres Systems und der Durchsatz Ihrer Datenebene reduziert. Es wird daher empfohlen, dieses Tool nur bei anfänglichen Tests in geringem Umfang zu verwenden.

Voraussetzungen

Sie müssen einen AP5GC-Standort eingerichtet haben, um die Paketerfassung durchzuführen.

Um die Paketerfassung mithilfe der Befehlszeile durchzuführen, müssen Sie Folgendes tun:

  • Identifizieren Sie die Ressource Kubernetes – Azure Arc, die den Kubernetes-Cluster mit Azure Arc-Unterstützung darstellt, in dem Ihre Paketkerninstanz ausgeführt wird.
  • Stellen Sie sicher, dass Ihr lokaler Computer über kubectl-Zugriff auf den Kubernetes-Cluster mit Azure Arc-Unterstützung verfügt. Dies erfordert eine kubeconfig-Kerndatei. Informationen dazu, wie Sie diese erhalten, finden Sie unter Kernnamespacezugriff.

Durchführen der Paketerfassung mithilfe des Azure-Portals

Einrichten eines Speicherkontos

Sie müssen ein Speicherkonto einrichten, um das Diagnosepaket zu speichern.

  1. Erstellen Sie ein Speicherkonto für die Diagnose mit der folgenden zusätzlichen Konfiguration:
    1. Wählen Sie auf der Registerkarte Schutz von Daten unter Zugriffssteuerung die Option Unterstützung für Unveränderlichkeit auf Versionsebene aktivieren aus. Dadurch können Sie im nächsten Schritt eine zeitbasierte Aufbewahrungsrichtlinie für das Konto angeben.
    2. Wenn der Inhalt Ihres Speicherkontos nach einem bestimmten Zeitraum automatisch gelöscht werden soll, konfigurieren Sie eine zeitbasierte Standardaufbewahrungsrichtlinie für Ihr Speicherkonto.
    3. Erstellen Sie einen Container für Ihre Diagnose.
    4. Notieren Sie sich die URL des Container-BLObs. Zum Beispiel:
      https://storageaccountname.blob.core.windows.net/diagscontainername
      1. Navigieren Sie zu Ihrem Speicherkonto.
      2. Wählen Sie das ...-Symbol auf der rechten Seite des Container-BLObs aus, den Sie für die Diagnosesammlung verwenden möchten.
      3. Wählen Sie im Kontextmenü Containereigenschaften aus.
      4. Kopieren Sie den Inhalt des URL-Felds in der Ansicht Containereigenschaften.
  2. Erstellen Sie eine benutzerseitig zugewiesene Identität, und weisen Sie sie dem oben erstellten Speicherkonto mit der Rolle des Speicher-BLOb-Datenmitwirkenden zu.

    Tipp

    Möglicherweise haben Sie beim Erstellen der Website bereits eine benutzerseitig zugewiesene Identität erstellt und zugeordnet.

  3. Navigieren Sie zur Ressource Paketkernsteuerungsebene für den Standort.
  4. Wählen Sie im linken Menü unter Einstellungen die Option Identität aus.
  5. Wählen Sie Hinzufügen aus.
  6. Wählen Sie die benutzerseitig zugewiesene verwaltete Identität aus, die Sie erstellt haben, und wählen Sie Hinzufügen aus.

Wichtig

Nachdem Sie die vom Benutzer zugewiesene verwaltete Identität erstellt haben, müssen Sie die Paketkernkonfiguration aktualisieren, indem Sie eine Dummy-Konfigurationsänderung vornehmen. Dies kann eine Änderung sein, die keine Auswirkungen auf Ihre Bereitstellung hat und bestehen bleiben kann, oder eine Änderung, die Sie umgehend wieder zurücksetzen. Weitere Informationen zum Ändern einer Pocket Core-Instanz finden Sie hier. Wenn Sie die Pocket Core-Konfiguration nicht aktualisieren, ist die Paketerfassung nicht erfolgreich.

Starten einer Paketerfassung

  1. Melden Sie sich beim Azure-Portal an.
  2. Navigieren Sie zur Übersichtsseite Paketkern-Steuerungsbereich des Standorts, in dem Sie eine Paketerfassung ausführen möchten.
  3. Wählen Sie auf der linken Seite unter dem Abschnitt Hilfe die Option Paketerfassung aus. Dadurch wird eine Paketerfassungsansicht geöffnet.
  4. Wenn Sie zum ersten Mal eine Paketerfassung mithilfe des Portals durchgeführt haben, wird eine Fehlermeldung angezeigt, in der Sie aufgefordert werden, ein Speicherkonto zu konfigurieren. Wenn dies der Fall ist:
    1. Folgen Sie dem Link in der Fehlermeldung.
    2. Geben Sie die Container-URL des Speicherkontos ein, die für den Diagnosespeicher konfiguriert wurde, und wählen Sie Ändern aus.

      Tipp

      Wenn Sie die URL für den Container Ihres Speicherkontos nicht haben:

      1. Navigieren Sie zu Ihrem Speicherkonto.
      2. Wählen Sie das Symbol ... auf der rechten Seite des Containers aus, den Sie für die Paketerfassung verwenden möchten.
      3. Wählen Sie im Kontextmenü Containereigenschaften aus.
      4. Kopieren Sie den Inhalt des URL-Felds.
    3. Kehren Sie zur Ansicht Paketerfassung zurück.
  5. Wählen Sie Paketerfassung starten aus.
  6. Füllen Sie die Details im Bereich Starten einer Paketerfassung aus, und wählen Sie Erstellen aus.
  7. Die Seite wird alle paar Sekunden aktualisiert, bis die Paketerfassung abgeschlossen ist. Sie können auch die Schaltfläche Aktualisieren verwenden, um die Seite zu aktualisieren. Wenn Sie die Paketerfassung frühzeitig beenden möchten, wählen Sie Beenden einer Paketerfassung aus.
  8. Sobald die Paketerfassung abgeschlossen ist, speichert der AP5GC-Onlinedienst die Ausgabe unter der bereitgestellten Speicherkonto-URL.
  9. Zum Herunterladen der Paketerfassungsausgabe können Sie die Schaltfläche In Zwischenablage kopieren in der Spalte Speicher oder Dateiname verwenden, um diese Details zu kopieren und sie dann in das Feld Suchen im Portal einzufügen. Um die Ausgabe herunterzuladen, klicken Sie mit der rechten Maustaste auf die Datei, und wählen Sie Herunterladen aus.

Durchführen der Paketerfassung mithilfe der Azure CLI

  1. Geben Sie in einer Befehlszeile mit kubectl-Zugriff auf den Kubernetes-Cluster mit Azure Arc-Unterstützung den MEC-DP-Problembehandlungs-Pod ein:

    kubectl exec -it -n core core-mec-dp-0 -c troubleshooter -- bash
    
  2. Anzeigen der Liste der konfigurierten Schnittstellen der Benutzerebene:

    mect list
    

    Dies sollte eine einzelne Schnittstelle im Netzwerk der Steuerebene (N2), eine einzelne Schnittstelle im Zugriffsnetzwerk (N3) und eine Schnittstelle für jedes angefügte Datennetzwerk (N6) melden. Zum Beispiel:

    n2trace
    n3trace
    n6trace0 (Data Network: internet)
    n6trace1 (Data Network: enterprise)
    n6trace2 (Data Network: test)
    
  3. Führen Sie mectdump mit allen Parametern aus, die Sie normalerweise an tcpdump übergeben würden. Insbesondere -i, um die Schnittstelle anzugeben, und -w, an welcher Stelle geschrieben werden soll. Schließen Sie das Tool, wenn Sie fertig sind, indem Sie STRG+C drücken. Die folgenden Beispiele sind häufige Anwendungsfälle:

    • Führen Sie mectdump -i any -w any.pcap aus, um Erfassungspakete für alle Schnittstellen auszuführen.
    • Geben Sie den MEC-DP-Problembehandlungs-Pod in zwei separate Fenster ein, um Erfassungspakete für die N3-Schnittstelle und die N6-Schnittstelle für ein einzelnes Datennetzwerk auszuführen. Führen Sie in einem Fenster mectdump -i n3trace -w n3.pcap und im anderen Fenster mectdump -i <N6 interface> -w n6.pcap aus (verwenden Sie die N6-Schnittstelle für das Datennetzwerk, wie in Schritt 2 angegeben).

    Wichtig

    Paketerfassungsdateien können groß sein, insbesondere beim Ausführen der Paketerfassung auf allen Schnittstellen. Geben Sie Filter beim Ausführen der Paketerfassung an, um die Dateigröße zu verringern. Weitere Informationen finden Sie in der Tcpdump-Dokumentation zu den verfügbaren Filtern.

  4. Verlassen Sie den Container:

    exit
    
  5. Kopieren Sie die Ausgabedateien:

    kubectl cp -n core core-mec-dp-0:<path to output file> <location to copy to> -c troubleshooter
    

    Möglicherweise wurde tcpdump mitten im Schreiben eines Pakets angehalten, was dazu führen kann, dass dieser Schritt den Fehler unexpected EOF ausgibt. Die Datei sollte dennoch erfolgreich kopiert worden sein. Sie können die Zielausgabedatei überprüfen, um dies zu bestätigen.

  6. Entfernen Sie die Ausgabedateien:

        kubectl exec -it -n core core-mec-dp-0 -c troubleshooter -- rm <path to output file>
    

Nächste Schritte

Weitere Optionen zum Überwachen Ihrer Bereitstellung und Anzeigen von Analysen: