付録A Bare Metal のドライバー
ベアメタルノードは、Bare Metal サービスで有効にしたドライバーの 1 つを使用するように設定することができます。各ドライバーは、プロビジョニングメソッドと電源管理のタイプで構成されます。ドライバーによっては追加の設定が必要な場合があります。このセクションに記述された各ドライバーはプロビジョニングに PXE を使用します。ドライバーは電源管理タイプ別にリストされます。
ironic.yaml
ファイルの IronicEnabledDrivers
パラメーターを使用して、ドライバーを追加することができます。デフォルトでは、pxe_ipmitool
、pxe_drac
、および pxe_ilo
が有効です。
サポートされているプラグインとドライバーの全一覧は、「Component, Plug-In, and Driver Support in Red Hat OpenStack Platform」のアーティクルを参照してください。
A.1. Intelligent Platform Management Interface (IPMI)
IPMI は、電源管理やサーバー監視などの帯域外 (OOB) リモート管理機能を提供するインターフェースです。この電源管理タイプを使用するには、全 Bare Metal サービスノードで IPMI が共有ベアメタルネットワークに接続されている必要があります。pxe_ipmitool
ドライバーを有効にし、ノードの driver_info
に以下の情報を設定します。
-
ipmi_address
: IPMI NIC の IP アドレス -
ipmi_username
: IPMI のユーザー名 -
ipmi_password
: IPMI のパスワード
A.2. Dell Remote Access Controller (DRAC)
DRAC は、電源管理やサーバー監視などの帯域外 (OOB) リモート管理機能を提供するインターフェースです。この電源管理タイプを使用するには、全 Bare Metal サービスノードで DRAC が共有ベアメタルネットワークに接続されている必要があります。pxe_drac
ドライバーを有効にし、ノードの driver_info
に以下の情報を設定します。
-
drac_address
: DRAC NIC の IP アドレス -
drac_username
: DRAC のユーザー名 -
drac_password
: DRAC のパスワード
A.3. Integrated Remote Management Controller (iRMC)
富士通の iRMC は、電源管理やサーバー監視などの帯域外 (OOB) リモート管理機能を提供するインターフェースです。Bare Metal サービスノードでこの電源管理タイプを使用するには、このノードで iRMC インターフェースが共有ベアメタルネットワークに接続されている必要があります。pxe_irmc
ドライバーを有効にし、ノードの driver_info
に以下の情報を設定します。
-
irmc_address
: iRMC インターフェースの NIC の IP アドレス -
irmc_username
: iRMC のユーザー名 -
irmc_password
: iRMC のパスワード
IPMI を使用してブートモードを設定する場合、または SCCI を使用してセンサーデータを取得する場合には、追加で以下のステップを完了する必要があります。
ironic.conf でセンサーメソッドを有効にします。
$ openstack-config --set /etc/ironic/ironic.conf \ irmc sensor_method METHOD
METHOD は
scci
またはipmitool
に置き換えます。SCCI を有効にした場合は、python-scciclient パッケージをインストールします。
# yum install python-scciclient
Bare Metal Conductor サービスを再起動します。
# systemctl restart openstack-ironic-conductor.service
iRMC ドライバーを使用するには、iRMC S4 以降が必要です。
A.4. Integrated Lights-Out (iLO)
Hewlett-Packard の iLO は、電源管理やサーバー監視などの帯域外 (OOB) リモート管理機能を提供するインターフェースです。この電源管理タイプを使用するには、全ベアメタルノードで iLO インターフェースが共有ベアメタルネットワークに接続されている必要があります。pxe_ilo
ドライバーを有効にし、ノードの driver_info
に以下の情報を設定します。
-
ilo_address
: iLO インターフェースの NIC の IP アドレス -
ilo_username
: iLO のユーザー名 -
ilo_password
: iLO のパスワード
python-proliantutils パッケージもインストールして、Bare Metal Conductor サービスを再起動する必要があります。
# yum install python-proliantutils # systemctl restart openstack-ironic-conductor.service
A.5. SSH と virsh
pxe_ssh
ドライバーは非推奨となっており、pxe_ipmitool
ドライバーを使用する VirtualBMC が推奨されています。
Bare Metal サービスは、libvirt を実行するホストにアクセスして、仮想マシンをノードとして使用することができます。virsh はノードの電源管理機能を制御します。
SSH ドライバーは、テストおよび評価の目的でのみ利用いただけます。Red Hat OpenStack Platform のエンタープライズ環境には推奨していません。
この電源管理タイプを使用するには、Bare Metal サービスは仮想ノードを設定するホスト上の libvirt 環境に完全にアクセス可能なアカウントに SSH でアクセスできる必要があります。pxe_ssh
ドライバーを有効にし、ノードの driver_info
に以下の情報を設定します。
-
ssh_virt_type
: このオプションはvirsh
に設定します。 -
ssh_address
: virsh ホストの IP アドレス -
ssh_username
: SSH ユーザー名 -
ssh_key_contents
: Bare Metal コンダクターノード上の SSH 秘密鍵の内容。対応する公開鍵が virsh ホストにコピーされている必要があります。
A.6. VirtualBMC
VirtualBMC とは、仮想 Baseboard Management Controller (BMC) を作成することのできるユーティリティーです。仮想 BMC により、Intelligent Platform Management Interface (IPMI) プロトコルを使用して仮想マシンを物理マシンのように制御できます。
VirtualBMC は、テストおよび評価の目的でのみ利用いただけます。Red Hat OpenStack Platform のエンタープライズ環境には推奨していません。
仮想マシンをホストしているハイパーバイザーで VirtualBMC をインストールします。
# yum install python-virtualbmc
各仮想マシン用に BMC を作成します。
$ vbmc add DOMAIN --port PORT_NUMBER --username USERNAME --password PASSWORD
仮想 BMC を起動します。
$ vbmc start DOMAIN
仮想 BMC は自動的には起動しないので、ホストマシンをリブートした場合には、仮想 BMC を再起動することを忘れないようにしてください。
A.6.1. pxe_ssh
から VirtualBMC への移行
pxe_ssh
ドライバーを使用する既存の仮想オーバークラウドがある場合には、仮想 BMC を使用して pxe_impitool
に移行することができます。
-
上記のステップに従って、
python-virtualbmc
をインストールし、各仮想マシン用の BMC を作成します。 pxe_impitool
が有効化されていることを確認してください (デフォルトでは有効化されます)。有効でない場合には、ironic.yaml
ファイルに追加し、openstack overcloud deploy
コマンドを再度実行して、変更を適用します。parameter_defaults: IronicEnabledDrivers: - pxe_ipmitool - pxe_drac - pxe_ilo
各ノードで、ドライバーとドライバーのプロパティーを更新します。
$ openstack baremetal node set NODE \ --driver pxe_ipmitool \ --driver-info ipmi_address=IP_ADDRESS \ --driver-info ipmi_port=PORT \ --driver-info ipmi_username="USERNAME" \ --driver-info ipmi_password="PASSWORD"
- NODE は、ノードの名前または UUID に置き換えます。
- IP_ADDRESS は仮想ホストの IP アドレスに置き換えます。
- PORT は仮想 BMC ポートに置き換えます。
ノードが正しく更新されたことを確認します。
$ openstack baremetal node validate NODE | grep power
- NODE は、ノードの名前または UUID に置き換えます。