OpenStack----cinder 块存储服务理论部分

前言:

本篇博客为OpenStack—cinder组件基础理论,之后会持续更新~~

一、cinder块存储服务器简介

  • cinder是openstack中提供块存储服务的组件,它主要是为openstack中的实例提供持久的存储、块存储提供一个基础设施,用于管理卷以及和OpenStack计算服务交互,为实例提供卷、快照、卷类型等功能

二、cinder 主要组件及功能

  • ① Cinder-api

    用来接收API请求,并将其路由到Cinder-Volume执行

  • ② Cinder-Volume

    用来与块存储服务和Cinder-Schenduler 进程直接交互。也可以与通过一个消息队列进行交互。

    Cinder-Volume服务响应到块存储服务的都刺蛾请求来维持状态,也可以和多种存储提供者在驱动架构下进行交互。

    非常容易扩展,是真正执行存储任务的。

  • ③ Cinder-Schenduler

    负责调度资源

    守护进程会选择最优存储节点来创建卷,其工作机制与Nova-Schenduler类似。

    当创建卷时,Cinder-Schenduler根据存储节点的资源使用情况选择一个最合适的节点来创建卷。

  • ④ Cinder-Backup

    守护进程,提供任何种类备份卷到一个备份存储提供者。同时与多钟存储提供者在驱动架构下进行交互。

  • ⑤ 消息队列

    消息队列是在块存储的进程之间路由信息。各个子服务通过消息队列实现进程通信和相互协作。

三、cinder 模块架构

3.1 cinder模块架构图

在这里插入图片描述

3.2 cinder工作流程简述
  • ① 用户向Cinder-API发送创建卷请求:“帮我创建一个卷”
  • ② API对请求做一些必要处理后,向消息队列发送一条消息:“让Cinder-Schenduler创建一个卷”。
  • ③ Cinder-Schenduler 从消息队列获取到消息,然后执行调度算法,从若干存储节点中选出节点A
  • ④ Cinder-Schenduler向消息队列发送一条消息:“让存储节点A 创建这个卷”
  • ⑤ 存储结点A 的Cinder-Volume 从消息队列中获取到消息,然后通过卷提供者的驱动创建卷

四、cinder常用命令

4.1 查询类
查询卷类型:cinder type-list
查询卷类型的扩展规格:cinder extra-specs-list
查询云硬盘:cinder list
查看云硬盘具体信息:cinder show <volume_name>
查询所有备份:cinder backup-list
查询所有服务:cinder service-list
查询所有扩展:cinder list-extensions
查询所有transfer:cinder transfer-list
4.2 创建类
创建卷类型:cider type-create rbd
卷类型扩展规格:cinder type-key rbd set volume_backend_name=rbd-1
创建卷:cinder create 2 --name disk-01 --volume-type rbd
创建volume:cinder create <size> --dispaly-name --volume-type
创建快照:cinder snapshot-create <volume> --display-name
创建备份:cinder backup-create <volume> --display-name
创建qos:cinder qos-create <name> <key=value>
创建传输:cinder transfer-create <volume> --display-name
4.3 帮助
cinder help subcommand
4.4 显示详情类
显示volume详情:cinder show <volume>
显示volume下元数据:cinder metadata-show <volume>
显示备份详情:cinder backup-show <backup>
显示qos详情:cinder qos-show <qos>
显示快照详情:cinder snapshot-show <snapshot>
显示快照元数据详情:cinder transfer-show <transfer>
显示一个租户下的quota详情:cinder quota-show <tenant_id>
4.5 删除类
删除volume:cinder delete <volume>
强制删除volume:cinder force-delete <volume>
删除备份:cinder backup-delete <backup>
删除qos:cinder qos-delete <qos_specs> --force <true|false>
删除租户下的quota:cinder quota-delete <tenant_id>
删除快照:cinder snapshot-delete <snapshot>
删除类型:cinder type-delete <id>
删除传输:cinder transfer-delete <transfer>
4.6 分页浏览类
列出所有volumes:cinder list
显示volume详情:cinder show <volume>
迁移:cinder migrate [force-hos-copy <True| False>] <volume><host>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章