第七章——安装和配置块存储服务Cinder
7.1、在控制节点上安装和配置Cinder
注意:以下操作均在控制节点
1.创建数据库
1)登录mysql
相关命令:mysql -u root -p
2)创建cinder数据库
相关命令: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)退出mysql
相关命令:exit
2.生效环境变量
相关命令:source admin-openrc.sh
3.创建keystone认证
1)创建cinder 用户
openstack user create
--domain default --password-prompt cinder
2)添加admin角色到cinder用户上
openstack role add
--project service --user cinder admin
3)创建cinder和cinderv2服务实体
openstack service create --name cinder \
--description "OpenStack Block Storage" volume
openstack service create --name cinderv2 \
--description "OpenStack Block Storage" volumev2
4) 块设备存储服务要求两个服务实体,创建块设备存储服务的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 \
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
7.2、在控制节点安装和配置Cinder
1.安装软件包
apt-get install
cinder-api cinder-scheduler python-cinderclient
2.编辑 /etc/cinder/cinder.conf文件在[DEFAULT]和[oslo_messaging_rabbit]部分,配置RabbitMQ消息队列访问
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
在[DEFAULT]和[keystone_authtoken]部分,配置认证服务访问
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = cinder
password = CINDER_PASS
在[DEFAULT]部分,配置my_ip来使用控制节点的管理接口的IP地址
[DEFAULT]
my_ip =10.0.0.11
在[oslo_concurrency]部分,配置锁路径
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
为帮助排错,在[DEFAULT]部分启用详细日志
[DEFAULT]
verbose = True
初始化块设备服务的数据库
/bin/sh -c "cinder-manage db sync" cinder
3.编辑文件/etc/nova/nova.conf并添加如下到其中
[cinder]
os_region_name = RegionOne
4.重启计算API服务
service nova-api restart
5.重启块设备存储服务
service
cinder-scheduler restart
service cinder-api
restart
6.删除安装包自动创建的SQLite数据库
rm -f /var/lib/cinder/cinder.sqlite
7.3、安装并配置一个存储节点
1.准备
2.为存储节点启用OpenStack库
apt-get install software-properties-common
add-apt-repository cloud-archive:liberty
3.在存储节点上升级包
apt-get update &&
apt-get dist-upgrade
4.在存储节点安装OpenStack客户端
apt-get install
python-openstackclient
7.4、为存储节点安装配置Cinder服务
在安装和配置块存储服务之前,必须准备好存储设备。
1.编辑/etc/lvm/lvm.conf
devices {
…
filter = [ "a/sdb1/", "r/.*/"]
2.安装软件包
apt-get install
cinder-volume python-mysqldb
3.编辑/etc/cinder/cinder.conf
[database]
connection =
mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
"a/sdb1/", "r/.*/"]
在[DEFAULT]和[oslo_messaging_rabbit]部分,配置RabbitMQ消息队列访问
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
在 [DEFAULT]和[keystone_authtoken]部分,配置认证服务访问
[DEFAULT]
auth_strategy = keystone
[keystone_authtoken]
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = cinder
password = CINDER_PASS
在 [DEFAULT]部分,配置my_ip选项
[DEFAULT]
my_ip =10.0.0.41
在[lvm]部分,配置LVM驱动,卷组cinder-volumes,iSCSI协议和正确的iSCSI服务
[lvm]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_group = cinder-volumes
iscsi_protocol = iscsi
iscsi_helper = tgtadm
在[DEFAULT]部分,启用LVM后端
[DEFAULT]
enabled_backends = lvm
在[DEFAULT]部分,配置镜像服务的位置
[DEFAULT]
glance_host = controller
在[oslo_concurrency]部分,配置锁路径
[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
为帮助排错,在[DEFAULT]部分启用详细日志
[DEFAULT]
verbose = True
重启块存储卷服务及其依赖的服务
service tgt restart
service cinder-volume restart
删除安装包自带的SQLite数据库文件
rm -f /var/lib/cinder/cinder.sqlite
7.5、验证安装
注意:以下操作均在控制节点
1.环境变量生效
相关命令:source
admin-openrc.sh
2.列出安装成功的服务组件
相关命令:cinder
service-list
3. 生效demo 租户,作为一个非管理员租户执行下面步骤
相关命令:source
demo-openrc.sh
4.创建一个1 GB volume
相关命令:cinder
create --display-name demo-volume6 1
5. 验证volume有效性
相关命令:cinder
list