Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Diagnóstico de red

Última actualización: Sep 04, 2026

Container Service for Kubernetes (ACK) ofrece la función Network Diagnosis para ayudarle a solucionar problemas comunes de red, como conexiones con errores entre pods, desde un clúster hacia internet público o desde internet público hacia un LoadBalancer Service. Este tema describe cómo funciona Network Diagnosis y cómo utilizarlo para resolver problemas de conectividad frecuentes.

Importante

Al utilizar la función de diagnóstico, el sistema ejecuta un agente de recolección de datos en los nodos del clúster para obtener los resultados. La información recopilada incluye la versión del sistema, la carga, el estado de docker y Kubelet, así como mensajes de error clave de los registros del sistema. El agente de recolección de datos no recopila información de su negocio ni datos confidenciales.

Requisitos previos

Debe contar con un ACK managed cluster creado.

Diagnóstico de red

La consola de ACK proporciona la función Network Diagnosis, que permite diagnosticar rápidamente problemas comunes de red al especificar la dirección de origen, la dirección de destino, el puerto de destino y el protocolo. Esta función se puede utilizar sin necesidad de contar con conocimientos profundos sobre arquitecturas complejas de redes de contenedores, el funcionamiento interno de complementos de red u operaciones a nivel de kernel.

La función Network Diagnosis se basa en el proyecto de código abierto KubeSkoop. KubeSkoop ofrece diagnósticos con un solo clic para problemas comunes de red en clústeres de Kubernetes con diversos complementos de red y proveedores de IaaS, y utiliza eBPF para el monitoreo y análisis profundo de rutas críticas del kernel. Este tema aborda únicamente la función Network Diagnosis. Para obtener detalles sobre el monitoreo y análisis profundo, consulte Use KubeSkoop to Troubleshoot Network Issues.

Funcionamiento

image.png

  1. Construcción de topología: Tras proporcionar la información de diagnóstico, Network Diagnosis genera una topología de acceso basada en los detalles suministrados y en la información de recursos recopilada del clúster, como pods, nodos, Services y NetworkPolicies.

  2. Recolección de información: Network Diagnosis recopila información de tiempo de ejecución, datos de la pila de red y detalles sobre la infraestructura de red. Estos datos se utilizan para la solución de problemas y el análisis de red.

  3. Simulación de ruta: Network Diagnosis obtiene información de la pila de red de los nodos o contenedores relevantes mediante la ejecución de comandos en instancias de Elastic Compute Service (ECS) o el despliegue de pods recolectores en el clúster. Esta información incluye detalles sobre dispositivos de red, parámetros sysctl, iptables e IPVS. La herramienta también recopila información de la infraestructura en la nube, como tablas de rutas, security groups y puertas de enlace NAT. Posteriormente, el sistema compara esta información con las configuraciones esperadas para identificar errores de configuración. Este proceso incluye la simulación de reglas de iptables y enrutamiento, la verificación del estado de los dispositivos y la validación de tablas de rutas en la nube y reglas de security group.

  4. Resultados del diagnóstico: Tras comparar la configuración real con el estado esperado, la herramienta muestra una topología de red y resalta cualquier nodo anómalo o problema detectado.

Uso de Network Diagnosis

Limitaciones

  • El pod que se va a diagnosticar debe estar en estado Running.

  • Las conexiones desde internet público hacia un LoadBalancer Service solo son compatibles con instancias de Classic Load Balancer (CLB) de capa 4 que tengan 10 o menos pods de backend.

  • Actualmente, el diagnóstico no es compatible con clústeres ACK Serverless ni nodos virtuales.

Procedimiento

  1. Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.

  2. En la página Clusters, haga clic en el nombre del clúster objetivo. En el panel de navegación izquierdo, seleccione Inspections and Diagnostics > Diagnostics.

  3. En la página Diagnostics, haga clic en la pestaña Network diagnostics y luego haga clic en Diagnose en la esquina superior izquierda.

  4. En el panel Access Information, introduzca la Source IP Address, la Target Address y el Port, y seleccione el Protocol. Lea el aviso, seleccione I understand and agree y haga clic en Diagnose.

    Para obtener información sobre los parámetros de diagnóstico, consulte Diagnosis parameters.

  5. En la página Diagnosis Result, consulte los resultados. La sección Full access path muestra una vista integral de la ruta de conexión diagnosticada.

    Los nodos anómalos se resaltan con un color diferente. Para obtener información sobre los resultados de diagnóstico comunes, consulte Common diagnostic results and solutions.

    Los resultados del diagnóstico se muestran en una tabla con tres columnas: Level (como FATAL), Node y Diagnosis result. Esto le permite localizar rápidamente nodos anómalos y errores de enrutamiento específicos. Si los resultados no resuelven su problema, haga clic en el enlace Submit Ticket o Feedback de la página para obtener más ayuda.

Parámetros de diagnóstico

Escenario 1: De pod a pod y de pod a nodo

Si experimenta problemas de conectividad entre pods, o entre pods y nodos, utilice Network Diagnosis para solucionar la conexión. A continuación se describen los parámetros.

Parámetro

Descripción

Dirección de origen

Dirección IP de un pod o nodo.

Dirección de destino

Dirección IP de un pod o nodo.

Puerto

Puerto que se va a diagnosticar.

Protocolo

Protocolo que se va a diagnosticar.

Escenario 2: De pod y nodo a Service

Es posible diagnosticar la conectividad hacia un Service mediante su IP de clúster como destino. La herramienta verifica la ruta de red desde un pod o nodo hasta cada endpoint del Service y valida las configuraciones de red relacionadas. A continuación se describen los parámetros.

Parámetro

Descripción

Dirección de origen

Dirección IP de un pod o nodo.

Dirección de destino

IP de clúster del Service.

Puerto

Puerto que se va a diagnosticar.

Protocolo

Protocolo que se va a diagnosticar.

Escenario 3: Ruta DNS

Cuando el destino es un nombre de dominio, podría ser necesario verificar si el DNS interno del clúster funciona correctamente, además de comprobar la ruta desde el origen hasta la IP de destino. Utilice Network Diagnosis para revisar la conectividad desde un pod hacia el servicio DNS del clúster (el Service kube-dns en el namespace kube-system) e identificar posibles problemas de resolución DNS.

Ejecute el siguiente comando para obtener la IP de clúster del Service kube-dns en el namespace kube-system:

kubectl get svc -n kube-system kube-dns

Salida de ejemplo:

NAME       TYPE        CLUSTER-IP     EXTERNAL-IP   <none>        53/UDP,53/TCP,9153/TCP   6d

En la salida, 172.16.XX.XX corresponde a la IP de clúster del Service kube-dns. Utilice esta IP como dirección de destino. A continuación se describen los parámetros.

Parámetro

Descripción

Dirección de origen

Dirección IP de un pod o nodo.

Dirección de destino

IP de clúster del Service kube-dns.

Puerto

53

Protocolo

udp

Escenario 4: De pod y nodo a internet

Utilice Network Diagnosis para verificar la conexión desde un pod o nodo hacia una dirección IP pública. Si el destino es un nombre de dominio, primero debe resolverlo manualmente a su dirección IP pública. A continuación se describen los parámetros.

Parámetro

Descripción

Dirección de origen

Dirección IP de un pod o nodo.

Dirección de destino

Dirección IP pública.

Puerto

Puerto que se va a diagnosticar.

Protocolo

Protocolo que se va a diagnosticar.

Escenario 5: De internet a LoadBalancer Service

Si no puede acceder a un LoadBalancer Service desde internet público, diagnostique la conexión mediante una IP pública como origen y la IP externa del LoadBalancer Service como destino. A continuación se describen los parámetros.

Parámetro

Descripción

Dirección de origen

Dirección IP pública.

Dirección de destino

Dirección IP externa del LoadBalancer Service.

Puerto

Puerto que se va a diagnosticar.

Protocolo

Protocolo que se va a diagnosticar.

Resultados de diagnóstico comunes y soluciones

Resultado del diagnóstico

Descripción

Solución

pod container ... is not ready

El contenedor del pod no está listo.

Compruebe el estado de salud del pod y corrija el problema.

NetworkPolicy ... deny the packet from ...

Una NetworkPolicy está bloqueando el paquete.

Modifique las reglas correspondientes de la NetworkPolicy.

no process listening on ...

Ningún proceso en el contenedor o nodo está escuchando en el puerto especificado con el protocolo indicado.

Compruebe que el proceso objetivo se esté ejecutando correctamente. Compruebe los parámetros de diagnóstico, incluidos el puerto y el protocolo.

no route to host .../invalid route ... for packet ...

No se encontró ninguna ruta hacia el host, o bien una ruta existente apunta a un destino incorrecto.

Compruebe si el complemento de red funciona correctamente.

... do not have same security group

Los security groups de las dos instancias ECS no tienen reglas que permitan el tráfico entre ellas, lo cual puede provocar pérdida de paquetes.

Configure las instancias ECS para que utilicen el mismo security group.

security group ... not allow packet ...

El security group de la instancia ECS está bloqueando el paquete.

Revise las reglas del security group y permita el tráfico desde la dirección obligatoria.

  • no route entry for destination ip ...

  • no next hop for destination ip ...

La tabla de rutas en la nube no contiene una ruta hacia la dirección IP de destino.

Revise la configuración de la tabla de rutas en la nube. Si el destino es una dirección IP pública, compruebe la configuración de la puerta de enlace NAT pública.

  • error route next hop for destination ip ...

  • expect next hop for destination ip ...

La ruta en la tabla de rutas en la nube no apunta al siguiente salto esperado.

Revise la configuración de la tabla de rutas en la nube. Si el destino es una dirección IP pública, compruebe la configuración de la puerta de enlace NAT pública.

no snat entry on nat gateway ...

No se encontró la entrada SNAT especificada en la puerta de enlace NAT pública.

Revise la configuración de reglas SNAT en la puerta de enlace NAT pública.

backend ... health status for port ..., not "normal"

Un servidor backend de la instancia CLB falló en su comprobación de estado.

Compruebe que los endpoints correctos estén vinculados a la instancia CLB y que los servicios backend en dichos endpoints estén en buen estado.

cannot find listener port ... for slb ...

No se encontró el puerto de listener especificado en la instancia CLB.

Revise la configuración del LoadBalancer Service y compruebe que los parámetros de diagnóstico, incluidos el puerto y el protocolo, sean correctos.

status of loadbalancer for ... port ... not "running"

El listener de la instancia CLB no se encuentra en estado Running.

Compruebe el estado del listener en la instancia CLB.

Service ... has no valid endpoint

El Service no tiene endpoints válidos.

Compruebe si el selector de etiquetas del Service está configurado según lo esperado y compruebe que los endpoints correspondientes existan y estén en buen estado.

Para problemas relacionados con el acceso a una IP de LoadBalancer Service desde dentro del clúster, consulte Access to CLB instances from within a cluster fails.