25.2. ハードウェアのイントロスペクションに関するトラブルシューティング
イントロスペクションのプロセスは最後まで実行する必要があります。ただし、イントロスペクション ramdisk が応答しない場合には、ironic-inspector
がデフォルトの 1 時間が経過した後にタイムアウトします。イントロスペクション ramdisk にバグがあることを示している可能性もありますが、通常は環境の設定ミス (特に、BIOS のブート設定) によりこのタイムアウトが発生します。
典型的な環境の誤設定の問題を診断して解決するには、以下の手順を実施します。
手順
stackrc
ファイルを取得します。$ source ~/stackrc
director は OpenStack Object Storage (swift) を使用して、イントロスペクションプロセス中に取得するハードウェアデータを保存します。このサービスが稼働していない場合には、イントロスペクションは失敗する場合があります。以下のコマンドを実行して、OpenStack Object Storage に関連したサービスをすべてチェックし、このサービスが稼働中であることを確認します。
(undercloud) $ sudo systemctl list-units tripleo_swift*
ノードを
manageable
の状態にします。イントロスペクションは、デプロイメント用を意味するavailable
の状態にあるノードを検査しません。available
の状態にあるノードを検査するには、イントロスペクションの前にノードのステータスをmanageable
の状態に変更します。(undercloud) $ openstack baremetal node manage [NODE UUID]
イントロスペクション ramdisk への一時的なアクセスを設定します。一時パスワードまたは SSH 鍵のいずれかを指定して、イントロスペクションのデバッグ中にノードにアクセスすることができます。ramdisk へのアクセスを設定するには、以下の手順を実施します。
一時パスワードを指定して
openssl passwd -1
コマンドを実行し、MD5 ハッシュを生成します。(undercloud) $ openssl passwd -1 mytestpassword $1$enjRSyIw$/fYUpJwr6abFy/d.koRgQ/
/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 鍵 を追加します。注記rootpwd
およびsshkey
パラメーターには、いずれも引用符を含めます。
ノード上でイントロスペクションを実行します。
(undercloud) $ openstack overcloud node introspect [NODE UUID] --provide
イントロスペクションの完了後にノードの状態を
available
に変更するには、--provide
オプションを使用します。dnsmasq
ログでノードの IP アドレスを特定します。(undercloud) $ sudo tail -f /var/log/containers/ironic-inspector/dnsmasq.log
エラーが発生する場合には、root ユーザーおよび一時アクセス用の詳細を使用してノードにアクセスします。
$ ssh root@192.168.24.105
イントロスペクション中にノードにアクセスして、診断コマンドを実行してイントロスペクションの失敗に関するトラブルシューティングを行います。
イントロスペクションのプロセスを停止するには、以下のコマンドを実行します。
(undercloud) $ openstack baremetal introspection abort [NODE UUID]
プロセスがタイムアウトするまで待つことも可能です。
注記イントロスペクションの最初の中止後、Red Hat OpenStack Platform director は実行を 3 回試みます。イントロスペクションを完全に中止するには、それぞれの試行時に
openstack baremetal introspection abort
コマンドを実行します。