Wykonywanie przechwytywania pakietów w wystąpieniu rdzenia pakietów

Przechwytywanie pakietów dla pakietów płaszczyzny danych lub kontroli odbywa się przy użyciu narzędzia MEC-Dataplane Trace . Ślad MEC-Dataplane (MEC-DP) jest podobny do tcpdump, programu komputerowego analizatora pakietów sieci danych, który działa w interfejsie wiersza polecenia. Możesz użyć funkcji śledzenia MEC-DP do monitorowania i rejestrowania pakietów na dowolnym interfejsie płaszczyzny użytkownika w sieci dostępu (interfejs N3) lub sieci danych (interfejs N6) na urządzeniu, a także płaszczyzny sterowania (interfejs N2). Dostęp do śledzenia MEC-DP można uzyskać za pomocą witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Przechwytywanie pakietów działa przez dublowanie pakietów do interfejsu jądra systemu Linux, który następnie można monitorować przy użyciu protokołu tcpdump. W tym przewodniku z instrukcjami dowiesz się, jak wykonać przechwytywanie pakietów w wystąpieniu rdzeni pakietów.

Ważne

Wykonanie przechwytywania pakietów zmniejszy wydajność systemu i przepływność płaszczyzny danych. Dlatego zaleca się używanie tego narzędzia tylko na małą skalę podczas testowania początkowego.

Wymagania wstępne

Aby przechwycić pakiety, musisz mieć wdrożona lokacja AP5GC.

Aby wykonać przechwytywanie pakietów przy użyciu wiersza polecenia, musisz:

  • Zidentyfikuj zasób Kubernetes — Azure Arc reprezentujący klaster Kubernetes z włączoną usługą Azure Arc, na którym uruchomiono wystąpienie podstawowe pakietu.
  • Upewnij się, że maszyna lokalna ma podstawowy dostęp kubectl do klastra Kubernetes z obsługą usługi Azure Arc. Wymaga to podstawowego pliku kubeconfig, który można uzyskać, postępując zgodnie z podstawowym dostępem do przestrzeni nazw.

Przechwytywanie pakietów przy użyciu witryny Azure Portal

Konfigurowanie konta magazynu

Musisz skonfigurować konto magazynu do przechowywania pakietu diagnostycznego.

  1. Utwórz konto magazynu na potrzeby diagnostyki przy użyciu następującej dodatkowej konfiguracji:
    1. Na karcie Ochrona danych w obszarze Kontrola dostępu wybierz pozycję Włącz obsługę niezmienności na poziomie wersji. Umożliwi to określenie zasad przechowywania na podstawie czasu dla konta w następnym kroku.
    2. Jeśli chcesz, aby zawartość konta magazynu została automatycznie usunięta po upływie okresu, skonfiguruj domyślne zasady przechowywania na podstawie czasu dla konta magazynu.
    3. Utwórz kontener na potrzeby diagnostyki.
    4. Zanotuj adres URL obiektu blob kontenera. Na przykład:
      https://storageaccountname.blob.core.windows.net/diagscontainername
      1. Przejdź do swojego konta magazynu.
      2. Wybierz symbol ... po prawej stronie obiektu blob kontenera, którego chcesz użyć do zbierania danych diagnostycznych.
      3. Wybierz pozycję Właściwości kontenera w menu kontekstowym.
      4. Skopiuj zawartość pola adresu URL w widoku właściwości kontenera.
  2. Utwórz tożsamość przypisaną przez użytkownika i przypisz ją do konta magazynu utworzonego powyżej przy użyciu roli Współautor danych obiektu blob usługi Storage.

    Napiwek

    Być może podczas tworzenia witryny została już utworzona i skojarzona tożsamość przypisana przez użytkownika.

  3. Przejdź do zasobu płaszczyzny sterowania rdzenia pakietów dla lokacji.
  4. Wybierz pozycję Tożsamość w obszarze Ustawienia w menu po lewej stronie.
  5. Wybierz Dodaj.
  6. Wybierz utworzoną tożsamość zarządzaną podpisaną przez użytkownika, a następnie wybierz pozycję Dodaj.

Ważne

Po utworzeniu tożsamości zarządzanej przypisanej przez użytkownika należy odświeżyć konfigurację rdzeni pakietów, wprowadzając fikcyjną zmianę konfiguracji. Może to być zmiana, która nie będzie miała wpływu na wdrożenie i może zostać pozostawiona, lub zmiana, która zostanie natychmiast przywrócona. Zobacz Modyfikowanie wystąpienia rdzeni pakietów. Jeśli nie odświeżysz konfiguracji rdzeni pakietów, przechwytywanie pakietów zakończy się niepowodzeniem.

Uruchamianie przechwytywania pakietów

  1. Zaloguj się w witrynie Azure Portal.
  2. Przejdź do strony przeglądu okienka kontroli rdzeni pakietów witryny, w której chcesz uruchomić przechwytywanie pakietów.
  3. Wybierz pozycję Przechwytywanie pakietów w sekcji Pomoc po lewej stronie. Spowoduje to otwarcie widoku przechwytywania pakietów.
  4. Jeśli po raz pierwszy przechwycono pakiet przy użyciu portalu, zostanie wyświetlony komunikat o błędzie z monitem o skonfigurowanie konta magazynu. Jeśli tak:
    1. Postępuj zgodnie z linkiem w komunikacie o błędzie.
    2. Wprowadź adres URL kontenera konta magazynu, który został skonfigurowany na potrzeby magazynu diagnostycznego, a następnie wybierz pozycję Modyfikuj.

      Napiwek

      Jeśli nie masz adresu URL kontenera konta magazynu:

      1. Przejdź do swojego konta magazynu.
      2. Wybierz symbol ... po prawej stronie kontenera, którego chcesz użyć do przechwytywania pakietów.
      3. Wybierz pozycję Właściwości kontenera w menu kontekstowym.
      4. Skopiuj zawartość pola adresu URL .
    3. Wróć do widoku przechwytywania pakietów.
  5. Wybierz pozycję Rozpocznij przechwytywanie pakietów.
  6. Wypełnij szczegóły okienka Rozpocznij przechwytywanie pakietów i wybierz pozycję Utwórz.
  7. Strona zostanie odświeżona co kilka sekund do momentu zakończenia przechwytywania pakietów. Możesz również użyć przycisku Odśwież , aby odświeżyć stronę. Jeśli chcesz wcześnie zatrzymać przechwytywanie pakietów, wybierz pozycję Zatrzymaj przechwytywanie pakietów.
  8. Po zakończeniu przechwytywania pakietów usługa online AP5GC zapisze dane wyjściowe pod podanym adresem URL konta magazynu.
  9. Aby pobrać dane wyjściowe przechwytywania pakietów, możesz użyć przycisku Kopiuj do schowka w kolumnach Nazwa magazynu lub Pliku , aby skopiować te szczegóły, a następnie wkleić je do pola Wyszukaj w portalu. Aby pobrać dane wyjściowe, kliknij prawym przyciskiem myszy plik i wybierz polecenie Pobierz.

Wykonywanie przechwytywania pakietów przy użyciu interfejsu wiersza polecenia platformy Azure

  1. W wierszu polecenia z dostępem kubectl do klastra Kubernetes z włączoną usługą Azure Arc wprowadź zasobnik narzędzia do rozwiązywania problemów MEC-DP:

    kubectl exec -it -n core core-mec-dp-0 -c troubleshooter -- bash
    
  2. Wyświetl listę skonfigurowanych interfejsów płaszczyzny użytkownika:

    mect list
    

    Powinno to zgłosić pojedynczy interfejs w sieci płaszczyzny sterowania (N2), pojedynczy interfejs w sieci dostępu (N3) i interfejs dla każdej dołączonej sieci danych (N6). Na przykład:

    n2trace
    n3trace
    n6trace0 (Data Network: internet)
    n6trace1 (Data Network: enterprise)
    n6trace2 (Data Network: test)
    
  3. Uruchom polecenie mectdump z dowolnymi parametrami, które zwykle są przekazywane do protokołu tcpdump. W szczególności, -i aby określić interfejs i -w określić, gdzie ma być zapisywany. Zamknij narzędzie po zakończeniu, naciskając klawisze Ctrl + C. Oto typowe przypadki użycia:

    • Aby uruchomić przechwytywanie pakietów we wszystkich interfejsach, uruchom polecenie mectdump -i any -w any.pcap
    • Aby uruchomić przechwytywanie pakietów dla interfejsu N3 i interfejsu N6 dla pojedynczej sieci danych, wprowadź zasobnik narzędzia do rozwiązywania problemów MEC-DP w dwóch oddzielnych oknach. W jednym uruchomieniu mectdump -i n3trace -w n3.pcap okna i w drugim uruchomieniu mectdump -i <N6 interface> -w n6.pcap okna (użyj interfejsu N6 dla sieci danych, jak określono w kroku 2).

    Ważne

    Pliki przechwytywania pakietów mogą być duże, szczególnie w przypadku uruchamiania przechwytywania pakietów we wszystkich interfejsach. Określ filtry podczas uruchamiania przechwytywania pakietów, aby zmniejszyć rozmiar pliku — zobacz dokumentację tcpdump dotyczącą dostępnych filtrów.

  4. Pozostaw kontener:

    exit
    
  5. Skopiuj pliki wyjściowe:

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

    Element tcpdump mógł zostać zatrzymany w trakcie pisania pakietu, co może spowodować wystąpienie błędu z informacją o błędzie unexpected EOF. Jednak plik powinien zostać skopiowany pomyślnie, ale możesz sprawdzić docelowy plik wyjściowy, aby potwierdzić.

  6. Usuń pliki wyjściowe:

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

Następne kroki

Aby uzyskać więcej opcji monitorowania wdrożenia i wyświetlania analiz: