openstack之cinder学习

1210阅读 0评论2020-06-29 可怜的猪头
分类:LINUX

https://blog.51cto.com/11555417/2345634

1)cinder-api

    接收api请求,调用cinder-volume

2)cindere-volume

    管理卷的服务,与volume provider协调工作,管理volume的生命周期,运行cinder-volum的服务的节点被称作为存储节点

3)cinder-scheduler

   scheduler通过调度算法选择最合适的存储节点创建卷

4)volume provider

数据的存储设备,为volume提供物理存储空间

5)Message Queue

cinder 各个子服务通过消息列队实现进程间通信和相互协作

6)database

存储cinder一些数据库,一般使用mysql

1)用户 向 API 发送请求

    2)api对请求做一些必要的处理后,向messaging(rabbitmq)发送信息,让scheduler创建一个volume

    3) scheduler从messaging获取到api发送的消息,然后执行调度算法,从若干存储节点选出节点A

    4) scheduler向messaging发送一条消息,让存储节点创建volume

    5)存储节点的volume 从messaging中获取到scheduler发给它的消息,然后通过driver在volume provider上创建volume

3、cinder-volume

openstack上对volume的操作,最后都是交给cinder-volume来完成的。

cinder-volume自身并不管理整整的存储设备,存储设备是由volume provider管理的,cinder-volume与volume provider一起实现volume生命周期管理,它通过dirver架构支持多种volume provider.

cinder-volume为这些volume provider 定义了统一的接口,volume provider只需要实现这些接口,就可以Driver的形式即插即用到openstack系统中。



默认是使用LVM 逻辑卷

cinder-volume会定期向cinder报告,从而让cinder确认得知每个存储节点的空闲容量信息


cinder对volume的生命周期管理最终都是通过cinder-volume完成的,包括volume的create,extend,attach,snapshot,delete等



上一篇:ifconfig eth0 inet6 add 6666::a6/96 报错 SIOCSIFADDR: Permission denied
下一篇:openstack之glance学习