26.2. 하드웨어 인트로스펙션 문제 해결

인트로스펙션 프로세스 실행을 완료해야 합니다. 하지만 검사 램디스크가 응답하지 않을 경우 ironic-inspector가 1시간(기본값) 후에 시간 초과됩니다. 검사 램디스크의 버그가 원인인 경우도 있지만, 일반적으로는 이 시간 초과는 특히 BIOS 부팅 설정 등의 잘못된 환경 구성으로 인해 발생합니다.

일반적인 환경 설정 오류를 진단하고 해결하려면 다음 단계를 수행합니다.

절차

  1. stackrc 파일을 소싱합니다.

    $ source ~/stackrc
  2. director는 OpenStack Object Storage(swift)를 사용하여 인트로스펙션 프로세스 중에 가져오는 하드웨어 데이터를 저장합니다. 이 서비스가 실행 중이 아니면 인트로스펙션이 실패할 수 있습니다. OpenStack Object Storage와 관련된 모든 서비스를 확인하여 서비스가 실행 중인지 확인합니다.

    (undercloud) $ sudo systemctl list-units tripleo_swift*
  3. 노드가 manageable 상태인지 확인합니다. 인트로스펙션은 배포가 가능함을 나타내는 available 상태의 노드를 검사하지 않습니다. available 상태인 노드를 검사하려면 인트로스펙션 전에 노드 상태를 manageable 상태로 변경합니다.

    (undercloud) $ openstack baremetal node manage [NODE UUID]
  4. 인트로스펙션 램디스크에 대한 임시 액세스를 설정합니다. 인트로스펙션 디버깅 중에 노드에 액세스하는 데 사용할 임시 암호 또는 SSH 키를 제공할 수 있습니다. 램디스크 액세스를 구성하려면 다음 절차를 완료합니다.

    1. 임시 암호로 openssl passwd -1 명령을 실행하여 MD5 해시를 생성합니다.

      (undercloud) $ openssl passwd -1 mytestpassword
      $1$enjRSyIw$/fYUpJwr6abFy/d.koRgQ/
    2. /var/lib/ironic/httpboot/inspector.ipxe 파일을 편집하고, kernel로 시작하는 행을 찾은 다음, rootpwd 매개변수 및 MD5 해시를 추가합니다.

      kernel http://192.2.0.1:8088/agent.kernel ipa-inspection-callback-url=http://192.168.0.1:5050/v1/continue ipa-inspection-collectors=default,extra-hardware,logs systemd.journald.forward_to_console=yes BOOTIF=${mac} ipa-debug=1 ipa-inspection-benchmarks=cpu,mem,disk rootpwd="$1$enjRSyIw$/fYUpJwr6abFy/d.koRgQ/" selinux=0

      또는 sshkey 매개변수에 공용 SSH 키를 추가합니다.

      참고

      rootpwdsshkey 매개변수에 모두 따옴표를 포함합니다.

  5. 노드에서 인트로스펙션을 실행합니다.

    (undercloud) $ openstack overcloud node introspect [NODE UUID] --provide

    --provide 옵션을 사용하여 인트로스펙션 완료 시 노드 상태를 available로 변경합니다.

  6. dnsmasq 로그에서 노드의 IP 주소를 식별합니다.

    (undercloud) $ sudo tail -f /var/log/containers/ironic-inspector/dnsmasq.log
  7. 오류가 발생하면 root 사용자 및 임시 액세스 세부 정보를 사용하여 노드에 액세스합니다.

    $ ssh root@192.168.24.105

    인트로스펙션 중에 노드에 액세스하여 진단 명령을 실행하고 인트로스펙션 실패 문제를 해결합니다.

  8. 인트로스펙션 프로세스를 중지하려면 다음 명령을 실행합니다.

    (undercloud) $ openstack baremetal introspection abort [NODE UUID]

    프로세스가 시간 초과될 때까지 기다릴 수도 있습니다.

    참고

    Red Hat OpenStack Platform director는 초기 중단 후 인트로스펙션을 3번 재시도합니다. 각 시도에서 openstack baremetal introspection abort 명령을 실행하여 인트로스펙션을 완전히 중단합니다.