OpenStack Yoga : Nova 設定 #12022/04/29 |
OpenStack Compute Service(Nova)を設定します。
当例では以下のような環境で管理ノードを構成しています。
eth0|10.0.0.30 +-----------+-----------+ | [ dlp.srv.world ] | | (Control Node) | | | | MariaDB RabbitMQ | | Memcached httpd | | Keystone Glance | | Nova API | +-----------------------+ |
[1] | Keystone に Nova 用のユーザー等々を登録しておきます。 |
# [service] プロジェクト所属で [nova] ユーザーを作成 root@dlp ~(keystone)# openstack user create --domain default --project service --password servicepassword nova +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | default_project_id | c1c4d9a5313f43bd9f6f555e2d34ab28 | | domain_id | default | | enabled | True | | id | df788fe920e6467c852a8198e87f6859 | | name | nova | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ # [nova] ユーザーを [admin] ロール に加える root@dlp ~(keystone)# openstack role add --project service --user nova admin
# [service] プロジェクト所属で [placement] ユーザーを作成 root@dlp ~(keystone)# openstack user create --domain default --project service --password servicepassword placement +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | default_project_id | c1c4d9a5313f43bd9f6f555e2d34ab28 | | domain_id | default | | enabled | True | | id | 628c558c47b542d79d9b4c91e5ef5241 | | name | placement | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ # [placement] ユーザーを [admin] ロール に加える root@dlp ~(keystone)# openstack role add --project service --user placement admin
# [nova] 用サービスエントリ作成 root@dlp ~(keystone)# openstack service create --name nova --description "OpenStack Compute service" compute +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Compute service | | enabled | True | | id | ec504395cbfd4fb7814e18fc6f7a0817 | | name | nova | | type | compute | +-------------+----------------------------------+ # [placement] 用サービスエントリ作成 root@dlp ~(keystone)# openstack service create --name placement --description "OpenStack Compute Placement service" placement +-------------+-------------------------------------+ | Field | Value | +-------------+-------------------------------------+ | description | OpenStack Compute Placement service | | enabled | True | | id | 76cf3c1813fa415ca1a44541b9ff5800 | | name | placement | | type | placement | +-------------+-------------------------------------+ # Nova API ホストを定義 root@dlp ~(keystone)# export controller=dlp.srv.world
# [nova] 用エンドポイント作成 (public) root@dlp ~(keystone)# openstack endpoint create --region RegionOne compute public https://$controller:8774/v2.1/%\(tenant_id\)s +--------------+-----------------------------------------------+ | Field | Value | +--------------+-----------------------------------------------+ | enabled | True | | id | e4773a49a9454e5991da379bf8f0f72e | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | ec504395cbfd4fb7814e18fc6f7a0817 | | service_name | nova | | service_type | compute | | url | https://dlp.srv.world:8774/v2.1/%(tenant_id)s | +--------------+-----------------------------------------------+ # [nova] 用エンドポイント作成 (internal) root@dlp ~(keystone)# openstack endpoint create --region RegionOne compute internal https://$controller:8774/v2.1/%\(tenant_id\)s +--------------+-----------------------------------------------+ | Field | Value | +--------------+-----------------------------------------------+ | enabled | True | | id | e0b96f46aaf248f686ec794bf22efe14 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | ec504395cbfd4fb7814e18fc6f7a0817 | | service_name | nova | | service_type | compute | | url | https://dlp.srv.world:8774/v2.1/%(tenant_id)s | +--------------+-----------------------------------------------+ # [nova] 用エンドポイント作成 (admin) root@dlp ~(keystone)# openstack endpoint create --region RegionOne compute admin https://$controller:8774/v2.1/%\(tenant_id\)s +--------------+-----------------------------------------------+ | Field | Value | +--------------+-----------------------------------------------+ | enabled | True | | id | 6ca5f6efb24d4996b4d95d99ded9df56 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | ec504395cbfd4fb7814e18fc6f7a0817 | | service_name | nova | | service_type | compute | | url | https://dlp.srv.world:8774/v2.1/%(tenant_id)s | +--------------+-----------------------------------------------+ # [placement] 用エンドポイント作成 (public) root@dlp ~(keystone)# openstack endpoint create --region RegionOne placement public https://$controller:8778 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | e685a5a84e5e45f388dfdf9d9a4eb8db | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | 76cf3c1813fa415ca1a44541b9ff5800 | | service_name | placement | | service_type | placement | | url | https://dlp.srv.world:8778 | +--------------+----------------------------------+ # [placement] 用エンドポイント作成 (internal) root@dlp ~(keystone)# openstack endpoint create --region RegionOne placement internal https://$controller:8778 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 45b26678e9a4425bb97520d2ca9dade0 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | 76cf3c1813fa415ca1a44541b9ff5800 | | service_name | placement | | service_type | placement | | url | https://dlp.srv.world:8778 | +--------------+----------------------------------+ # [placement] 用エンドポイント作成 (admin) root@dlp ~(keystone)# openstack endpoint create --region RegionOne placement admin https://$controller:8778 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 90fbf641257a4e64932bf1392486027e | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | 76cf3c1813fa415ca1a44541b9ff5800 | | service_name | placement | | service_type | placement | | url | https://dlp.srv.world:8778 | +--------------+----------------------------------+ |
[2] | Nova 用のユーザーとデータベースを MariaDB に作成しておきます。 |
root@dlp ~(keystone)# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 41 Server version: 10.6.7-MariaDB-2ubuntu1 Ubuntu 22.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database nova; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova.* to nova@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova.* to nova@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> create database nova_api; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova_api.* to nova@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova_api.* to nova@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> create database placement; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on placement.* to placement@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> grant all privileges on placement.* to placement@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> create database nova_cell0; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova_cell0.* to nova@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> grant all privileges on nova_cell0.* to nova@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> exit Bye |
Sponsored Link |