zoukankan      html  css  js  c++  java
  • openstack Q版部署-----Cinder云存储服务(10)

    一、cinder介绍

    一般 cinder-api 和 cinder-scheduler 安装在控制节点上, cinder-volume 安装在存储节点上。

    二、数据库配置

    # 在任意控制节点创建数据库
    mysql -uroot -p12345678
    
    
    CREATE DATABASE cinder;
    GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder_dbpass';
    GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder_dbpass';
    flush privileges;
    exit;
    

    三、 创建cinder-api

    认证信息的创建:

    # 在任意控制节点操作
    
    # 调用cinder服务需要认证信息,加载环境变量脚本即可
    source admin-openrc.sh 
    
    创建cinder用户:
    openstack user create --domain default --password=cinder_pass cinder #此处密码我设置了cinder_pass
    
    将cinder加入到admin组和service项目
    openstack role add --project service --user cinder admin
    

    创建cinder服务实体

    # cinder服务实体类型”volume”;
    # 创建cinder/cinder2两个服务实体
    openstack service create --name cinder --description "OpenStack Block Storage" volume
    openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
    

     查看创建情况:

    # 注意--region与初始化admin用户时生成的region一致;
    可以通过以下方式查。
    

     

    # api地址统一采用vip,如果public/internal/admin分别使用不同的vip,请注意区分;
    # cinder-api 服务类型为volume;
    # cinder-api后缀为用户project-id,可通过”openstack project list”查看
    

    # v1 public api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volume public http://10.1.80.60:8776/v1/%(tenant_id)s
    # v1 internal api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volume internal http://10.1.80.60:8776/v1/%(tenant_id)s
    # v1 admin api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volume admin http://10.1.80.60:8776/v1/%(tenant_id)s
    
    # v2 public api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volumev2 public http://10.1.80.60:8776/v2/%(tenant_id)s
    # v2 internal api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volumev2 internal http://10.1.80.60:8776/v2/%(tenant_id)s
    # v2 admin api
    [root@controller01 ~]# openstack endpoint create --region RegionOne volumev2 admin http://10.1.80.60:8776/v2/%(tenant_id)s
    

     查看创建情况:

     

    四、安装并配置cinder

    # 在全部控制节点安装cinder服务,以controller01节点为例
    [root@controller01 ~]# yum install openstack-cinder -y
    

     

     配置cinder.conf

    在全部控制节点操作,以controller01节点为例;
    注意”my_ip”参数,根据节点修改;
    注意cinder.conf文件的权限:root:cinder

    [database]
    connection = mysql+pymysql://cinder:cinder_dbpass@localhost/cinder  #配置数据库
    [DEFAULT]
    rpc_backend = rabbit     #消息队列配置
    [oslo_messaging_rabbit]
    rabbit_host = 10.1.80.60
    rabbit_userid = openstack
    rabbit_password = openstack2018
    [DEFAULT]
    auth_strategy = keystone  #keystone配置
    log_dir = /var/log/cinder
    [keystone_authtoken]
    auth_uri = http://10.1.80.60:5000
    auth_url = http://10.1.80.60:35357
    memcached_servers = 10.1.80.60:11211
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    project_name = service
    username = cinder
    password = cinder_pass
    [oslo_concurrency]  #配置锁路径
    lock_path = /var/lib/cinder/tmp
    glance_host = 10.1.80.60       #glance地址
    iscsi_ip_address = 10.1.80.110  #iscsi地址
    

      

    配置nova.conf

    # 在全部控制节点操作
    # 配置只涉及nova.conf的”[cinder]”字段;
    # 加入对应regiong
    [root@controller01 ~]# vim /etc/nova/nova.conf
    [cinder]
    os_region_name=RegionTest
    

      

    五、同步cinder数据库

    # 任意控制节点操作;
    # 忽略部分”deprecation”信息
    [root@controller01 ~]# su -s /bin/sh -c "cinder-manage db sync" cinder
    

    六、启动服务并验证

    # 全部控制节点操作;
    # 变更nova配置文件,首先需要重启nova服务
    [root@controller01 ~]# systemctl restart openstack-nova-api.service
    
    
    # 开机启动
    [root@controller01 ~]# systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
    
    # 启动并查看服务状态
    systemctl restart openstack-cinder-api.service
    systemctl restart openstack-cinder-scheduler.service
    systemctl status openstack-cinder-api.service
    systemctl status openstack-cinder-scheduler.service

    验证

    # 查看agent服务;
    # 或:cinder service-list
    [root@controller01 ~]# openstack volume service list


    七、cinder 存储节点配置

    1、安装并启动lvm2软件包

    yum install lvm2 -y
    #启动LVM的metadata服务并且设置该服务随系统启动
    systemctl enable lvm2-lvmetad.service
    systemctl start lvm2-lvmetad.service
    systemctl status lvm2-lvmetad.service
    

    2、添加一块硬盘

    创建LVM 物理卷 /dev/sdb

    pvcreate /dev/sdb

    创建 LVM 卷组 cinder-volumes

     vgcreate cinder-volumes /dev/sdb

    编辑``/etc/lvm/lvm.conf``文件并完成下面的操作:

    在devices部分,添加一个过滤器,只接受/dev/sdb设备,拒绝其他所有设备

    [root@linux-node2 ~]# vim /etc/lvm/lvm.conf
    filter = [ "a/sdb/", "r/.*/"]
    
    其中:a 表示同意, r 是不同意
    
    ---------------------------------------------------------------------------------------------------------
    上面的home分区没有做lvm,设备名是/dev/sda5,则/etc/lvm/lvm.conf可以如上设置。
    
    如果home分区做了lvm,“df -h”命令查看home分区的设备名比如是/dev/mapper/centos-home
    那么/etc/lvm/lvm.conf这里就要这样配置了:
    filter = [ "a|^/dev/mapper/centos-home$|", "r|.*/|" ]

    3、安装cinder组件软件包

    yum install centos-release-openstack-queens -y
    yum install openstack-cinder targetcli python-keystone -y
    

    修改配置文件

    [database]
    connection = mysql+pymysql://cinder:cinder_dbpass@10.1.80.60/cinder  #配置数据库
    [DEFAULT]
    rpc_backend = rabbit     #消息队列配置
    [oslo_messaging_rabbit]
    rabbit_host = 10.1.80.60
    rabbit_userid = openstack
    rabbit_password = openstack2018
    [DEFAULT]
    auth_strategy = keystone  #keystone配置
    log_dir = /var/log/cinder
    [keystone_authtoken]
    auth_uri = http://10.1.80.60:5000
    auth_url = http://10.1.80.60:35357
    memcached_servers = 10.1.80.60:11211
    auth_type = password
    project_domain_name = default
    user_domain_name = default
    project_name = service
    username = cinder
    password = cinder_pass
    [oslo_concurrency]  #配置锁路径
    lock_path = /var/lib/cinder/tmp
    glance_host = 10.1.80.60       #glance地址
    iscsi_ip_address = 10.1.80.110  #iscsi地址
    [lvm]
    volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver  # 驱动
    volume_group = cinder-volumes  # vg组名称
    iscsi_protocol = iscsi   # iSCSI协议
    iscsi_helper = lioadm    # iSCSI管理工具
    volume_backend_name=iSCSI-Storage  # 名称在 [DEFAULT] 区域,配置镜像服务 API 的位置
    [DEFAULT]
    enabled_backends = lvm
    [DEFAULT]
    glance_api_servers = http://10.1.80.60:9292
    

     启动块存储卷服务及其依赖的服务,并将其配置为随系统启动

    systemctl enable openstack-cinder-volume.service target.service
    
    systemctl restart openstack-cinder-volume.service target.service
    

      

    八、创建云盘

    1、创建一个云盘

    九、异常报错

     

  • 相关阅读:
    UML常见工具之Powerdesigner
    在webForm中WebRequest\WebClient\WebBrowser获取远程页面源码的三种方式(downmoon)
    忍不住了,我来说两句,从一道面试题说起
    《UML用户指南第二版》再次温读笔记(一)(downmoon)
    Database Project requires local SQL 2005 instance的解决方案(downmoon)
    JDBC Driver For SQL2000/2005/2008
    服务器更新dll后导致网站崩溃,重启iis也无效的一种解决方案(downmoon)
    白孩儿一个网上流传的故事[生活感悟]
    vs2008中js的语法提示及修正功能(downmoonn)
    Contoso 大学 2 – 实现基本的增删改查
  • 原文地址:https://www.cnblogs.com/jinyuanliu/p/10375200.html
Copyright © 2011-2022 走看看