openstack块存储服务基础:Linux LVM硬盘管理及LVM扩容
在Openstack中,有3个与存储相关组件:Swift——提供对象存储(object storage),Glance——提供虚机镜像(image)存储和管理,Cinder——提供块存储(block storage)。块存储服务基本概念:Cinder的核心功能是对卷的管理,允许对卷、卷的类型、快照进行处理。然而它并没有实现对块设备的管理和实际服务(提供逻辑卷),而是通过后端的统一存储接口来支持不同
在Openstack中,有3个与存储相关组件:Swift——提供对象存储(object storage),Glance——提供虚机镜像(image)存储和管理,Cinder——提供块存储(block storage)。
块存储服务基本概念:
Cinder的核心功能是对卷的管理,允许对卷、卷的类型、快照进行处理。然而它并没有实现对块设备的管理和实际服务(提供逻辑卷),而是通过后端的统一存储接口来支持不同块设备厂商的块存储服务,实现其驱动支持并于OpenStack进行整合。
cinder两个显著特点:
必须用户提出请求,服务才会进行响应。
用户可以使用自定义的方式实现半自动化服务。
简而言之,Cinder虚拟化块存储设备池,提供给用户自助服务的API用以请求和使用存储池中的资源,而Cinder本身并不能获取具体的存储形式或物理设备信息。
块存储服务架构讲解:
Auth Manage:负责Cinder的授权工作。
AMQP:高级消息队列协议,用于存储和传递Rest请求。
iSCSI:基于网络的小型计算机系统接口。
REST:表征状态转移(Representational State Transfer),定义了一种软件架构原则,它是一种针对网络应用的设计和开发方式。
CinderCLIent:Cinder的客户端软件。
块存储服务LVM技术:
LVM (Logical volume Manager):是逻辑卷管理的简称。它是Linux环境下对磁盘分区进行管理的一种机制。
工作原理:它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。
在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。
特点:就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。我们如果新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。
Cinder基本服务:
API Service:负责接受和处理Rest请求,并将请求放入消息队列中。
Scheduler Service:负责处理队列中的任务,并根据预先制定的调度策略(优先活跃节点)选择合适的存储节点来执行任务。
Volume Service:该服务运行在各个存储节点之上,管理存储空间,每一个存储节点都有一个Volume Service,构建一个庞大的存储资源池。Volume Service本身不实现存储功能,而由Cinder存储后端(Backend Drivers)来实现。
任务目标:对Cinder后端逻辑卷进行扩容
[root@xiandian ~]#source /etc/keystone/admin-openrc.sh
[root@xiandian ~]#openstack service list #生效环境变量,获取令牌
#1、使用cinder创建、管理逻辑卷lv及快照;2、对cinder后端逻辑卷进行扩容
[root@xiandian ~]# #检查cinder的组件的安装情况,以及配置文件
[root@xiandian ~]#openstack-service list | grep cinder
[root@xiandian ~]#openstack-service status | grep cinder
[root@xiandian ~]#vi /etc/cinder/cinder.conf
[root@xiandian ~]#vgs #查看卷组信息
[root@xiandian ~]#lvs #查看逻辑卷信息
[root@xiandian ~]# #在当前卷组cinder-volumes下创建一个逻辑卷
[root@xiandian ~]#cinder create --display-name myVolume7-1 1
[root@xiandian ~]# #查看当前逻辑卷
[root@xiandian ~]#cinder list
[root@xiandian ~]# #创建卷(云硬盘)的快照snapshot
[root@xiandian ~]#cinder snapshot-create --display-name myVolume7-1 cinder-volume-myVolume7-1
[root@xiandian ~]# #创建type标识的卷类型,创建一个名为“lvm”卷类型。
[root@xiandian ~]#cinder type-create lvm
[root@xiandian ~]# #查看现有的卷类型
[root@xiandian ~]#cinder type-list
[root@xiandian ~]# #创建一块带有“lvm”标识的云硬盘
[root@xiandian ~]#cinder create --display-name myVolume7-2 --volume-type lvm 1
#对cinder-volumes卷组进行扩容,扩10G
[root@xiandian ~]# #新建分区vda2,大小设置为10G,文件编号为Linux LVM,并将它扩容到cinder-volumes卷组里
[root@xiandian ~]#fdisk -l #查看磁盘分区表
[root@xiandian ~]#fdisk /dev/vda #使用fdisk创建分区,根据设备文件的绝对路径(/dev/vda)进入分区管理
n
l #选择逻辑分区,如果没有,则首先创建扩展分区,然后再添加逻辑分区(硬盘:最多四个分区P-P-P-P或P-P-P-E)
2 #分区号,/dev/vda2
t 8e #分区类型8e表示LVM分区
w #写入分区表
#重新读取分区表,在LVM的配置文件将vda2加入,让lvm驱动能够识别
[root@xiandian ~]#partprobe #重读分区表
[root@xiandian ~]#vi /etc/lvm/lvm.conf
#把vda2创建为一个物理卷,再把这个物理卷扩容到卷组cinder-volumes里面
[root@xiandian ~]#pvcreate /dev/vda2
[root@xiandian ~]# #查看当前物理卷列表
[root@xiandian ~]#pvs
[root@xiandian ~]#vgextend cinder-volumes /dev/vda2 #扩展已有VG的容量
[root@xiandian ~]# #重启cinder-volume子服务,使设置永久生效
[root@xiandian ~]#systemctl restart openstack-cinder-volume.service
[root@xiandian ~]#cinder create --display-name myVolume7-3 10
特别注意对/etc/lvm/lvm.conf的修改
把温柔藏进细节里 把努力融进生活里
更多推荐
所有评论(0)