OpenStack Juno : Cinder 設定#1 ( Control ノード )2015/01/11 |
OpenStack Block Storage(Cinder)をインストールします。
ここでは、以下のように、Keystone/Glance/Nova API インストール済みの Control ノード に 新たに Cinder API をインストールし、
Block Storage Service ノードに Cinder-Volume をインストールして設定します。
( 例として役割ごとに分けていますが、All in One 構成にすることももちろん可能です )
+------------------+ 10.0.0.50| [ Storage Node ] | +------------------+ +-----+ Cinder-Volume | | [ Control Node ] | | eth0| | | Keystone |10.0.0.30 | +------------------+ | Glance |------------+ | Nova API |eth0 | +------------------+ | Cinder API | | eth0| [ Compute Node ] | +------------------+ +-----+ Nova Compute | 10.0.0.51| | +------------------+ |
ここでは、Control ノードの設定をします。
|
|
[1] | Control ノードの Keystone に Cinder 用のユーザー等々を登録しておきます。 |
# Cinder ユーザー作成 (service テナント所属) [root@dlp ~(keystone)]# keystone user-create --tenant service --name cinder --pass servicepassword --enabled true +----------+----------------------------------+ | Property | Value | +----------+----------------------------------+ | email | | | enabled | True | | id | 6a9c39d906c64e7e9390fe2792a8165e | | name | cinder | | tenantId | 9e657ab1d2344de5aa9d86006732c7f0 | | username | cinder | +----------+----------------------------------+ # Cinder ユーザーを adminロール に加える [root@dlp ~(keystone)]# keystone user-role-add --user cinder --tenant service --role admin
# Cinder 用サービスエントリ作成 [root@dlp ~(keystone)]# keystone service-create --name=cinder --type=volume --description="Cinder Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Cinder Service | | enabled | True | | id | 572abfe6390b400eaeb8cd5268ef1348 | | name | cinder | | type | volume | +-------------+----------------------------------+[root@dlp ~(keystone)]# keystone service-create --name=cinderv2 --type=volumev2 --description="Cinder Service" +-------------+----------------------------------+ | Property | Value | +-------------+----------------------------------+ | description | Cinder Service | | enabled | True | | id | 1b8491c6ce174bab84e1815ff6e2303d | | name | cinderv2 | | type | volumev2 | +-------------+----------------------------------+ # Cinder API サーバーの IPアドレスを定義 [root@dlp ~(keystone)]# export cinder_api=10.0.0.30
# Cinder 用エンドポイント作成 [root@dlp ~(keystone)]# keystone endpoint-create --region RegionOne \ --service cinder \ --publicurl "http://$cinder_api:8776/v1/\$(tenant_id)s" \ --internalurl "http://$cinder_api:8776/v1/\$(tenant_id)s" \ --adminurl "http://$cinder_api:8776/v1/\$(tenant_id)s" +-------------+----------------------------------------+ | Property | Value | +-------------+----------------------------------------+ | adminurl | http://10.0.0.30:8776/v1/$(tenant_id)s | | id | 881ea211f493478cba7fff329073477a | | internalurl | http://10.0.0.30:8776/v1/$(tenant_id)s | | publicurl | http://10.0.0.30:8776/v1/$(tenant_id)s | | region | RegionOne | | service_id | 572abfe6390b400eaeb8cd5268ef1348 | +-------------+----------------------------------------+[root@dlp ~(keystone)]# keystone endpoint-create --region RegionOne \ --service cinderv2 \ --publicurl "http://$cinder_api:8776/v2/\$(tenant_id)s" \ --internalurl "http://$cinder_api:8776/v2/\$(tenant_id)s" \ --adminurl "http://$cinder_api:8776/v2/\$(tenant_id)s" +-------------+----------------------------------------+ | Property | Value | +-------------+----------------------------------------+ | adminurl | http://10.0.0.30:8776/v2/$(tenant_id)s | | id | db0781e5a5c7431ea81c724eb74b818a | | internalurl | http://10.0.0.30:8776/v2/$(tenant_id)s | | publicurl | http://10.0.0.30:8776/v2/$(tenant_id)s | | region | RegionOne | | service_id | 1b8491c6ce174bab84e1815ff6e2303d | +-------------+----------------------------------------+ |
[2] | Cinder 用のユーザーとデータベースを MariaDB に登録しておきます。 |
[root@dlp ~(keystone)]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 16 Server version: 5.5.40-MariaDB-wsrep MariaDB Server, wsrep_25.11.r4026 Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
create database cinder; Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on cinder.* to cinder@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on cinder.* to cinder@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec) exit Bye |
[3] | Cinder サービスをインストールします。 |
[root@dlp ~(keystone)]# yum --enablerepo=openstack-juno,epel -y install openstack-cinder
|
[4] | Cinder の基本設定です。 |
[root@dlp ~(keystone)]# mv /etc/cinder/cinder.conf /etc/cinder/cinder.conf.org
[root@dlp ~(keystone)]#
vi /etc/cinder/cinder.conf # 新規作成 [DEFAULT] state_path=/var/lib/cinder api_paste_config=api-paste.ini enable_v1_api=true rootwrap_config=/etc/cinder/rootwrap.conf auth_strategy=keystone # RabbitMQ サーバーを指定 rabbit_host=10.0.0.30 rabbit_port=5672 # RabbitMQ サーバー認証用ID rabbit_userid=guest # RabbitMQ サーバー認証用IDのパスワード rabbit_password=password rpc_backend=rabbit scheduler_driver=cinder.scheduler.filter_scheduler.FilterScheduler volume_manager=cinder.volume.manager.VolumeManager volume_api_class=cinder.volume.api.API volumes_dir=$state_path/volumes # MariaDB の接続情報 [database] connection=mysql://cinder:password@10.0.0.30/cinder # Keystone の認証情報 [keystone_authtoken] auth_host=10.0.0.30 auth_port=35357 auth_protocol=http admin_user=cinder admin_password=servicepassword admin_tenant_name=service chmod 640 /etc/cinder/cinder.conf [root@dlp ~(keystone)]# chgrp cinder /etc/cinder/cinder.conf
[root@dlp ~(keystone)]#
cinder-manage db sync [root@dlp ~(keystone)]# for service in api scheduler; do systemctl start openstack-cinder-$service systemctl enable openstack-cinder-$service done # 動作確認 [root@dlp ~(keystone)]# cinder-manage service list Binary Host Zone Status State Updated At cinder-scheduler dlp nova enabled :-) 2015-01-11 12:46:24 |
Sponsored Link |