Skip navigation

2015-07-27

OpenStack RDO Managerインストール (4)

OpenStack RedHat RDO Managerのインストールを行います。 Undercloudの設定、Overcloudのイメージアップロードは、OpenStack RDO Managerインストール (3) までで完了しているものとします。 ここでは、OpenStack ironicで使用されるベアメタルマシンをセットアップします。

instackへログインしていない場合は、 stackユーザーでRDOマネージャホストへssh公開鍵ログインし、instack VMへrootログインし、stackへ遷移します。 UndercloudのOpenStackを操作するため source stackrc で各種環境変数をロードしておく必要があります。

$ ssh -i ~/.ssh/id_rsa stack@192.168.100.30
[stack@rdo ~]$ su - stack
Password:
[stack@rdo ~]$ ssh root@192.168.122.221
[root@instack ~]# su - stack
[stack@instack ~]$ source stackrc
[stack@instack ~]$ screen

ここからの作業は、時間がかかることがありますので、上記のように screen を使用してください。

ベアメタルメタデータのインポート

ベアメタルメタデータをインポートします。Controller、ComputeのVMに合わせた設定にする必要があります。 電源管理は、stackユーザでssh接続するためユーザー名の変更が必要です。

[stack@instack ~]$ sed -i.orig -e "s/root/stack/g" instackenv.json

ironicディスカバリ情報の初期化

念のため、ironicディスカバリ情報を初期化しておきます。

[stack@instack ~]$ sudo rm /var/lib/ironic-discoverd/discoverd.sqlite
[stack@instack ~]$ sudo systemctl restart openstack-ironic-discoverd
[stack@instack ~]$ sudo journalctl -b -u openstack-ironic-discoverd
...
Jul 21 09:47:16 instack.localdomain ironic-discoverd[30601]: INFO:werkzeug: * Running on http://0.0.0.0:5050/

ベアメタルメタデータのインポート

ベアメタルメタデータをインポートします。 これ以降は、ベアメタルマシンのUUIDを使用します。

[stack@instack ~]$ openstack baremetal import --json instackenv.json
[stack@instack ~]$ openstack baremetal list
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| UUID                                 | Name | Instance UUID | Power State | Provision State | Maintenance |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| 2acdc988-fb22-4f85-ba6a-7036260b03d2 | None | None          | power off   | available       | False       |
| 3ac7e24e-e753-46f7-9d4c-002760acecb2 | None | None          | power off   | available       | False       |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+

Power Satet=power off、Maintenance=False、Provision=managable にし、boot設定を行います。 managable でないとデプロイできません。

[stack@instack ~]$ openstack baremetal power --off 2acdc988-fb22-4f85-ba6a-7036260b03d2
[stack@instack ~]$ openstack baremetal power --off 3ac7e24e-e753-46f7-9d4c-002760acecb2
[stack@instack ~]$ ironic node-update 2acdc988-fb22-4f85-ba6a-7036260b03d2 replace maintenance=false
[stack@instack ~]$ ironic node-update 3ac7e24e-e753-46f7-9d4c-002760acecb2 replace maintenance=false
[stack@instack ~]$ ironic node-set-provision-state 2acdc988-fb22-4f85-ba6a-7036260b03d2 manage
[stack@instack ~]$ ironic node-set-provision-state 3ac7e24e-e753-46f7-9d4c-002760acecb2 manage
[stack@instack ~]$ openstack baremetal list
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| UUID                                 | Name | Instance UUID | Power State | Provision State | Maintenance |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| 2acdc988-fb22-4f85-ba6a-7036260b03d2 | None | None          | power off   | manageable      | False       |
| 3ac7e24e-e753-46f7-9d4c-002760acecb2 | None | None          | power off   | manageable      | False       |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
[stack@instack ~]$ openstack baremetal configure boot

別の端末から、 instackに接続して、下記のtcpdumpをキャプチャして確認できるようにします。

$ ssh -i ~/.ssh/id_rsa stack@192.168.100.30
[stack@rdo ~]$ su - stack
Password:
[stack@rdo ~]$ ssh root@192.168.122.221
[root@instack ~]# su - stack
[stack@instack ~]$ sudo tcpdump -i any port 67 or port 68 or port 69

元の端末に戻り、introspectionを行います。 tcpdumpにDHCPの状況が表示されれば、問題なくIPアドレスが取得できています。

[stack@instack ~]$ openstack baremetal introspection bulk start --debug
Discovery for UUID 2acdc988-fb22-4f85-ba6a-7036260b03d2 finished successfully.
Discovery for UUID 3ac7e24e-e753-46f7-9d4c-002760acecb2 finished successfully.

7分程度で、完了します。 tcpdumpは停止させて良いです。 Provision=availableになっていれば良いです。

[stack@instack ~]$ openstack baremetal list
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| UUID                                 | Name | Instance UUID | Power State | Provision State | Maintenance |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+
| 2acdc988-fb22-4f85-ba6a-7036260b03d2 | None | None          | power off   | available       | False       |
| 3ac7e24e-e753-46f7-9d4c-002760acecb2 | None | None          | power off   | available       | False       |
+--------------------------------------+------+---------------+-------------+-----------------+-------------+

次にOvercloudをベアメタルマシンにデプロイします。

OpenStack RDO Managerインストール (5)