13.6.8.3. DHCP를 통해 올바른 호스트 이름을 얻지 못하는 클러스터 노드


IPv6 배포 중에 클러스터 노드는 DHCP를 통해 호스트 이름을 검색해야 합니다. 경우에 따라 NetworkManager가 호스트 이름을 즉시 할당하지 않을 수 있습니다. 컨트롤 플레인 (마스터) 노드는 다음과 같은 오류를 보고할 수 있습니다.

Failed Units: 2
  NetworkManager-wait-online.service
  nodeip-configuration.service

이 오류는 클러스터 노드가 DHCP 서버에서 호스트 이름을 받지 않고 부팅되었을 가능성이 있음을 나타냅니다. 이로 인해 kubeletlocalhost.localdomain 호스트 이름으로 부팅됩니다. 이 문제를 해결하려면 노드가 호스트 이름을 업데이트하도록 합니다.

프로세스

  1. hostname을 검색합니다.

    [core@master-X ~]$ hostname

    호스트 이름이 localhost인 경우 다음 단계를 진행합니다.

    참고

    여기서 X는 컨트롤 플레인 노드 번호입니다.

  2. 클러스터 노드가 DHCP 임대를 갱신하도록 합니다.

    [core@master-X ~]$ sudo nmcli con up "<bare-metal-nic>"

    <bare-metal-nic>baremetal 네트워크에 해당하는 유선 연결로 바꿉니다.

  3. hostname 다시 확인하십시오.

    [core@master-X ~]$ hostname
  4. 호스트 이름이 여전히 localhost.localdomain인 경우 NetworkManager를 다시 시작합니다.

    [core@master-X ~]$ sudo systemctl restart NetworkManager
  5. 호스트 이름이 여전히 localhost.localdomain 인 경우 몇 분 기다린 후 다시 확인하십시오. 호스트 이름이 localhost.localdomain으로 남아 있으면 이전 단계를 반복합니다.
  6. nodeip-configuration 서비스를 다시 시작합니다.

    [core@master-X ~]$ sudo systemctl restart nodeip-configuration.service

    이 서비스는 올바른 호스트 이름 참조를 사용하여 kubelet 서비스를 재구성합니다.

  7. 이전 단계에서 kubelet이 변경되었으므로 단위 파일 정의를 다시 로드하십시오.

    [core@master-X ~]$ sudo systemctl daemon-reload
  8. kubelet 서비스를 다시 시작합니다.

    [core@master-X ~]$ sudo systemctl restart kubelet.service
  9. kubelet 이 올바른 호스트 이름으로 부팅되었는지 확인합니다.

    [core@master-X ~]$ sudo journalctl -fu kubelet.service

클러스터 가동 후 (예: 클러스터를 다시 시작) 클러스터 노드가 DHCP를 통해 올바른 호스트 이름을 얻지 못하는 경우 클러스터에 csr은 보류 처리됩니다. csr을 승인 하지 마십시오. 그렇지 않으면 다른 문제가 발생할 수 있습니다.

CSR 처리

  1. 클러스터에서 CSR을 가져옵니다.

    $ oc get csr
  2. 보류중인 CSRSubject Name: localhost.localdomain이 포함되어 있는지 확인합니다.

    $ oc get csr <pending_csr> -o jsonpath='{.spec.request}' | base64 --decode | openssl req -noout -text
  3. Subject Name: localhost.localdomain이 포함된 모든 csr을 제거합니다.

    $ oc delete csr <wrong_csr>
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.