Skip navigation

2015-07-27

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

OpenStack RedHat RDO Managerのインストールを行います。 Overcloudのベアメタルマシン設定は、OpenStack RDO Managerインストール (4) までで完了しているものとします。

ここでは、Overcloudをデプロイします。OpenStack Heatが使用されます。

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 を使用してください。

インスタンスのフレーバーの作成

インスタンスのフレーバー baremetal を作成します。ベアメタルマシンのプロファイルにマッチしていない場合はインスタンス起動時にエラーになります。

Controllerと、Computeのインスタンスは、 baremetal フレーバで作成されます。

[stack@instack ~]$ openstack flavor create --id auto --ram 4096 --disk 40 --vcpus 1 baremetal
[stack@instack ~]$ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" baremetal

サブネットDNSサーバの確認

サブネットの dns_nameservers が、192.168.122.1であることを確認します。

[stack@instack ~]$ neutron subnet-list
+--------------------------------------+------+--------------+---------------------------------------------+
| id                                   | name | cidr         | allocation_pools                            |
+--------------------------------------+------+--------------+---------------------------------------------+
| eae40800-2d83-4bf2-b100-4a1f22ef84f6 |      | 192.0.2.0/24 | {"start": "192.0.2.5", "end": "192.0.2.24"} |
+--------------------------------------+------+--------------+---------------------------------------------+
[stack@instack ~]$ neutron subnet-show eae40800-2d83-4bf2-b100-4a1f22ef84f6
+-------------------+---------------------------------------------------------------+
| Field             | Value                                                         |
+-------------------+---------------------------------------------------------------+
| allocation_pools  | {"start": "192.0.2.5", "end": "192.0.2.24"}                   |
| cidr              | 192.0.2.0/24                                                  |
| dns_nameservers   | 192.168.122.1                                                 |
| enable_dhcp       | True                                                          |
| gateway_ip        | 192.0.2.1                                                     |
| host_routes       | {"destination": "169.254.169.254/32", "nexthop": "192.0.2.1"} |
| id                | eae40800-2d83-4bf2-b100-4a1f22ef84f6                          |
| ip_version        | 4                                                             |
| ipv6_address_mode |                                                               |
| ipv6_ra_mode      |                                                               |
| name              |                                                               |
| network_id        | 99947eb0-e56a-46ba-9c8f-8641ca280685                          |
| subnetpool_id     |                                                               |
| tenant_id         | fd2f647a5dde4d4da91bfa7cf997c60a                              |
+-------------------+---------------------------------------------------------------+

Overcloudデプロイの管理プランの確認

uuidを取得します。

[stack@instack ~]$ openstack management plan list
+--------------------------------------+-----------+-------------+------------------------------------------------------------------+
| uuid                                 | name      | description | roles                                                            |
+--------------------------------------+-----------+-------------+------------------------------------------------------------------+
| 938aea79-d0da-44c1-836c-3f0b6a4708fd | overcloud | None        | Compute, Ceph-Storage, Cinder-Storage, Controller, Swift-Storage |
+--------------------------------------+-----------+-------------+------------------------------------------------------------------+

overcloudプランにはロールが含まれます。

Overcloudデプロイ

Overcloudをデプロイします。 Overcloud Deployedが出力されれば完了です。

[stack@instack ~]$ openstack overcloud deploy --plan 938aea79-d0da-44c1-836c-3f0b6a4708fd --debug
...
Overcloud Deployed

Overcloudデプロイ確認

ベアメタルマシンの状況確認

Provision State=active になっていること。

[stack@instack ~]$ openstack baremetal list
+--------------------------------------+------+--------------------------------------+-------------+-----------------+-------------+
| UUID                                 | Name | Instance UUID                        | Power State | Provision State | Maintenance |
+--------------------------------------+------+--------------------------------------+-------------+-----------------+-------------+
| 2acdc988-fb22-4f85-ba6a-7036260b03d2 | None | 138f004f-d3b8-4295-b3e5-dcbb1d520ee7 | power on    | active          | False       |
| 3ac7e24e-e753-46f7-9d4c-002760acecb2 | None | 47e5a1be-4d3f-4a34-a2b4-bf890ff6d2da | power on    | active          | False       |
+--------------------------------------+------+--------------------------------------+-------------+-----------------+-------------+

Heatの結果確認

Heatのステータスが、CREATE_COMPLETE になっていること。

[stack@instack ~]$ heat stack-list
+--------------------------------------+------------+-----------------+----------------------+
| id                                   | stack_name | stack_status    | creation_time        |
+--------------------------------------+------------+-----------------+----------------------+
| f6083bd6-9711-4272-9bb4-4055c32dc820 | overcloud  | CREATE_COMPLETE | 2015-07-21T10:21:05Z |
+--------------------------------------+------------+-----------------+----------------------+

Heatスタックのリソースリストの結果の確認

[stack@instack ~]$ heat resource-list overcloud
+-----------------------------------+-----------------------------------------------+---------------------------------------------------+-----------------+----------------------+
| resource_name                     | physical_resource_id                          | resource_type                                     | resource_status | updated_time         |
+-----------------------------------+-----------------------------------------------+---------------------------------------------------+-----------------+----------------------+
| BlockStorageAllNodesDeployment    | 8ec4e437-83c1-477a-8daa-7f329488d6be          | OS::Heat::StructuredDeployments                   | CREATE_COMPLETE | 2015-07-21T10:21:05Z |
| ...                               | ...                                           | ...                                               | ...             | ...                  |
| allNodesConfig                    | a5929608-b780-4758-a6fe-efa0c929a4f4          | OS::TripleO::AllNodes::SoftwareConfig             | CREATE_COMPLETE | 2015-07-21T10:21:05Z |
+-----------------------------------+-----------------------------------------------+---------------------------------------------------+-----------------+----------------------+

Controlerと、Computeのインスタンス確認

[stack@instack ~]$ nova list
+--------------------------------------+-------------------------+--------+------------+-------------+---------------------+
| ID                                   | Name                    | Status | Task State | Power State | Networks            |
+--------------------------------------+-------------------------+--------+------------+-------------+---------------------+
| 138f004f-d3b8-4295-b3e5-dcbb1d520ee7 | overcloud-controller-0  | ACTIVE | -          | Running     | ctlplane=192.0.2.9  |
| 47e5a1be-4d3f-4a34-a2b4-bf890ff6d2da | overcloud-novacompute-0 | ACTIVE | -          | Running     | ctlplane=192.0.2.10 |
+--------------------------------------+-------------------------+--------+------------+-------------+---------------------+

Controllerインスタンスにsshログインして確認

[stack@instack ~]$ ssh heat-admin@192.0.2.9
[heat-admin@overcloud-controller-0 ~]$ sudo systemctl
...
cloud-final.service                                                                      loaded failed failed    Execute cloud user/final scripts

cloud-finalが起動に失敗しているので、再起動します。 これは、バグでしょうか?

[heat-admin@overcloud-controller-0 ~]$ sudo systemctl restart cloud-final
[heat-admin@overcloud-controller-0 ~]$ sudo journalctl -b -u cloud-final
...
...[CLOUDINIT] util.py[DEBUG]: cloud-init mode 'modules' took 0.205 seconds (0.20)
[heat-admin@overcloud-controller-0 ~]$ logout

dhcp-interfaceが失敗しているのは、問題無いとみられます。(ifupしていない場合ifupするだけのスクリプトのようであるが、すでにupしているので問題ない)

Computeインスタンスにsshログインして確認

[stack@instack ~]$ ssh heat-admin@192.0.2.10
[heat-admin@overcloud-novacompute-0 ~]$ sudo systemctl
...
cloud-final.service                                                                      loaded failed failed    Execute cloud user/final scripts

cloud-finalが起動に失敗しているので、再起動します。 こちらもバグでしょうか。

[heat-admin@overcloud-novacompute-0 ~]$ sudo systemctl restart cloud-final
[heat-admin@overcloud-novacompute-0 ~]$ sudo journalctl -b -u cloud-final
...
...[CLOUDINIT] util.py[DEBUG]: cloud-init mode 'modules' took 0.181 seconds (0.18)
[heat-admin@overcloud-novacompute-0 ~]$ logout

以上で、RDO Managerのインストールは完了です。 RDO Managerの問題で、上記のようにCLIでインストールした場合、Horizonから操作できるようになっていません。(2015-07-20時点)

そこで、次の記事では、CLIでOvercloudのOpenStackを操作します。

OpenStack RDO Managerインストール後の操作 (1)