OpenStack塊存儲服務(cinder)爲虛擬機添加持久的存儲,塊存儲提供一個基礎設施爲了管理卷,以及和OpenStack計算服務交互,爲實例提供卷。此服務也會激活管理卷的快照和卷類型的功能。mysql
塊存儲服務一般包含下列組件:sql
使用模式三種: 數據庫
後端存儲:NFS、ISCSI、Glusterfs、ceph都支持後端
一)建立數據庫api
一、數據庫建立並建立實體服務bash
mysql -u root -p CREATE DATABASE cinder; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder'; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder';
二、建立cinder用戶架構
source /root/admin-openstack.sh openstack user create --domain default --password-prompt cinder
添加 admin 角色到 cinder 用戶上dom
openstack role add --project service --user cinder admin
三、建立 cinder 和 cinderv2 服務實體memcached
openstack service create --name cinder \ --description "OpenStack Block Storage" volume
openstack service create --name cinderv2 \ --description "OpenStack Block Storage" volumev2
四、建立塊設備存儲服務的 API 入口點性能
openstack endpoint create --region RegionOne \ volume public http://controller:8776/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne \ volume internal http://controller:8776/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
volume admin http:
//192
.168.137.11:8776
/v1/
%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 public http://controller:8776/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 internal http://conteoller:8776/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 admin http://controller:8776/v2/%\(tenant_id\)s
二)安裝配置cinder
2.1 安裝軟件包
# yum install openstack-cinder -y
2.2 編輯配置文件 /etc/cinder/cinder.conf
[database] connection = mysql+pymysql://cinder:redhat@controller/cinder
[[DEFAULT]] transport_url = rabbit://openstack:redhat@controller #消息隊列配置 auth_strategy = keystone my_ip = 10.0.0.101
[keystone_authtoken] #keystone配置 auth_uri = http://controller:5000 auth_url = http://controller:35357 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = cinder password = redhat
[oslo_concurrency] #配置鎖路徑 lock_path = /var/lib/cinder/tmp
2.3 同步數據庫
su -s /bin/sh -c "cinder-manage db sync" cinder
2.4 配置nova計算服務使用塊設備存儲
編輯文件 /etc/nova/nova.conf 並添加以下到其中:
[cinder] os_region_name = RegionOne
2.5 重啓nova計算API 服務
# systemctl restart openstack-nova-api.service
2.6 啓動cinder塊設備存儲服務,並將其配置爲開機自啓
#systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service #systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service