第7章 Bare Metal サービスのトラブルシューティング
以下の項には、Bare Metal サービスを有効にした環境における問題を診断するのに役立つ可能性のある情報と手順を記載します。
7.1. PXE ブートエラー
Permission Denied エラー
Bare Metal サービスノードのコンソールで「Permission Denied」エラーが表示された場合には、以下に示したように、適切な SELinux コンテキストを /httpboot と /tftpboot のディレクトリーに必ず適用してください。
# semanage fcontext -a -t httpd_sys_content_t "/httpboot(/.*)?" # restorecon -r -v /httpboot # semanage fcontext -a -t tftpdir_t "/tftpboot(/.*)?" # restorecon -r -v /tftpboot
/pxelinux.cfg/XX-XX-XX-XX-XX-XX でのブートプロセスのフリーズ
以下の図に示したように、ノードのコンソールで、IP アドレスは取得されているように表示されており、プロセスが停止している場合:
これは、ironic.conf ファイルで誤った PXE ブートテンプレートを使用している可能性があることを示しています。
$ grep ^pxe_config_template ironic.conf pxe_config_template=$pybasedir/drivers/modules/ipxe_config.template
デフォルトのテンプレートは pxe_config.template なので、これを ipxe_config.template に変更するための i を忘れがちです。
7.2. ベアメタルノードの起動後のログインエラー
設定ステップで設定した root パスワードを使用して、ノードのコンソールのログインプロンプトでログインを試みてもログインできない場合には、デプロイしたイメージでブートしていないことを意味します。deploy-kernel/deploy-ramdisk イメージにスタックしてしまって、システムが正しいイメージを取得していない可能性があります。
この問題を修正するには、Compute または Bare Metal サービスノードの /httpboot/pxelinux.cfg/MAC_ADDRESS にある PXE ブートの設定ファイルをチェックして、このファイルにリストされている全 IP アドレスがベアメタルネットワークの IP アドレスに対応していることを確認してください。
Bare Metal サービスノードが認識している唯一のネットワークはベアメタルネットワークです。エンドポイントの 1 つがこのネットワーク上にない場合には、そのエンドポイントはブートプロセスの一環として Bare Metal サービスノードに到達することはできません。
たとえば、ファイルのカーネルの行は以下のようになります。
kernel http://192.168.200.2:8088/5a6cdbe3-2c90-4a90-b3c6-85b449b30512/deploy_kernel selinux=0 disk=cciss/c0d0,sda,hda,vda iscsi_target_iqn=iqn.2008-10.org.openstack:5a6cdbe3-2c90-4a90-b3c6-85b449b30512 deployment_id=5a6cdbe3-2c90-4a90-b3c6-85b449b30512 deployment_key=VWDYDVVEFCQJNOSTO9R67HKUXUGP77CK ironic_api_url=http://192.168.200.2:6385 troubleshoot=0 text nofb nomodeset vga=normal boot_option=netboot ip=${ip}:${next-server}:${gateway}:${netmask} BOOTIF=${mac} ipa-api-url=http://192.168.200.2:6385 ipa-driver-name=pxe_ipmitool boot_mode=bios initrd=deploy_ramdisk coreos.configdrive=0 || goto deploy
上記の例の kernel 行の値 | 対応する情報 |
|---|---|
|
http://192.168.200.2:8088 |
|
|
5a6cdbe3-2c90-4a90-b3c6-85b449b30512 |
|
|
deploy_kernel |
これは、 |
|
http://192.168.200.2:6385 |
|
|
pxe_impitool |
このノードの Bare Metal サービスが使用している IPMI ドライバー |
|
deploy_ramdisk |
これは、 |
/httpboot/pxelinux.cfg/MAC_ADDRESS と ironic.conf ファイルの間で値が一致していない場合:
-
ironic.confファイル内の値を更新します。 - Bare Metal サービスを再起動します。
- Bare Metal インスタンスを再デプロイします。
7.3. Bare Metal サービスが正しいホスト名を取得しない
Bare Metal サービスが正しいホスト名を取得しない場合は、cloud-init でエラーが発生していることを意味します。この問題を修正するには、ベアメタルのサブネットを OpenStack Networking サービス内のルーターに接続します。meta-data エージェントへの要求はこれで正しくルーティングされるようになるはずです。
7.4. Bare Metal サービスのコマンド実行時に OpenStack Identity サービスの認証情報が無効
Identity サービスへの認証で問題がある場合には、ironic.conf ファイルの identity_uri パラメーターをチェックして、 keystone AdminURL から /v2.0 が削除されていることを確認してください。たとえば、identity_uri は http://IP:PORT に設定する必要があります。
7.5. ハードウェアの登録
ハードウェア登録での問題は、ノードの登録情報が誤っていることが原因となっている場合があります。プロパティー名と値が正しく入力されていることを確認してください。プロパティー名が誤っていたり、タイプエラーがある場合でも、ノードの情報には正常に追加されますが、無視されます。
ノードの情報を更新します。以下の例では、登録するノードのメモリー使用量を 2 GB に更新します。
$ openstack baremetal node set --property memory_mb=2048 NODE_UUID7.6. No Valid Host エラー
Compute のスケジューラーがインスタンスを起動するのに適切なベアメタルノードを見つけられない場合には、NoValidHost エラーが /var/log/nova/nova-conductor.log に表示されるか、起動に失敗した直後に Dashboard に表示されます。これは、通常 Compute が想定するリソースと、ベアメタルノードが提供するリソースが一致しないことが原因です。
利用可能なハイパーバイザーのリソースを確認します。
$ openstack hypervisor stats show
このコマンドで返されるリソースは、Bare Metal が提供するリソースと一致する必要があります。
Compute がベアメタルノードをハイパーバイザーとして認識していることを確認します。
$ openstack hypervisor list
ノードは UUID で識別され、一覧に表示されるはずです。
ベアメタルノードの詳細を確認します。
$ openstack baremetal node list $ openstack baremetal node show NODE_UUIDノードの詳細が、Compute によって返された情報と一致することを確認します。
選択したフレーバーがベアメタルノードで利用可能なリソースを超えていないことを確認します。
$ openstack flavor show FLAVOR_NAMEopenstack baremetal node list の出力をチェックして、ベアメタルノードがメンテナンスモードに入っていないことを確認します。必要な場合には、メンテナンスモードを解除してください。
$ openstack baremetal node maintenance unset NODE_UUIDopenstack baremetal node list の出力をチェックして、ベアメタルノードが
availableの状態であることを確認します。必要な場合には、ノードをavailableに切り替えます。$ openstack baremetal node provide NODE_UUID

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.