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

  

 

posted @ 2019-04-24 17:39  larlly  阅读(492)  评论(0)    收藏  举报