IBM Cloud Docs
네트워크 상태에 NHC006 오류가 표시되는 이유는 무엇인가요?

네트워크 상태에 NHC006 오류가 표시되는 이유는 무엇인가요?

클래식 인프라

ibmcloud ks cluster health issues --cluster <CLUSTER_ID> 을 실행하여 클러스터의 상태를 확인하면 다음 예와 유사한 오류가 표시됩니다.

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

문제의 세부 사항을 확인하면 어떤 작업자 노드에서 어떤 DNS 확인자에 액세스할 수 없는지 확인할 수 있습니다.

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

이 경고는 일부 작업자 노드가 하나 이상의 DNS 확인자에 연결할 수 없음을 나타냅니다. 이로 인해 DNS 장애가 발생하고 워크로드 통신에 영향을 미칠 수 있습니다.

  1. Calico GlobalNetworkPolicies (GNP)를 확인하여 모든 GNP를 나열합니다.

    kubectl get globalnetworkpolicies.crd.projectcalico.org
    

    특정 정책을 검토하려면 다음 명령을 실행합니다.

    kubectl get globalnetworkpolicies.crd.projectcalico.org <policy-name> -o yaml
    
  2. DNS 트래픽(UDP/TCP 포트 53)을 차단하는 egress 규칙을 찾습니다. 또한 작업자 노드를 부적절하게 포함할 수 있는 selector 필드가 있는지 확인하세요.

  3. 디버그 파드를 사용하여 워커 노드에서 DNS 도달 가능성 확인

    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. 디버그 포드 내에서 다음 명령을 실행합니다. 이 방법이 실패하면 정책 또는 IaaS-level 구성에 의해 DNS가 차단될 수 있습니다.

    nslookup ibm.com
    
    dig ibm.com
    
  5. 인프라(네트워크 어플라이언스, ACL 등)를 검토하고 UDP 및 TCP 포트 53 아웃바운드 트래픽을 허용하세요.

  6. 문제가 계속되면 지원팀에 문의하여 추가 지원을 받으세요. 지원 케이스 열기 케이스 세부 정보에 관련 로그 파일, 오류 메시지 또는 명령 출력을 모두 포함해야 합니다.