当前位置: 首页 > news >正文

OpenStack Cinder 架构

Cinder 是 OpenStack 的 块存储 (Block Storage) 服务,其核心功能是为虚拟机实例提供持久化的块存储设备(即云硬盘 Volume)。这些云硬盘可以被挂载到虚拟机实例上,就像给物理服务器插上一块新的硬盘一样,用于扩展实例的存储空间或持久化保存数据,即使实例本身被终止,数据也不会丢失。

1、架构

+---------------------------------------+
|           API 客户端                  |  (Horizon, Nova, CLI)
+-------------------+-------------------+|| REST API (cinder-api)|
+-------------------v-------------------+
|             cinder-api                |  (接收和路由API请求)
+-------------------+-------------------+|| AMQP (消息队列)|
+-------------------+-------------------+
|          cinder-scheduler             |  (卷创建调度决策)
+-------------------+-------------------+|| AMQP (消息队列)|
+-------------------+-------------------+
|           cinder-volume               |  (与存储后端交互)
+-------------------+-------------------+|| 驱动协议 (iSCSI, Fibre Channel, RBD, NFS, etc.)|
+---------+---------+---------+---------+
|  LVM    |  Ceph   |  NetApp |  EMC    |  (多种存储后端)
| Driver  | Driver  | Driver  | Driver  |  
+---------+---------+---------+---------+

2、核心组件/服务 (Services)

Cinder 也由多个协同工作的服务进程组成

2.1 cinder-api

API 端点和请求入口

  • 接收和处理所有外部的 RESTful API 请求(例如来自 Horizon dashboard、CLI 工具 openstack volume、或 Nova 服务的请求)。
  • 对用户请求进行认证、授权和参数验证。
  • 将合法的请求通过消息队列(如 RabbitMQ)路由给相应的后台服务(主要是 cinder-volume)。

2.2 cinder-scheduler

决定卷创建请求应该由哪个后端的哪个存储节点来处理。

  • 从消息队列中接收创建卷的请求。
  • 根据请求中的属性(如卷类型 volume_type、容量 size、可用域 availability_zone)和系统当前的状态,通过过滤器调度器(Filter Scheduler) 机制,从所有可用的存储后端中筛选出最合适的一个。
  • 其调度机制与 Nova Scheduler 非常相似,也使用过滤器(Filters) 和权重(Weighers)。
  • 常见过滤器:CapacityFilter(容量过滤),AvailabilityZoneFilter(可用域过滤),CapabilitiesFilter(根据卷类型中的额外规格 extra_specs 匹配后端的能力)。

配置示例cinder.conf

[scheduler]
enabled_filters = CapacityFilter,AvailabilityZoneFilter,CapabilitiesFilter
enabled_weighters = CapacityWeigher
capacity_weight_multiplier = 1.0  # 容量权重乘数

2.3 cinder-volume

存储节点上的核心工作进程,一个存储节点上运行一个 cinder-volume 实例。

  • 是真正与底层存储后端(如 LVM, Ceph, 商业阵列)交互、管理卷生命周期的组件。
  • 接收来自消息队列的操作指令(如创建、删除、挂载卷)。
  • 通过配置的 驱动程序(Driver) 调用底层存储系统的 API 或命令来执行具体操作。
  • 向 cinder-scheduler 报告当前后端的状态和容量信息

2.4 cinder-backup

备份服务。

  • 负责将卷(Volume)备份到其他存储系统中(例如,将一个基于 LVM 的卷备份到 Ceph Object Storage 或 Swift 中)。
  • 支持增量备份,可以有效节省备份空间和时间。
http://www.rkmt.cn/news/5260.html

相关文章:

  • HiMarket 正式开源,为企业落地开箱即用的 AI 开放平台
  • 如何统计DrawMeshInstancedIndirect绘制物体的Triangle数据
  • 汇编语言[王爽]-12 内中断
  • 汇编语言[王爽]-01 基础知识
  • 贪心外套计数
  • PostgreSQL中级认证,PG证书官网查询
  • LLaMA-Adapter - 详解
  • 基于yolo12进行深度学习的机动车车牌检测
  • journald 持久化 + 限额脚本
  • 深入解析:PAT乙级_1125 子串与子列_Python_AC解法_含疑难点
  • 东南大学数据库课程06-Database Design
  • 东南大学数据库课程07-Distributed Database Systems
  • Xdebug安装与PhpStorm调试配置
  • 快速搞定Dify+Chrome MCP:打造能操作网页的AI助手
  • Unstable Twin - TryHackMe
  • 完整教程:从 WildCard 野卡到 gptplus.plus:一次解决 OpenAI 支付难题的实战复盘,轻松搞定Gpt充值
  • BOE(京东方)IPC电竞嘉年华盛典圆满收官 第三届无畏杯总决赛引领电竞生态发展热潮
  • 95.费解的开关
  • Spotify 音乐ML练习数据集含158 个特征,11
  • 最新药物数据集下载:来自Drugs
  • 400小时大规模南昌方言数据集助力方言保护、AI语音识别技术开发与文化传承研究,覆盖多样化场景与说话者,专业采集高质量音频与文本标注,支持深度学习、语音模型训练、方言教学工具及本地化智能语音交互应用
  • 350+张高清晰度冲积土、黑土、煤渣土、红土四类土壤类型图像资源 ,专为计算机视觉算法训练与地球科学研究设计,支持精准农业土壤识别、地质勘探辅助分析及环境监测应用,提升土壤分类模型准确性
  • 阶跃星辰开源Step-Video-T2V模型:300亿参数打造高保真视频生成新标杆
  • 多多报销小程序系统详解
  • 第0章 矿卡EBAZ4203爆改zynq开发板介绍和VIVADO的安装
  • 无痕检测是否注册iMessage服务,iMessages数据筛选,iMessage蓝号检测协议
  • Thundbird无法获取自签证书。
  • Gitee推出SBOM扫描功能:为开源供应链安全构筑数字防火墙
  • mysql连表查询,轻松掌握多表数据关联技巧
  • Qt-捕获摄像头画面