首发于OpenStack

OpenStack-Cinder

什么是Cinder?

Cinder在OpenStack中为虚拟机实例提供volume的块存储服务,

可将卷挂载到实例上,作为虚拟机实例的本地磁盘使用,

一个volume卷可以同时挂载到多个实例上,但是同时只能又一个实例可以对卷进行写操作,其他的只能是只读的

Cinder支持的问卷系统类型

LVM/ISCSI

NFS

NetAPP NFS

Gluster

DELL Equall Logic


常用术语

Volum备份: 指的是Volum卷的备份存放在备份的设备中

Volum快照:指的是卷在某个时间点的状态

CInder API: 为Cinder请求提供统一风格的Rest API服务,用来接收Cinder的请求,是Cinder服务的入口

CInder Scheduler:主要负责调度为新建卷分配存储块结点

Cinder Volume:主要负责与存储的块设备交互,实现卷的创建,删除,修改等等操作

Cinder Backup:备份服务,主要负责通过驱动和后端的备份设备打交道,备份的后端比如Swift,saifu?等等


Cinder的架构

有用户或者Nova-compute提出创建卷的请求时,首先由CinderAPI接收请求,然后以消息队列的方式发送给CInder Scheduler来调用,

CInder Scheduler侦听到来自CInder API的消息队列后,到数据库中去查询当前存储结点的状态信息,并根据预定策略,选择卷的最佳volume service结点,然后将调度的结果发布出来给volume service来调用,

当volume service收到volume Scheduler的调度结果以后,会去查找volume provider,从而在特定的存储节点上创建相关的卷,然后将相关的结果返还给用户,同时将修改的数据写入到数据库中

发布于 2018-03-19 18:12