13. 安装块存储服务cinder¶
0.介绍¶
# 块存储服务为实例提供块存储。
# 存储的分配和消耗是由块存储驱动器,或者多后端配置的驱动器决定的。
# 还有很多驱动程序可以用:NAS/SAN,NFS,LVM,Ceph等!
# 常用组件:
cinder-api:接收和响应外部有关块存储请求
cinder-volume:提供存储空间
cinder-scheduler:调度器,决定将要分配的空间由哪一个cinder-volume提供
cinder-backup:备份卷
## 1.数据库创库授权
## 2.在keystone创建系统用户关联角色
## 3.在keystone创建服务,注册api
## 4.安装相应服务软件包
## 5.修改相应服务的配置文件
## 6.同步数据库
## 7.启动服务
1.数据库创库授权¶
#controller
#1.登录
mysql
#2.创库
CREATE DATABASE cinder;
#3.授权
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'CINDER_DBPASS';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'CINDER_DBPASS';
#4.退出
exit
2.在keystone创建系统用户关联角色¶
#在keystone创建系统用户(glance,nova,neutron,cinder)关联角色
#1.创建用户cinder
openstack user create --domain default --password CINDER_PASS cinder
#2.关联用户和角色
openstack role add --project service --user cinder admin
3.在keystone创建服务,注册api¶
#1.创建服务
openstack service create --name cinder \
--description "OpenStack Block Storage" volume
openstack service create --name cinderv2 \
--description "OpenStack Block Storage" volumev2
#2.注册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://controller: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://controller:8776/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne \
volumev2 admin http://controller:8776/v2/%\(tenant_id\)s
4.安装相应服务软件包¶
yum install openstack-cinder -y
5.修改相应服务的配置文件¶
1. cinder.conf¶
#1.备份
cp /etc/cinder/cinder.conf{,.bak}
#2.去注释
grep -Ev '^$|#' /etc/cinder/cinder.conf.bak >/etc/cinder/cinder.conf
#3.修改
openstack-config --set /etc/cinder/cinder.conf DEFAULT rpc_backend rabbit
openstack-config --set /etc/cinder/cinder.conf DEFAULT auth_strategy keystone
#这里改成自己的IP!!!
openstack-config --set /etc/cinder/cinder.conf DEFAULT my_ip 192.168.178.11
openstack-config --set /etc/cinder/cinder.conf database connection mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_uri http://controller:5000
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_url http://controller:35357
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken memcached_servers controller:11211
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_type password
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_domain_name default
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken user_domain_name default
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_name service
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken username cinder
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken password CINDER_PASS
openstack-config --set /etc/cinder/cinder.conf oslo_concurrency lock_path /var/lib/cinder/tmp
openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_host controller
openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_userid openstack
openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_password RABBIT_PASS
#4.md5校验
md5sum /etc/cinder/cinder.conf
#5.查看
cat -n /etc/cinder/cinder.conf
[root@controller ~]# #4.md5校验
[root@controller ~]# md5sum /etc/cinder/cinder.conf
aefd30a941916a8b8e51353f343fa263 /etc/cinder/cinder.conf
[root@controller ~]#
[root@controller ~]# #5.查看
[root@controller ~]# cat -n /etc/cinder/cinder.conf
1 [DEFAULT]
2 rpc_backend = rabbit
3 auth_strategy = keystone
4 my_ip = 192.168.178.11
5 [BACKEND]
6 [BRCD_FABRIC_EXAMPLE]
7 [CISCO_FABRIC_EXAMPLE]
8 [COORDINATION]
9 [FC-ZONE-MANAGER]
10 [KEYMGR]
11 [cors]
12 [cors.subdomain]
13 [database]
14 connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
15 [keystone_authtoken]
16 auth_uri = http://controller:5000
17 auth_url = http://controller:35357
18 memcached_servers = controller:11211
19 auth_type = password
20 project_domain_name = default
21 user_domain_name = default
22 project_name = service
23 username = cinder
24 password = CINDER_PASS
25 [matchmaker_redis]
26 [oslo_concurrency]
27 lock_path = /var/lib/cinder/tmp
28 [oslo_messaging_amqp]
29 [oslo_messaging_notifications]
30 [oslo_messaging_rabbit]
31 rabbit_host = controller
32 rabbit_userid = openstack
33 rabbit_password = RABBIT_PASS
34 [oslo_middleware]
35 [oslo_policy]
36 [oslo_reports]
37 [oslo_versionedobjects]
38 [ssl]
2. nova.conf¶
# 添加cinder相关参数!
openstack-config --set /etc/nova/nova.conf cinder os_region_name RegionOne
6.同步数据库¶
su -s /bin/sh -c "cinder-manage db sync" cinder
#验证
mysql cinder -e "show tables;"
7.启动服务¶
#1.重启nova服务
systemctl restart openstack-nova-api.service
#2.启动cinder服务
systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
8. 检查¶
cinder service-list
[root@controller ~]# cinder service-list
+------------------+------------+------+---------+-------+------------+-----------------+
| Binary | Host | Zone | Status | State | Updated_at | Disabled Reason |
+------------------+------------+------+---------+-------+------------+-----------------+
| cinder-scheduler | controller | nova | enabled | up | - | - |
+------------------+------------+------+---------+-------+------------+-----------------+
最后更新:
2022-02-20 04:00:12