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、创建一个云盘

九、异常报错
openstack Q版部署-----Cinder云存储服务(10)的更多相关文章
- OpenStack Train版-13.安装块存储服务cinder(控制节点)
		
Cinder的核心功能是对卷的管理,允许对卷.卷的类型.卷的快照.卷备份进行处理.它为后端不同的存储设备提供给了统一的接口,不同的块设备服务厂商在Cinder中实现其驱动,可以被Openstack整合 ...
 - OpenStack Train版-14.安装块存储服务cinder(存储节点)
		
安装cindoer块存储服务节点(存储节点192.168.0.40)使用默认的LVM卷方法,之后改为ceph存储 安装LVM软件包 [root@cinder01 ~]# yum install lvm ...
 - openstack Q版部署-----网络服务(neutron)安装部署(7)
		
一.数据库配置(控制节点) 控制节点创建数据库: CREATE DATABASE neutron; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'lo ...
 - openstack Q版部署-----nova服务配置-控制节点(5)
		
一.创建数据库(控制节点) 创建数据库以及用户: CREATE DATABASE nova_api; CREATE DATABASE nova; CREATE DATABASE nova_cell0; ...
 - openstack Q版部署-----环境搭建(1)
		
浏览器建议全程使用火狐或者谷歌,不然VNC可能会有问题 一.环境准备 系统:centos7.2 x86_64 controller 2c+8g+40g 10.1.80.110 可以nat上网 comp ...
 - openstack Q版部署-----glance安装配置(4)
		
镜像服务(glance)使用户能够发现,注册和检索虚拟机镜像. 它提供了一个REST API,使您可以查询虚拟机镜像元数据并检索实际镜像. 您可以将通过镜像服务提供的虚拟机映像存储在各种位置,从简单的 ...
 - openstack Q版部署-----nova服务配置-计算节点(6)
		
一.服务安装(计算节点) 安装软件: yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf文件并设置如下内容: [DEFAULT] e ...
 - openstack Q版部署-----虚拟机创建(8)
		
一 .创建网络环境 环境变量生效一下 创建一个网络: openstack network create --share --external \ --provider-physical-network ...
 - openstack Q版部署-----keystone认证服务安装配置(3)
		
一.新建数据库及用户(控制节点) 登录数据库,创建db以及用户: CREATE DATABASE keystone; GRANT ALL PRIVILEGES ON keystone.* TO 'ke ...
 
随机推荐
- HTTP之Content-Type
			
前言:HTTP/1.1 HTTP/1.1 协议规定的 HTTP 请求方法有OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种. 其中 POST 一般用 ...
 - 【简单易用的傻瓜式图标设计工具】Logoist 3.1 for Mac
			
[简介] Logoist 是一款Mac上强大易用的傻瓜式图标设计制作工具,通过使用内置模板和预设效果,您可以立即创建高质量的图形内容和艺术作品.通过使用该应用程序,可用于制作图标LOGO. 一款用于创 ...
 - 2017-12-15python全栈9期第二天第七节之整除
			
#!/user/bin/python# -*- coding:utf-8 -*-a = 10b = 20print(a // b)print(b // a)
 - C++回顾day01---<const常量重点>
			
一:定义常整型数 const int a;(或者int const a;) 不涉及指针 不可改变值(也不可通过指针修改) 二:定义一个指向常整型数的指针 const int* c; 可改指针指向 ...
 - Linux学习笔记:【001】Linux内核分析
			
Linux内核 Linux内核是Linux系统构成中最核心的一个部分,是由5个子系统组成. 进程调度: 进程调度(SCHED)控制进程对CPU的访问.当需要选择下一个进程运行时,由调度程序选择最值得运 ...
 - bzoj千题计划322:bzoj2561: 最小生成树(最小割)
			
https://www.lydsy.com/JudgeOnline/problem.php?id=2561 考虑Kruscal算法求最小生成树的流程 如果 u和v之间的长为L的边能出现在最小生成树里, ...
 - tomcat cluster session同步时保存map数据遇到的问题
			
Tomcat Cluster官网:https://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.html(tomcat7.0) 场景: tomcat1 ...
 - 几本不错的数据仓库和Hadoop书籍
			
<<Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案>>, Matt Casters等著,初建军翻译<<Hadoop应用架构>> ...
 - Information Retrieval 倒排索引 学习笔记
			
一,问题描述 在Shakespeare文集(有很多文档Document)中,寻找哪个文档包含了单词“Brutus”和"Caesar",且不包含"Calpurnia&quo ...
 - JS 数组中对象去重 reduce 用法
			
对于数组对象,传统的去重方法无能为力,至于forEach().filter()等迭代方法也不好使:真正能做到优雅去重的,是ES5新增加的一个方法——reduce() 高手给的,完美方法 let log ...