Udostępnij za pośrednictwem


Przechwytywanie pakietów TCP z zasobnika w klastrze usługi AKS

W tym artykule omówiono sposób przechwytywania ruchu TCP w zasobniku klastra usługi Azure Kubernetes Service (AKS) i pobierania przechwytywania na komputer lokalny.

Warunek wstępny

Musisz uruchomić interfejs wiersza polecenia platformy Azure w wersji 2.0.59 lub nowszej.

Uruchom polecenie az --version , aby zweryfikować wersję. Aby zainstalować najnowszą wersję interfejsu wiersza polecenia platformy Azure, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Identyfikowanie zasobnika i instalowanie narzędzia TCPdump

  1. Zidentyfikuj nazwę zasobnika, z którego chcesz przechwycić pakiety TCP. Powinien to być zasobnik, który ma problemy z łącznością. Aby to zrobić, uruchom polecenie kubectl get pods -A , aby wyświetlić listę zasobników w klastrze usługi AKS. Poniżej przedstawiono przykładowe dane wyjściowe:

    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
    

    Jeśli znasz przestrzeń nazw uruchomioną w zasobniku, możesz również uruchomić kubectl get pods -n <namespace> polecenie , aby uzyskać listę zasobników uruchomionych w tej przestrzeni nazw.

  2. Połącz się z zasobnikiem zidentyfikowanym w poprzednim kroku. Następujące polecenia używają nazwy zasobnika "azure-vote-front-848767080-tf34m". Zastąp je poprawną nazwą zasobnika. Jeśli zasobnik nie znajduje się w domyślnej przestrzeni nazw, należy dodać --namespace parametr do kubectl exec polecenia .

    kubectl exec azure-vote-front-848767080-tf34m -it -- /bin/bash
    
  3. Po nawiązaniu połączenia z zasobnikiem uruchom polecenie tcpdump --version , aby określić, czy zainstalowano narzędzie TCPdump. Jeśli zostanie wyświetlony komunikat "Nie znaleziono polecenia", uruchom następujące polecenie, aby zainstalować narzędzie TCPdump w zasobniku:

    apt-get update && apt-get install tcpdump
    

    Jeśli zasobnik korzysta z systemu Alpine Linux, uruchom następujące polecenie, aby zainstalować narzędzie TCPdump:

     apk add tcpdump
    

Przechwytywanie pakietów TCP i zapisywanie ich w katalogu lokalnym

  1. Uruchom polecenie tcpdump -s 0 -vvv -w /capture.cap , aby rozpocząć przechwytywanie pakietów TCP na zasobniku.

  2. Po zakończeniu przechwytywania pakietów zamknij sesję powłoki zasobnika.

  3. Uruchom następujące polecenie, aby zapisać pakiety w bieżącym katalogu:

    kubectl cp azure-vote-front-848767080-tf34m:/capture.cap capture.cap
    

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.