• 第 6 章 Cinder


    理解 Block Storage

    操作系统获得存储空间的方式一般有两种:

    • 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区、格式化、创建文件系统;

    或者直接使用裸硬盘存储数据(数据库)

    • 通过 NFS、CIFS 等 协议,mount 远程的文件系统

     

    第一种裸硬盘的方式叫做 Block Storage(块存储),每个裸硬盘通常也称作 Volume(卷)

    第二种叫做文件系统存储。NAS 和 NFS 服务器,以及各种分布式文件系统提供的都是这种存储。

     

    理解 Block Storage Service

    Block Storage Servicet 提供对 volume 从创建到删除整个生命周期的管理。

    从 instance 的角度看,挂载的每一个 Volume 都是一块硬盘。

    OpenStack 提供 Block Storage Service 的是 Cinder,

    其具体功能是:

    1、提供 REST API 使用户能够查询和管理 volume、volume snapshot 以及 volume type

    2、提供 scheduler 调度 volume 创建请求,合理优化存储资源的分配

    3、通过 driver 架构支持多种 back-end(后端)存储方式,包括 LVM,NFS,Ceph 和其他诸如 EMC、IBM 等商业存储产品和方案

     

     

    Cinder 架构

    下图是 cinder 的逻辑架构图:

    Cinder 包含如下几个组件:

    cinder-api

      接收 API 请求,调用 cinder-volume 。

    cinder-volume

      管理 volume 的服务,与 volume provider 协调工作,管理 volume 的生命周期。

      运行 cinder-volume 服务的节点被称作为存储节点。

    cinder-scheduler

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

    volume provider

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

      cinder-volume 支持多种 volume provider,每种 volume provider 通过自己的 driver 与cinder-volume 协调工作。

    Message Queue

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

      因为有了消息队列,子服务之间实现了解耦,这种松散的结构也是分布式系统的重要特征。

    Database Cinder

      有一些数据需要存放到数据库中,一般使用 MySQL。

      数据库是安装在控制节点上的,比如在我们的实验环境中,可以访问名称为“cinder”的数据库。

     

    物理部署方案

     

    Cinder 的服务会部署在两类节点上,控制节点和存储节点。

    控制节点 devstack-controller

    cinder-api 和 cinder-scheduler 部署在控制节点上

    cinder-volume 应该部署在存储节点上,所以它也是一个存储节点。也可以用一个专门的节点来运行 cinder-volume。

     

    RabbitMQ 和 MySQL 通常放在控制节点上。

    可以用 cinder service-list 查看 cinder-* 子服务都分布在哪些节点上

    volume provider 是独立的。

    cinder-volume 使用 driver 与 volume provider 通信并协调工作。

    所以只需要将 driver 与 cinder-volume 放到一起就可以了。

    在 cinder-volume 的源代码目录下有很多 driver,支持不同的 volume provider。

    -------------------------------------------------------引用来自--------------------------------------------------------------------------

    https://www.cnblogs.com/CloudMan6/p/5573159.html

    https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587772&idx=1&sn=954e666642745bd056988e1d18650ba3&chksm=8d308125ba47083304deed6d63c06ec8b645fee60f319b6885d496449bd4bcbcda36bd343735&scene=21#wechat_redirect

  • 相关阅读:
    mysql基本操作
    http基础
    react进阶第一讲jsx
    react进阶第二讲——component
    WC2020游记
    数据库实验小结 Resource Manager
    latex 常用小结
    编程之美2013资格赛 水结
    百度电影推荐系统比赛 小结 ——记我的初步推荐算法实践
    10.10作业
  • 原文地址:https://www.cnblogs.com/gsophy/p/11060055.html
Copyright © 2020-2023  润新知