Comparteix a través de


Captura de paquetes TCP desde un pod en un clúster de AKS

En este artículo se describe cómo realizar una captura de tráfico TCP en un pod de un clúster de Azure Kubernetes Service (AKS) y cómo descargar la captura en el equipo local.

Requisito previo

Debe ejecutar la versión 2.0.59 de la CLI de Azure o una versión posterior.

Ejecute az --version para comprobar la versión. Para instalar la versión más reciente de la CLI de Azure, consulte Instalación de la CLI de Azure.

Identificación del pod e instalación de TCPdump

  1. Identifique el nombre del pod desde el que desea capturar los paquetes TCP. Este debe ser el pod que tiene los problemas de conectividad. Para ello, ejecute kubectl get pods -A para ver la lista de pods en el clúster de AKS. A continuación verá un ejemplo del resultado:

    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
    

    Si conoce el espacio de nombres en el que se ejecuta el pod, también puede ejecutar kubectl get pods -n <namespace> para obtener una lista de pods que se ejecutan en ese espacio de nombres.

  2. Conéctese al pod que identificó en el paso anterior. Los siguientes comandos usan "azure-vote-front-848767080-tf34m" como nombre del pod. Sustitúyalos por el nombre correcto del pod. Si el pod no está en el espacio de nombres predeterminado, debe agregar el --namespace parámetro al kubectl exec comando .

    kubectl exec azure-vote-front-848767080-tf34m -it -- /bin/bash
    
  3. Después de conectarse al pod, ejecute tcpdump --version para determinar si tcpdump está instalado. Si recibe un mensaje de "comando no encontrado", ejecute el siguiente comando para instalar TCPdump en el pod:

    apt-get update && apt-get install tcpdump
    

    Si el pod usa Alpine Linux, ejecute el siguiente comando para instalar TCPdump:

     apk add tcpdump
    

Capturar paquetes TCP y guardarlos en un directorio local

  1. Ejecute tcpdump -s 0 -vvv -w /capture.cap para empezar a capturar paquetes TCP en el pod.

  2. Una vez finalizada la captura de paquetes, salga de la sesión del shell del pod.

  3. Ejecute el siguiente comando para guardar los paquetes en el directorio actual:

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

Ponte en contacto con nosotros para obtener ayuda

Si tiene preguntas o necesita ayuda, cree una solicitud de soporte o busque consejo en la comunidad de Azure. También puede enviar comentarios sobre el producto con los comentarios de la comunidad de Azure.