2.2. ハードウェアイントロスペクションの設定
ハードウェアイントロスペクションにより、Bare Metal Provisioning はノード上のハードウェア情報を検出できます。イントロスペクションにより、検出されたイーサネット MAC アドレス用のポートも作成されます。または、各ノードにハードウェアの詳細を手動で追加することができます。詳細は、「ノードを手動で追加する」 を参照してください。以下の手順は、すべて root ユーザーとしてログインし、Bare Metal Provisioning コンダクターサービスをホストするサーバーで実行する必要があります。
ハードウェアイントロスペクションは、次のドライバーを使用した帯域内でサポートされています。
-
pxe_drac -
pxe_ipmitool -
pxe_ssh
ハードウェアイントロスペクションの設定
- PXE ブートでのベアメタルシステム検出に使用する Ironic Python Agent カーネルおよび ramdisk イメージを取得します。これらのイメージは、RHOSP director 8.0 用の Ironic Python Agent Image の TAR アーカイブ https://access.redhat.com/downloads/content/191/ver=8/rhel---7/8/x86_64/product-software で利用できます。TAR アーカイブをダウンロードし、そこからイメージファイル(ironic-python-agent.kernel および ironic-python-agent.initramfs)を抽出し、それらを TFTP サーバーの /tftpboot ディレクトリーにコピーします。
ハードウェアイントロスペクションサービスをホストするサーバーで、Red Hat OpenStack Platform 8 director for RHEL 7 (RPMs) チャンネルを有効にします。
subscription-manager repos --enable=rhel-7-server-openstack-8-director-rpms
# subscription-manager repos --enable=rhel-7-server-openstack-8-director-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow openstack-ironic-inspector パッケージをインストールします。
yum install openstack-ironic-inspector
# yum install openstack-ironic-inspectorCopy to Clipboard Copied! Toggle word wrap Toggle overflow ironic.conf ファイルでイントロスペクションを有効にします。
openstack-config --set /etc/ironic/ironic.conf \ inspector enabled True
# openstack-config --set /etc/ironic/ironic.conf \ inspector enabled TrueCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハードウェアイントロスペクションサービスが別のサーバーにホストされている場合は、conductor サービスをホストするサーバーにその URL を設定します。
openstack-config --set /etc/ironic/ironic.conf \ inspector service_url http://INSPECTOR_IP:5050
# openstack-config --set /etc/ironic/ironic.conf \ inspector service_url http://INSPECTOR_IP:5050Copy to Clipboard Copied! Toggle word wrap Toggle overflow INSPECTOR_IP は、ハードウェアイントロスペクションサービスをホストしているサーバーの IP アドレスまたはホスト名に置き換えます。
ハードウェアイントロスペクションサービスに認証情報を指定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の値を置き換えます。
- IDENTITY_IP は、Identity サーバーの IP アドレスまたはホスト名に置き換えます。
- PASSWORD を、Bare Metal Provisioning が Identity での認証に使用するパスワードに置き換えます。
必要に応じて、ハードウェアイントロスペクションサービスを設定して、ramdisk のログを保存します。
openstack-config --set /etc/ironic-inspector/inspector.conf \ processing ramdisk_logs_dir /var/log/ironic-inspector/ramdisk
# openstack-config --set /etc/ironic-inspector/inspector.conf \ processing ramdisk_logs_dir /var/log/ironic-inspector/ramdiskCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプションで、複数のローカルディスクを持つベアメタルマシン上のブロックデバイスを収集し、ルートデバイスを公開する追加のデータ処理プラグインを有効にします。
ramdisk_error、root_disk_selection、scheduler、およびvalidate_interfacesはデフォルトで有効になっています。無効にしないでください。以下のコマンドは、root_device_hintを一覧に追加します。openstack-config --set /etc/ironic-inspector/inspector.conf \ processing processing_hooks '$default_processing_hooks,root_device_hint'
# openstack-config --set /etc/ironic-inspector/inspector.conf \ processing processing_hooks '$default_processing_hooks,root_device_hint'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 最初の
ironic インスペクターデータベースを生成します。ironic-inspector-dbsync --config-file /etc/ironic-inspector/inspector.conf upgrade
# ironic-inspector-dbsync --config-file /etc/ironic-inspector/inspector.conf upgradeCopy to Clipboard Copied! Toggle word wrap Toggle overflow ironic-inspector によって所有されるようにインスペクターデータベースファイルを更新します。
chown ironic-inspector /var/lib/ironic-inspector/inspector.sqlite
# chown ironic-inspector /var/lib/ironic-inspector/inspector.sqliteCopy to Clipboard Copied! Toggle word wrap Toggle overflow テキストエディターで /etc/ironic-inspector/dnsmasq.conf ファイルを開き、openstack-ironic-inspector-dnsmasq サービス用に以下の PXE ブートを設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の値を置き換えます。
- INTERFACE は、ベアメタルプロビジョニングネットワークインターフェイスの名前に置き換えます。
- START_IP は、Floating IP アドレスが割り当てられる IP アドレスの範囲の開始を示す IP アドレスに置き換えます。
- END_IP は、Floating IP アドレスが割り当てられる IP アドレスの範囲の終了を示す IP アドレスに置き換えます。
syslinux ブートローダーをtftpディレクトリーにコピーします。cp /usr/share/syslinux/pxelinux.0 /tftpboot/pxelinux.0
# cp /usr/share/syslinux/pxelinux.0 /tftpboot/pxelinux.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプションとして、
/etc/ironic-inspector/inspector.confファイルの swift セクションにメタデータを保存するように、ハードウェアイントロスペクションサービスを設定することができます。[swift] username = ironic password = PASSWORD tenant_name = service os_auth_url = http://IDENTITY_IP:5000/v2.0
[swift] username = ironic password = PASSWORD tenant_name = service os_auth_url = http://IDENTITY_IP:5000/v2.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の値を置き換えます。
- IDENTITY_IP は、Identity サーバーの IP アドレスまたはホスト名に置き換えます。
- PASSWORD を、Bare Metal Provisioning が Identity での認証に使用するパスワードに置き換えます。
テキストエディターで /tftpboot/pxelinux.cfg/default ファイルを開き、以下のオプションを設定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow INSPECTOR_IP は、ハードウェアイントロスペクションサービスをホストしているサーバーの IP アドレスまたはホスト名に置き換えます。上記のブロックの
\で示されているように、add から/continueのテキストは、1 行ずつ指定する必要があります。/tftpboot/ ディレクトリーとそのファイルのセキュリティーコンテキストをリセットします。
restorecon -R /tftpboot/
# restorecon -R /tftpboot/Copy to Clipboard Copied! Toggle word wrap Toggle overflow この手順により、ディレクトリーに正しい SELinux セキュリティーラベルがあり、dnsmasq サービスがディレクトリーにアクセスできるようにします。
ハードウェアイントロスペクションサービスと dnsmasq サービスを開始し、ブート時に開始するように設定します。
systemctl start openstack-ironic-inspector.service systemctl enable openstack-ironic-inspector.service systemctl start openstack-ironic-inspector-dnsmasq.service systemctl enable openstack-ironic-inspector-dnsmasq.service
# systemctl start openstack-ironic-inspector.service # systemctl enable openstack-ironic-inspector.service # systemctl start openstack-ironic-inspector-dnsmasq.service # systemctl enable openstack-ironic-inspector-dnsmasq.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハードウェアイントロスペクションは、Bare Metal Provisioning に登録した後にノードで使用できます。