openstack-rocky安装部署-07安装cinder
先决条件
创建cinder数据库并授权
mysql -u root -p123 CREATE DATABASE cinder; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \ IDENTIFIED BY '123'; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \ IDENTIFIED BY '123';
创建用户cinder及角色添加
openstack user create --domain default --password-prompt cinder
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| domain_id | default |
| enabled | True |
| id | 6200baa9f8e742df830d65ceb98497e8 |
| name | cinder |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
openstack role add --project service --user cinder admin
#创建cinderv2和cinderv3服务实体 openstack service create --name cinderv2 \ --description "OpenStack Block Storage" volumev2 +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Block Storage | | enabled | True | | id | aef12a8927814ef5917fc17f4f4a7289 | | name | cinderv2 | | type | volumev2 | +-------------+----------------------------------+ openstack service create --name cinderv3 \ --description "OpenStack Block Storage" volumev3 +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Block Storage | | enabled | True | | id | fc7ce6553d7a43c78cd6559828e129e0 | | name | cinderv3 | | type | volumev3 | +-------------+----------------------------------+ #创建Block Storage服务API端点: openstack endpoint create --region RegionOne \ volumev2 public http://controller:8776/v2/%\(project_id\)s openstack endpoint create --region RegionOne \ volumev2 internal http://controller:8776/v2/%\(project_id\)s openstack endpoint create --region RegionOne \ volumev2 admin http://controller:8776/v2/%\(project_id\)s +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | c2f5abbc599f401cb31323a76f092f50 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | aef12a8927814ef5917fc17f4f4a7289 | | service_name | cinderv2 | | service_type | volumev2 | | url | http://controller:8776/v2/%(project_id)s | +--------------+------------------------------------------+ +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | bba5cf28d3bb481bad0da2c56e7c264e | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | aef12a8927814ef5917fc17f4f4a7289 | | service_name | cinderv2 | | service_type | volumev2 | | url | http://controller:8776/v2/%(project_id)s | +--------------+------------------------------------------+ +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | 3a97f2af78494e119e9aec4b0b4e3ff3 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | aef12a8927814ef5917fc17f4f4a7289 | | service_name | cinderv2 | | service_type | volumev2 | | url | http://controller:8776/v2/%(project_id)s | +--------------+------------------------------------------+ openstack endpoint create --region RegionOne \ volumev3 public http://controller:8776/v3/%\(project_id\)s openstack endpoint create --region RegionOne \ volumev3 internal http://controller:8776/v3/%\(project_id\)s openstack endpoint create --region RegionOne \ volumev3 admin http://controller:8776/v3/%\(project_id\)s +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | aa0726c44c8e47afbdbfcd0f56ba9832 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | fc7ce6553d7a43c78cd6559828e129e0 | | service_name | cinderv3 | | service_type | volumev3 | | url | http://controller:8776/v3/%(project_id)s | +--------------+------------------------------------------+ +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | 53d9512e45ee440385a2af3710e3f0a4 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | fc7ce6553d7a43c78cd6559828e129e0 | | service_name | cinderv3 | | service_type | volumev3 | | url | http://controller:8776/v3/%(project_id)s | +--------------+------------------------------------------+ +--------------+------------------------------------------+ | Field | Value | +--------------+------------------------------------------+ | enabled | True | | id | da05dbde5511415692231aaa8a3bc8b6 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | fc7ce6553d7a43c78cd6559828e129e0 | | service_name | cinderv3 | | service_type | volumev3 | | url | http://controller:8776/v3/%(project_id)s | +--------------+------------------------------------------+
安装
yum install openstack-cinder -y
配置
vi /etc/cinder/cinder.conf
[database] # ... connection = mysql+pymysql://cinder:123@controller/cinder [DEFAULT] # ... transport_url = rabbit://openstack:123@controller auth_strategy = keystone my_ip = 10.0.0.11 [keystone_authtoken] # ... auth_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_id = default user_domain_id = default project_name = service username = cinder password = 123 [oslo_concurrency] # ... lock_path = /var/lib/cinder/tmp
su -s /bin/sh -c "cinder-manage db sync" cinder Deprecated: Option "logdir" from group "DEFAULT" is deprecated. Use option "log-dir" from group "DEFAULT".
vi /etc/nova/nova.conf
[cinder] os_region_name = RegionOne
systemctl restart openstack-nova-api.service systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
安装配置存储节点(cinder-volume)
yum install lvm2 device-mapper-persistent-data systemctl enable lvm2-lvmetad.service systemctl start lvm2-lvmetad.service
pvcreate /dev/sdb vgcreate cinder-volumes /dev/sdb
只有实例才能访问块存储卷。但是,底层操作系统管理与卷关联的设备。默认情况下,LVM卷扫描工具会扫描 /dev目录以查找包含卷的块存储设备。如果项目在其卷上使用LVM,则扫描工具会检测这些卷并尝试对其进行缓存,这可能会导致底层操作系统和项目卷出现各种问题。您必须重新配置LVM以仅扫描包含cinder-volumes卷组的设备。编辑 /etc/lvm/lvm.conf文件并完成以下操作:
-
在该
devices部分中,添加一个接受/dev/sdb设备的过滤 器并拒绝所有其他设备 - 滤波器阵列中的每个项目开始于
a用于接受或r用于拒绝,并且包括用于所述装置名称的正则表达式。阵列必须r/.*/以拒绝任何剩余设备结束。您可以使用vgs -vvvv命令来测试过滤器
devices {
...
filter = [ "a/sdb/", "r/.*/"]
filter = [ "a/sda/", "a/sdb/", "r/.*/"]
}
安装
yum install openstack-cinder targetcli python-keystone -y
配置
vi /etc/cinder/cinder.conf
[database] # ... connection = mysql+pymysql://cinder:123@controller/cinder [DEFAULT] # ... transport_url = rabbit://openstack:123@controller auth_strategy = keystone my_ip = 10.1.1.13 glance_api_servers = http://controller:9292 enabled_backends = lvm [keystone_authtoken] # ... www_authenticate_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_id = default user_domain_id = default project_name = service username = cinder password = 123 [lvm] volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver volume_group = cinder-volumes iscsi_protocol = iscsi iscsi_helper = lioadm [oslo_concurrency] lock_path = /var/lib/cinder/tmp
完成安装
systemctl enable openstack-cinder-volume.service target.service systemctl start openstack-cinder-volume.service target.service
安装配置备份,暂不使用用swift
安装
yum install openstack-cinder -y
配置
vi /etc/cinder/cinder.conf
[DEFAULT] # ... backup_driver = cinder.backup.drivers.swift backup_swift_url = SWIFT_URL openstack catalog show object-store systemctl enable openstack-cinder-backup.service systemctl start openstack-cinder-backup.service
验证cinder操作
openstack volume service list

浙公网安备 33010602011771号