OpenStack Icehouse : Cinder 設定#1 ( Control ノード )2014/05/28 |
OpenStack Block Storage(Cinder)をインストールします。
ここでは、以下のように、Keystone/Glance/Nova API インストール済みの Control ノード に 新たに Cinder API をインストールし、
Block Storage Service ノードに Cinder-Volume をインストールして設定します。
( 例として役割ごとに分けていますが、All in One 構成にすることももちろん可能です )
+------------------+ 10.0.0.35| [ 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 | 2426a4e124624ce7949aff39df07abb9 | | name | cinder | | tenantId | 45fa65597c464d48a20be990f660a27b | | 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 | 535fb12034c84cbf85fda250c2e7bdf3 | | name | cinder | | type | volume | +-------------+----------------------------------+ # 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 | 5a08190a6dee4204bb566047a66a0796 | | 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 | 535fb12034c84cbf85fda250c2e7bdf3 | +-------------+----------------------------------------+ |
[2] | Cinder 用のユーザーとデータベースを MySQL に登録しておきます。 |
root@dlp ~(keystone)# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 41 Server version: 5.6.16-1~exp1 (Ubuntu) Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. # 「Cinder」データベース作成 ( 'password'の箇所は設定するパスワードを入力 )
mysql>
create database cinder character set utf8; Query OK, 1 row affected (0.00 sec)
mysql>
grant all privileges on cinder.* to cinder@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec)
mysql>
grant all privileges on cinder.* to cinder@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) exit Bye |
[3] | Cinder サービスをインストールします。 |
root@dlp ~(keystone)# apt-get -y install cinder-api cinder-scheduler
|
[4] | Cinder の基本設定です。 |
root@dlp ~(keystone)#
vi /etc/cinder/cinder.conf # 最終行に追記 rpc_backend = cinder.openstack.common.rpc.impl_kombu # RabbitMQ サーバーを指定 rabbit_host = 10.0.0.30 rabbit_port = 5672 # RabbitMQ サーバー認証用ID rabbit_userid = guest # RabbitMQ サーバー認証用IDのパスワード rabbit_password = password # MySQL DB の接続情報 [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_tenant_name = service admin_user = cinder admin_password = servicepassword
root@dlp ~(keystone)#
cinder-manage db sync root@dlp ~(keystone)# for service in api scheduler; do service cinder-$service restart done cinder-api stop/waiting cinder-api start/running, process 3728 cinder-scheduler stop/waiting cinder-scheduler start/running, process 3743 # 動作確認 root@dlp ~(keystone)# cinder-manage service list Binary Host Zone Status State Updated At cinder-scheduler dlp nova enabled :-) 2014-05-28 17:11:07 |
Sponsored Link |