2015-07-27
OpenStack RDO Managerインストール後の操作 (3)
動作確認として、OpenStack RedHat RDO Managerのインストール後の操作を行います。 instackへログインして、そこからテナントののOpenStackを操作します。 実際には、基本的なOpenStackの操作と同じです。
テナントネットワーク、クラウドイメージ、キーペアの設定は、OpenStack RDO Managerインストール後の操作 (2) までで完了しているものとします。
ここでは、
- インスタンスの起動
- フローティングIPの割り当て
- インスタンスへのsshログイン を行います。
instackへログインしていない場合は、 stackユーザーでRDOマネージャホストへssh公開鍵ログインし、instack VMへrootログインし、stackへ遷移します。 テナント のOpenStackを操作するため source test_tenant_admin_rc で各種環境変数をロードしておく必要があります。
$ 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 test_tenant_admin_rc
[stack@instack ~]$ screen
ここからの作業は、時間がかかることがありますので、上記のように screen を使用してください。
フレーバーの確認
下記コマンドでフレーバーを確認します。
[stack@instack ~(tenant_admin)]$ openstack flavor list
| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+-----------+-------+------+-----------+-------+-----------+
| 1 | m1.tiny | 512 | 1 | 0 | 1 | True |
| 2 | m1.small | 2048 | 20 | 0 | 1 | True |
| 3 | m1.medium | 4096 | 40 | 0 | 2 | True |
| 4 | m1.large | 8192 | 80 | 0 | 4 | True |
| 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True |
| fb43e932-1c9f-4060-a363-de53440616bd | m1.demo | 512 | 10 | 0 | 1 | True |
+--------------------------------------+-----------+-------+------+-----------+-------+-----------+
イメージの確認
下記コマンドでイメージを確認します。
[stack@instack ~(tenant_admin)]$ openstack image list
+--------------------------------------+--------------+
| ID | Name |
+--------------------------------------+--------------+
| 10d09fa0-4b44-4d85-999d-4d08eca7bcb9 | CirrOS 0.3.4 |
+--------------------------------------+--------------+
テナントネットワークの確認
下記コマンドで接続するテナントネットワーク test_tenant を確認します。
[stack@instack ~(tenant_admin)]$ neutron net-list
+--------------------------------------+-------------+-----------------------------------------------------+
| id | name | subnets |
+--------------------------------------+-------------+-----------------------------------------------------+
| 5d02cce0-4c3c-4806-a13e-29d538a5857f | test_ext | 51612275-d249-4c76-9f12-49bd13bec5dc 192.0.2.0/24 |
| d6865968-ef6c-46ee-8eca-b934a36f5531 | test_tenant | 8d41327a-8cda-4c29-9a5a-cc408eec8a10 192.168.1.0/24 |
+--------------------------------------+-------------+-----------------------------------------------------+
起動
下記コマンドで起動します。ベアメタルの環境の関係で、m1.smallまでしか使用できないと思われます。 CirrOSは、m1.tinyで起動できます。
[stack@instack ~(tenant_admin)]$ nova boot --image 10d09fa0-4b44-4d85-999d-4d08eca7bcb9 --flavor m1.tiny --nic net-id=d6865968-ef6c-46ee-8eca-b934a36f5531 --security-groups any --key_name stack test1
+--------------------------------------+-----------------------------------------------------+
| Property | Value |
+--------------------------------------+-----------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | - |
| OS-EXT-SRV-ATTR:hypervisor_hostname | - |
| OS-EXT-SRV-ATTR:instance_name | instance-00000003 |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | - |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| adminPass | xqqrfQYY7XcQ |
| config_drive | |
| created | 2015-07-22T01:38:21Z |
| flavor | m1.tiny (1) |
| hostId | |
| id | cf093f19-6e70-4158-9c4f-f22af6542701 |
| image | CirrOS 0.3.4 (10d09fa0-4b44-4d85-999d-4d08eca7bcb9) |
| key_name | stack |
| metadata | {} |
| name | test1 |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | any |
| status | BUILD |
| tenant_id | 2fc48b580ade4758a382694689d15a86 |
| updated | 2015-07-22T01:38:21Z |
| user_id | c353396d52a14bd99ef0131ff555057d |
+--------------------------------------+-----------------------------------------------------+
起動確認
起動したかどうかは、nova list で確認できます。Status=BUILD の場合は作成中です。
- Status=ERROR は、エラーを確認する必要がありますので、Status=ERRORの場合を見てください。
- Status=ACTIVE は、正常に起動しています。
[stack@instack ~(tenant_admin)]$ nova list
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| cf093f19-6e70-4158-9c4f-f22af6542701 | test1 | BUILD | spawning | NOSTATE | test_tenant=192.168.1.8 |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
[stack@instack ~(tenant_admin)]$ nova list
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| cf093f19-6e70-4158-9c4f-f22af6542701 | test1 | ACTIVE | - | Running | test_tenant=192.168.1.8 |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
Status=ERRORの場合
StatusがERRORの場合は、nova show でエラー内容を確認してください。 CirrOSでは、m1.tinyで起動できるため問題はないと思われますが、 その他のOSイメージで、 "No valid host was found. There are not enough hosts available."の場合は、フレーバーをm1.smallなどに変えてみると起動できる可能性があります。
エラーの例
[stack@instack ~(tenant_admin)]$ nova list
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
| 7701d676-7d95-4c30-8bb5-036eb664fabc | test1 | ERROR | - | NOSTATE | test_tenant=192.168.1.6 |
+--------------------------------------+-------+--------+------------+-------------+-------------------------+
[stack@instack ~(tenant_admin)]$ nova show test1
+--------------------------------------+------------------------------------------------------------------------------------------------------------+
| Property | Value |
+--------------------------------------+------------------------------------------------------------------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | overcloud-novacompute-0 |
| ... | ... |
| created | 2015-07-22T01:13:16Z |
| fault | {"message": "No valid host was found. There are not enough hosts available.", "code": 500, "details": ... |
| ... | ... |
| flavor | m1.medium (3) |
| ... | ... |
| status | ERROR |
| ... | ... |
+--------------------------------------+------------------------------------------------------------------------------------------------------------+
フローティングIPの割り当て
起動したインスタンスには、instackからはそのままではアクセスできません。 ログインするためには、フローティングIPを割り当てるのが簡単です。
フローティングIPの作成
下記コマンドで、フローティングIPを外部ネットtest_extで確保したレンジから作成します。
[stack@instack ~(tenant_admin)]$ neutron floatingip-create test_ext
Created a new floatingip:
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| fixed_ip_address | |
| floating_ip_address | 192.0.2.129 |
| floating_network_id | 5d02cce0-4c3c-4806-a13e-29d538a5857f |
| id | 2bcb73b8-d88b-4361-80f9-1f3036335181 |
| port_id | |
| router_id | |
| status | DOWN |
| tenant_id | 2fc48b580ade4758a382694689d15a86 |
+---------------------+--------------------------------------+
192.0.2.129が使用できるようになりました。
フローティングIPの作成
下記コマンドで、フローティングIPをインスタンス test1 に割り当てます。
[stack@instack ~(tenant_admin)]$ nova floating-ip-associate test1 192.0.2.129
[stack@instack ~(tenant_admin)]$ nova list
+--------------------------------------+-------+--------+------------+-------------+--------------------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-------+--------+------------+-------------+--------------------------------------+
| cf093f19-6e70-4158-9c4f-f22af6542701 | test2 | ACTIVE | - | Running | test_tenant=192.168.1.8, 192.0.2.129 |
+--------------------------------------+-------+--------+------------+-------------+--------------------------------------+
192.0.2.129が test1 インスタンスに割り当てられました。
インスタンスへのsshログイン
cirrosユーザーでログインできます。
[stack@instack ~(tenant_admin)]$ ssh cirros@192.0.2.129 -i ~/.ssh/id_rsa
$ uname -a
Linux test1 3.2.0-80-virtual #116-Ubuntu SMP Mon Mar 23 17:28:52 UTC 2015 x86_64 GNU/Linux
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast qlen 1000
link/ether fa:16:3e:11:59:20 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.8/24 brd 192.168.1.255 scope global eth0
inet6 fe80::f816:3eff:fe11:5920/64 scope link
valid_lft forever preferred_lft forever
round-trip min/avg/max = 12.753/12.957/13.125 ms
$ ping -c 3 www.google.com
PING www.google.com (74.125.239.112): 56 data bytes
64 bytes from 74.125.239.112: seq=0 ttl=52 time=13.017 ms
64 bytes from 74.125.239.112: seq=1 ttl=52 time=13.087 ms
64 bytes from 74.125.239.112: seq=2 ttl=52 time=13.436 ms
CirrOSのインスタンスの動作確認ができました。 次に、CentOSのインスタンスが作成できるか確認します。