更新时间:2022-05-12 GMT+08:00
分享

安装配置并验证Cinder

创建Cinder数据库

在控制节点执行以下操作。

  1. 以root用户访问数据库。

    1
    mysql -u root -p
    

  2. 创建Cinder数据库,并授予对Cinder数据库的适当访问权限。

    1
    2
    3
    4
    CREATE DATABASE cinder;
    GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY '<PASSWORD>';
    GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY '<PASSWORD>';
    exit
    

    为方便理解,本文将涉及到的密码全部以“<PASSWORD>”代替,请用户根据实际情况进行修改。此处<PASSWORD>为cinder数据库的密码。

  3. 使用admin用户登录OpenStack 命令行,创建服务凭据和Cinder用户。

    1
    2
    source /etc/keystone/admin-openrc
    openstack user create --domain default --password-prompt cinder
    

  4. 将admin角色添加到Cinder用户。

    1
    openstack role add --project service --user cinder admin
    

  5. 创建cinderv2和cinderv3服务实体。

    1
    2
    openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
    openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3
    

    Cinder服务需要创建两个服务实体。

  6. 创建Block Storage服务API端点。

    1
    2
    3
    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
    

    1
    2
    3
    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
    

安装和配置Cinder

在控制节点执行以下操作。

  1. 安装软件包。

    1
    yum -y install openstack-cinder
    

  2. 编辑配置文件“/etc/cinder/cinder.conf”。

    1
    vim /etc/cinder/cinder.conf
    

    并且完成以下操作:

    1. 配置数据库访问,替换<PASSWORD>为合适的密码。
      1
      2
      [database]
      connection = mysql+pymysql://cinder:<PASSWORD>@controller/cinder
      
    2. 配置RabbitMQ消息队列访问,替换<PASSWORD>为合适的密码。
      1
      2
      [DEFAULT]
      transport_url = rabbit://openstack:<PASSWORD>@controller
      
    3. 配置身份服务访问,替换<PASSWORD>为cinder在Identity服务中为用户选择的密码。

      DEAULT模块:

      1
      2
      [DEFAULT]
      auth_strategy = keystone
      
      keystone_authtoken模块:
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      [keystone_authtoken]
      www_authenticate_uri = http://controller:5000
      auth_url = http://controller:5000
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = cinder
      password = <PASSWORD>
      
    4. 配置my_ip选项以使用控制器节点的管理接口IP地址。
      1
      2
      [DEFAULT]
      my_ip = 172.168.201.11
      
    5. 配置锁定路径。
      1
      2
      [oslo_concurrency]
      lock_path = /var/lib/cinder/tmp
      

  3. 填充块存储数据库。

    1
    su -s /bin/sh -c "cinder-manage db sync" cinder
    

配置计算使用块存储

在控制节点执行以下操作。

  1. 编辑“/etc/nova/nova.conf”配置文件。

    1
    vim /etc/nova/nova.conf
    

  2. 完成以下操作:

    1
    2
    [cinder]
    os_region_name = RegionOne
    

完成控制节点的安装

在控制节点执行以下操作。

  1. 重新启动Compute API服务。

    1
    systemctl restart openstack-nova-api.service
    

  2. 启动Block Storage服务并将其配置为在系统引导时启动。

    1
    2
    systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
    systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
    

  3. 验证控制节点的安装,state为up,即为状态正常。

    1
    openstack volume service list
    

集成Ceph块存储

当前版本不支持本地存储,需要集成Ceph实现存储功能。具体请参见《Ceph块存储 部署指南(CentOS 7.6&openEuler 20.03)》和《OpenStack&Ceph集成 部署指南》。

安装和配置存储节点

在存储节点执行以下操作。

  1. 安装软件包。

    1
    yum -y install openstack-cinder  python2-keystone
    

  2. 编辑配置文件“/etc/cinder/cinder.conf”。

    1
    vim /etc/cinder/cinder.conf
    

    并完成以下操作:

    1. 配置数据库访问。
      1
      2
      [database]
      connection = mysql+pymysql://cinder:<PASSWORD>@controller/cinder
      

      <PASSWORD>为Block Storage数据库选择的密码。

    2. 配置RabbitMQ 消息队列访问。
      1
      2
      [DEFAULT]
      transport_url = rabbit://openstack:<PASSWORD>@controller
      

      <PASSWORD>为openstack帐户选择的密码RabbitMQ。

    3. 配置身份服务访问。
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      [DEFAULT]
      auth_strategy = keystone
      [keystone_authtoken]
      www_authenticate_uri = http://controller:5000
      auth_url = http://controller:5000
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = cinder
      password = <PASSWORD>
      

      <PASSWORD>为Cinder在Identity服务中为用户选择的密码 。

    4. 配置my_ip为为存储节点上管理网络接口的IP地址。
      1
      2
      [DEFAULT]
      my_ip = 172.168.201.12
      
    5. 新增[lvm]配置,使用LVM驱动程序,cinder-volumes卷组,iSCSI协议和相应的iSCSI服务配置LVM后端。
      1
      2
      3
      4
      5
      [lvm]
      volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
      volume_group = cinder-volumes
      target_protocol = iscsi
      target_helper = lioadm
      
    6. 启用LVM后端。
      1
      2
      [DEFAULT]
      enabled_backends = lvm
      
    7. 配置Image服务API的位置。
      1
      2
      [DEFAULT]
      glance_api_servers = http://controller:9292
      
    8. 配置锁定路径。
      1
      2
      [oslo_concurrency]
      lock_path = /var/lib/cinder/tmp
      

完成安装

在存储节点系以下操作。

启动Block Storage卷服务(包括其依赖项)并将其配置为在系统引导时启动。

1
2
systemctl enable openstack-cinder-volume.service 
systemctl start openstack-cinder-volume.service 

验证

在控制节点执行以下操作。

  1. 使用admin用户登录OpenStack 命令行。

    1
    source /etc/keystone/admin-openrc
    

  2. 列出服务组件以验证每个进程的成功启动。

    1
    openstack volume service list
    

Cinder常用命令

命令行

功能描述

openstack volume create --size 1 volume1

创建存储卷

openstack volume list

显示存储卷列表

openstack volume delete VOLNAME-OR-ID

删除所选存储卷

openstack volume snapshot create --volume VOLNAME-OR-ID SNAPSHOT-VOLNAME

创建存储卷快照

openstack volume snapshot list

显示存储卷快照

nova volume-attach VM_ID VOLUME_ID /dev/vdb

虚拟机挂载卷

nova volume-detach VM_ID VOLUME_ID

虚拟机卸载卷

分享:

    相关文档

    相关产品

close