NSX Network Detection and Response를 활성화하는 동안 사전 검사가 실패합니다.
문제
nsx-ndr-precheck
작업의 로그에는 다음 오류가 포함됩니다.
2022-10-04 19:43:44,954 - nsx_api_client.nsx_api_client - ERROR - communication error: HTTPSConnectionPool(host='external-nsx-manager', port=443): Max retries exceeded with url: /api/v1/licenses (Caused by SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)'),))
이러한 로그에서 특정 문제는 호스트 "external-nsx-manager"
연결에 "CERTIFICATE_VERIFY_FAILED"
오류 문자열과 함께 나타납니다.
이러한 로그에 액세스하는 방법에 대한 자세한 내용은 NSX Network Detection and Response 활성화 사전 검사 실패의 4단계를 참조하십시오.
원인
이 문제는 NSX Manager 클러스터의 인증서 설정 문제로 인해 발생합니다.
해결책
- 이 문제를 해결하려면 NSX Manager 클러스터의 각 노드와 클러스터 자체에 대해 인증서를 올바르게 구성했는지 확인합니다. 구체적으로 다음을 확인합니다.
- 각 인증서에는 사용되는 정규화된 도메인 이름과 일치하는 일반 이름이 있습니다.
- 두 인증서는 어떤 경우에도 동일한 일반 이름을 사용하지 않습니다.
- 인증서 설정이 올바른지 확인하려면 다음과 같은 두 가지 방법을 제안합니다.
- 웹 브라우저 사용:
웹 브라우저에서 각 NSX Manager 노드를 정규화된 도메인 이름을 사용하여 개별적으로 방문한 후 클러스터 도메인 이름도 방문합니다. 이러한 각 도메인에서 브라우저 도구를 사용하고 인증서 정보 및 특히 인증서의 일반 이름을 확인합니다. 일반 이름이 브라우저의 URL 표시줄에 있는 방문한 도메인 이름과 정확히 일치하는지 확인합니다.
- 명령줄 도구 사용:
셸에서 NSX Manager 노드 중 하나에 대해 다음 명령을 실행합니다.
- Kubernetes 플랫폼에서 신뢰할 수 있는 CA 인증서를 추출합니다.
napp-k get secret/nsx-ndr-precheck-ccpchk-nsx-manager-truststore -o jsonpath='{.data.ca\.crt}'| base64 -d > /tmp/ca.crt
이 명령은 Kubernetes 플랫폼에서 신뢰할 수 있는 인증 기관을 /tmp/ca.crt 파일로 추출합니다.- 신뢰할 수 있는 인증서의
subject
를 봅니다.
openssl storeutl -noout -certs --text /tmp/ca.crt |grep "Subject:" Subject: C=US, ST=CA, L=Palo Alto, O=VMware Inc., OU=NSX, CN=k8s-platform-ca Subject: C=US, ST=CA, L=Palo Alto, O=VMware Inc., OU=NSX, CN=vmnsxt-mgmt-p01.example.com Subject: C=US, ST=CA, L=Palo Alto, O=VMware Inc., OU=NSX, CN=vmnsxt-mgmt-p02.example.com Subject: C=US, ST=CA, L=Palo Alto, O=VMware Inc., OU=NSX, CN=vmnsxt-mgmt-p03.example.com Subject: C=US, ST=CA, L=Palo Alto, O=VMware Inc., OU=NSX, CN=vmnsxt-mgmt-p01.example.com
이 명령은 해당 인증서를 구문 분석하고 각 인증서의
subject
를 출력합니다. 이 명령에는 샘플 예제에서"CN="
다음에 나오는 인증서의 일반 이름도 포함됩니다.표시된 일반 이름이 모두 다른지, NSX Manager 클러스터의 노드 및 클러스터 자체에 대해 예상되는 정규화된 도메인 이름과 일치하는지 확인합니다.
이전 예에서는 일반 이름
vmnsxt-mgmt-p01.example.com
이 두 번 발생합니다. 샘플 설정이 잘못 구성되었습니다. NSX Manager 클러스터의 정규화된 도메인 이름이vmnsxt-mgmt.example.com
이지만 인증서에서는 잘못된 일반 이름vmnsxt-mgmt-p01.example.com
을 사용합니다.
- 웹 브라우저 사용: