IBM Cloud Docs
¿Por qué el estado de la red muestra un error NHC006 ?

¿Por qué el estado de la red muestra un error NHC006 ?

Infraestructura clásica

Cuando compruebe el estado de salud de su clúster ejecutando ibmcloud ks cluster health issues --cluster <CLUSTER_ID>, verá un error similar al del siguiente ejemplo.

ID       Component   Severity   Description
NHC006   Network     Warning    One or more DNS resolvers are not reachable from certain worker nodes.

Si compruebas los detalles de la incidencia, verás a qué resolvers DNS no se puede acceder desde qué nodo trabajador.

ibmcloud ks cluster health issue get --cluster <CLUSTER_ID> --issue NHC006

Esta advertencia indica que algunos nodos trabajadores no pueden alcanzar uno o más resolvers DNS. Esto puede provocar fallos de DNS y afectar a la comunicación de la carga de trabajo.

  1. Inspeccione Calico GlobalNetworkPolicies (GNP) enumerando todos los GNP.

    kubectl get globalnetworkpolicies.crd.projectcalico.org
    

    Ejecute el siguiente comando para revisar una política específica.

    kubectl get globalnetworkpolicies.crd.projectcalico.org <policy-name> -o yaml
    
  2. Busque cualquier regla de egress que bloquee el tráfico DNS (puerto UDP/TCP 53). Compruebe también los campos selector que podrían incluir incorrectamente nodos de trabajadores.

  3. Validación de la accesibilidad DNS desde los nodos trabajadores mediante un pod de depuración

    kubectl run  -i --tty debug \
      --image=us.icr.io/armada-master/network-alpine:latest \
      --restart=Never \
      --overrides='
    {
      "apiVersion": "v1",
      "spec": {
        "nodeName": "<node-name>"
      }
    }' -- sh
    
  4. Ejecute los siguientes comandos dentro del pod de depuración. Si estos fallan, el DNS podría estar bloqueado por políticas o configuraciones de IaaS-level.

    nslookup ibm.com
    
    dig ibm.com
    
  5. Revise su infraestructura (dispositivos de red, ACL, etc.) y permita el tráfico saliente de los puertos 53 UDP y TCP.

  6. Si el problema persiste, póngase en contacto con el servicio de asistencia técnica. Abra un caso de soporte. En los detalles del caso, asegúrese de incluir todos los archivos de registro, mensajes de error o salidas de comando relevantes.