OpenStack-Icehouse(nova-network)多节点块存储服务Cinder部署

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

须知:  

  根据上次基础环境部署,已经可以使用dashboard创建和管理虚拟机了。在生产环境中,所有虚拟机磁盘镜像是存在NAS存储架构中的,这样做保证了数据的可靠性,提高性能,可动态迁移。在早期的Openstack版本,用来卷存储的服务是nova-volume,是Nova的一部分,从F版本后,已经独立出来一个核心组件Cinder,首先你要知道Cinder本身不是来提供存储的,它是为后端的存储服务器,提供一个统一的Api来管理,它不去考虑后端存储是什么样的架构,它只需知道后端存储技术使用什么协议来工作的,这样存储技术有:LVM、NFS、IP-SAN、FC-SAN、分布式文件系统等,还包括硬件存储厂商NetApp、EMC、IBM都已经支持Openstack。通过这个管理接口,我们可以轻松的管理云硬盘。

下面就来部署下Cinder,后端存储技术采用LVM卷和iSCSI共享存储,也是Cinder默认的块存储。


#########################################################################################


Configure Controller Node


一、块存储Cinder服务安装与配置

1.安装块存储服务控制器

# yum install openstack-cinder

2.配置数据库

# openstack-config --set /etc/cinder/cinder.conf database connection mysql://cinder:CINDER_DBPASS@controller/cinder

3.创建数据库

# mysql -u root -p

mysql> CREATE DATABASEcinder;

mysql> GRANT ALLPRIVILEGES ON cinder.* TO 'cinder'@'localhost' \

IDENTIFIED BY'CINDER_DBPASS';

mysql> GRANT ALLPRIVILEGES ON cinder.* TO 'cinder'@'%' \

IDENTIFIED BY'CINDER_DBPASS';

mysql> exit;

4.导入数据库

# cinder-manage db sync

5.创建用户并添加到角色admin

# keystone user-create --name=cinder --pass=cinder --email=cinder@example.com

# keystone user-role-add --user=cinder --tenant=service --role=admin

6.配置token认证信息

1
2
3
4
5
6
7
8
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT auth_strategy keystone
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_uri http: //controller :5000
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_host controller
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_protocol http
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_port 35357
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken admin_user cinder
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken admin_tenant_name service
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken admin_password cinder

7.配置消息队列qpid

1
2
3
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT rpc_backend cinder.openstack.common.rpc.impl_qpid
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT qpid_hostname controller
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT glance_host controller

 7.1修改/etc/cinder/cinder.conf

 [DEFAULT]

 osapi_volume_listen=0.0.0.0

 state_path=/var/lib/cinder

 volumes_dir=/var/lib/cinder/volumes

8.创建cinder服务标识

# keystone service-create --name=cinder --type=volume --description="OpenStack Block Storage"

# keystone service-create --name=cinderv2 --type=volumev2 --description="OpenStack Block Storagev2"

9.创建Cinder API版本1和版本2接口URL

1
2
3
4
5
# keystone endpoint-create \
--service- id =$(keystone service-list |  awk  '/ volume / {print $2}' ) \
--publicurl=http: //controller :8776 /v1/ %\(tenant_id\)s\
--internalurl=http: //controller :8776 /v1/ %\(tenant_id\)s\
--adminurl=http: //controller :8776 /v1/ %\(tenant_id\)s
1
2
3
4
5
# keystone endpoint-create \
--service- id =$(keystone service-list |  awk  '/ volumev2 / {print $2}' ) \
--publicurl=http: //controller :8776 /v2/ %\(tenant_id\)s\
--internalurl=http: //controller :8776 /v2/ %\(tenant_id\)s\
--adminurl=http: //controller :8776 /v2/ %\(tenant_id\)s

10.重启服务并设置自启动

1
2
3
4
5
6
7
8
  service openstack-cinder-api start
  service openstack-cinder-scheduler start
  service openstack-cinder-volume start
  service tgtd start
  chkconfig openstack-cinder-volume on
  chkconfig tgtd on
  chkconfig openstack-cinder-api on
  chkconfig openstack-cinder-scheduler on


博客地址:http://lizhenliang.blog.51cto.com


Configure Storage Node


二、添加一台存储节点,并添加一块硬盘

1.ip地址设置为192.168.1.33

2.控制节点和存储节点添加对应host记录

192.168.1.33 storage

3.创建LVM卷

# pvcreate /dev/sdb

# vgcreate cinder-volumes/dev/sdb

4.安装块存储服务

# yum install openstack-cinder scsi-target-utils

5.配置token认证信息

1
2
3
4
5
6
7
8
9
10
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT auth_strategy keystone
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken 
auth_urihttp: //controller :5000
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_host controller
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_protocol http
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken auth_port 35357
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken admin_user cinder
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken 
admin_tenant_name service
openstack-config -- set  /etc/cinder/cinder .conf keystone_authtoken admin_password cinder

6.配置消息队列qpid

1
2
3
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT 
rpc_backendcinder.openstack.common.rpc.impl_qpid
openstack-config -- set  /etc/cinder/cinder .conf DEFAULT qpid_hostname controller

7.配置连接数据库

# openstack-config --set /etc/cinder/cinder.conf database \

connection mysql://cinder:CINDER_DBPASS@controller/cinder

8.配置glance服务位置

# openstack-config --set /etc/cinder/cinder.conf DEFAULT glance_host controller

9.配置iSCSI目标发现块存储,使用iSCSI协议时使用

# vi /etc/tgt/targets.conf

include /etc/cinder/volumes/*

10.启动服务并设置自启动

1
2
3
4
service openstack-cinder-volume start
service tgtd start
chkconfig openstack-cinder-volume on
chkconfig tgtd on

11.创建一个10G的卷

# source admin-openrc.sh

# cinder create--display-name myVolume 10

12.查看创建的卷,下面是我实验后的

wKiom1O_SiPSLJHuAAMhoH8Geb0662.jpg13.登录Horizon查看

配置完成后,dashboard上面会生成一个云硬盘选项

wKiom1O_S6yBXyq7AAKaJVbz-II600.jpg



本文转自 李振良OK 51CTO博客,原文链接:http://blog.51cto.com/lizhenliang/1436963,如需转载请自行联系原作者

相关实践学习
块存储快速入门
块存储是阿里云为云服务器ECS提供的块设备产品。通过体验挂载数据盘、分区格式化数据盘(Linux)、创建云盘快照、重新初始化数据盘、使用快照回滚云盘和卸载数据盘等功能,带您快速入门块存储。
相关文章
|
4月前
|
安全 API 网络安全
OpenStack的 网络服务(Neutron)
【8月更文挑战第23天】
283 10
|
3月前
|
存储 消息中间件 算法
深入解析OpenStack Cinder:块存储服务详解
本文介绍了OpenStack及其块存储服务Cinder。OpenStack是一个开源云计算管理平台,提供基础设施即服务(IaaS),核心服务包括计算、网络、存储等。Cinder主要用于为虚拟机提供持久性块存储,具备多种功能,如卷操作、备份、快照及与实例的交互等。此外,还详细介绍了Cinder的工作流程、命令行操作及不同存储插件的使用。
510 8
|
4月前
|
存储 固态存储 网络性能优化
OpenStack的块存储(Cinder)
【8月更文挑战第24天】
143 2
|
4月前
|
消息中间件 缓存 Shell
跟我一起来学OpenStack部署
跟我一起来学OpenStack部署
326 0
|
4月前
|
存储 API 调度
OpenStack核心组件Cinder
【8月更文挑战第4天】
169 9
|
5月前
|
存储 数据安全/隐私保护 Docker
Kolla-ansible部署openStack
Kolla-ansible部署openStack
448 11
|
7月前
|
存储 运维 Swift
openstack cinder、swift运维命令
Cinder是OpenStack的块存储服务,提供虚拟机块设备功能,包括卷的创建、挂载等。它由cinder-api、cinder-scheduler和cinder-volume三个组件构成,前者处理请求,中间者负责调度,后者执行卷管理。Swift是OpenStack的分布式对象存储服务,高可用、持久性,适用于大文件存储。Swift架构对称,无单点故障,提供类似文件系统的简单逻辑和高效读写。Cinder关注虚拟机层面的块存储,而Swift则提供对象存储服务。命令示例展示了如何使用cinder和openstack命令操作云硬盘和Swift容器。
160 0
|
7月前
|
Linux 网络安全 数据库
openstack 部署单节点
在CentOS 7系统上,配置了一台拥有4核CPU、8GB内存和300GB磁盘的服务器,安装了OpenStack Trian版本。安装完成后,获取了OpenStack管理控制台的登录凭证(admin用户和密码),可访问IP地址192.168.200.249/dashboard进行登录。如果遇到问题,可能需要重新安装以确保纯净环境。
333 0
|
4月前
|
存储 测试技术
阿里云块存储问题之测试不聚焦可能导致测试不稳定如何解决
阿里云块存储问题之测试不聚焦可能导致测试不稳定如何解决
49 3
|
5月前
|
存储 固态存储 大数据
阿里云服务器实例、块存储、带宽收费标准与云服务器最新活动价格参考
阿里云服务器价格通常包括云服务器实例价格、块存储价格和带宽价格组成,云服务器不同实例规格收费标准不一样,选择不同类型的块存储收费标准也不一样,选择不同的带宽收费标准也不一样。现在阿里云轻量应用服务器2核4G4M峰值带宽298元1年,云服务器2核4G5M固定带宽199元1年、2核8G1M固定带宽652.32元1年、4核8G1M固定带宽955.58元1年、4核16G10M带宽100G ESSD Entry云盘70元1个月。本文为大家整理了目前阿里云服务器实例、块存储、带宽收费标准与云服务器最新的活动价格情况,以供参考。
阿里云服务器实例、块存储、带宽收费标准与云服务器最新活动价格参考