Cinder简介
OpenStack 在Folsom 版本开始,将之前在 Nova 中的部分持久性块存储功能(Nova-Volume)分离了出来,独立为新的组件 Cinder。
cinder的核心功能是对卷的管理,允许对卷、卷的类型、卷的快照、卷备份进行处理。它为后端不同的存储设备提供了统一的接口,不同的块设备服务厂商在 cinder 中实现其驱动支持以与 OpenStack 进行整合。
Cinder逻辑架构
Cinder组件
1.Cinder Client封装Cinder提供的rest接口,以CLI形式供用户使用。
2.Cinder API对外提供rest API,对操作需求进行解析,对API进行路由寻找相应的处理方法。包含卷的增删改查(包括从源卷、镜像、快照创建)、快照增删改查、备份、volume type管理、挂载/卸载(Nova调用)等。
3.Cinder schuduler负责收集backend上报的容量、能力信息,根据设定的算法完成卷到指定cinder-volume的调度。
4.Cinder volume多节点部署,使用不同的配置文件、接入不同的backend设备,由各存储厂商插入driver代码与设备交互完成设备容量和能力信息收集、卷操作。
5.Cinder backup实现将卷的数据备份到其他存储介质(目前SWIFT/Ceph/TSM提供了驱动)。
6.SQL DB提供存储卷、快照、备份、service等数据,支持Mysql、PG、MSSQL等SQL数据库。