《OpenStack实战指南》—— 2.1.4 块存储节点的安装

简介:

本节书摘来自华章出版社《OpenStack实战指南》一 书中的第2章,第2.1节,作者:黄 凯 毛伟杰 顾骏杰 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.1.4 块存储节点的安装

块存储节点负责提供volume(云硬盘)。Cinder服务可以在块存储上创建volume,以块存储的形式通过iSCSI提供给计算节点,计算节点使用底层的libvirt库把volume块存储挂载给虚拟机使用。
在控制节点上已经安装了cinder-api和cinder-scheduler,在真正的块存储节点上需要安装cinder-volume的服务,它调度相应程序,在节点上创建或删除volume,并更新维护volume在数据库中的状态。cinder-volume可以使用多种后端来创建块存储,最简单的方式是使用LVM(使用一个vg,然后在这个vg上创建lv作为volume)。我们在测试中也使用LVM的后端。
1.?系统环境准备
操作系统仍旧使用Ubuntu 12.04 LTS。网络节点需要一个网口,即network-2。这个网络除了和控制节点进行Rabbit MQ、MySQL数据通信之外,还和计算节点进行iSCSI的数据通信。在实际环境中,所有的虚拟机和云硬盘数据都通过这个网络,可能造成虚拟机读写volume的瓶颈问题,因此,可以考虑使用单独的网络和计算节点连接,必要时可以采取网口绑定或采用10Gbit/s网络。
1)进行网络IP设置,代码如下:

# cat /etc/network/interfaces
auto eth1
iface eth1 inet static
address 10.80.80.13
netmask 255.255.255.0

笔者这样设置是不能连接外网的,但由于需要安装软件,因此读者可以先用其他能连接Internet的网络代替。
2)重启网络,命令如下:

# /etc/init.d/networking restart

3)添加Havana的源,代码如下:

# apt-get install -y python-software-properties
# add-apt-repository cloud-archive:havana
# apt-get update -y
# apt-get upgrade -y
# apt-get dist-upgrade -y

更新完系统之后,可以根据实际情况重启服务器。
4)同步时间,代码如下:

# apt-get install -y ntp
# vi /etc/ntp.conf

编辑ntp.conf,在控制节点的IP中加入下面的一行,并且放在所有“server ntp服务器域名”的行之前,或者删除其他关于server ntp服务器的行。

server 10.80.80.10

2.?安装配置cinder-volume
因为使用LVM作为后端,所以必须安装lvm2包。安装命令如下:

# apt-get install lvm2

确保系统中有除了安装系统所在的盘之外的一块单独的硬盘或者使用RAID做的盘。可以使用命令fdisk-l查看。在笔者的环境中,系统安装在/dev/sda中,笔者有额外的一块硬盘/dev/sdb,用它创建一个vg,命名为cinder-volume,其代码如下:

# pvcreate /dev/sdb
# vgcreate cinder-volumes /dev/sdb

安装cinder-volume组件和相关的包,命令如下:

# apt-get -y install cinder-volume python-mysqldb

配置cinder.conf文件,这个文件和控制节点的cinder.conf文件大致相同,唯一不同的是需要改变rabbit_host参数和数据库的connection参数,把其中的IP都设置成控制节点的IP,而在控制节点上的配置文件中,这两个参数的IP可以是localhost。其代码如下:

# vi /etc/cinder/cinder.conf
[DEFAULT]
rootwrap_config = /etc/cinder/rootwrap.conf
api_paste_confg = /etc/cinder/api-paste.ini
iscsi_helper = tgtadm
volume_name_template = volume-%s
volume_group = cinder-volumes
debug = True
verbose = True
auth_strategy = keystone
state_path = /var/lib/cinder
lock_path = /var/lock/cinder
volumes_dir = /var/lib/cinder/volumes

rabbit_host = 10.80.80.10
rabbit_password = C1oud-open

[database]
connection = mysql://cinderuser:OPenstack@10.80.80.10/cinder

重启服务,命令如下:

# service cinder-volume restart

全部完成之后,可以在控制节点上运行命令cinder-manage service list,查看cinder-volume服务是否正常运行。

相关实践学习
块存储快速入门
块存储是阿里云为云服务器ECS提供的块设备产品。通过体验挂载数据盘、分区格式化数据盘(Linux)、创建云盘快照、重新初始化数据盘、使用快照回滚云盘和卸载数据盘等功能,带您快速入门块存储。
相关文章
|
5月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
236 0
|
5月前
|
云计算 数据安全/隐私保护 虚拟化
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
137 0
|
2月前
|
存储 安全 API
OpenStack的块存储卷管理快照 (Snapshot)
【8月更文挑战第26天】
75 13
|
2月前
|
存储 安全 API
OpenStack的块存储卷管理卷 (Volume)
【8月更文挑战第26天】
47 5
|
2月前
|
存储 API 网络性能优化
OpenStack的块存储卷管理
【8月更文挑战第25天】
48 4
|
2月前
|
存储 网络协议 Linux
如何安装OpenStack?
【8月更文挑战第21天】
248 1
|
1月前
|
存储 消息中间件 算法
深入解析OpenStack Cinder:块存储服务详解
本文介绍了OpenStack及其块存储服务Cinder。OpenStack是一个开源云计算管理平台,提供基础设施即服务(IaaS),核心服务包括计算、网络、存储等。Cinder主要用于为虚拟机提供持久性块存储,具备多种功能,如卷操作、备份、快照及与实例的交互等。此外,还详细介绍了Cinder的工作流程、命令行操作及不同存储插件的使用。
130 8
|
2月前
|
存储 固态存储 API
|
2月前
|
存储 数据管理 API
OpenStack的块存储卷管理快照与克隆
【8月更文挑战第27天】
28 4
|
2月前
|
存储 网络性能优化 块存储
OpenStack的块存储卷管理创建与配置
【8月更文挑战第27天】
53 3