zoukankan      html  css  js  c++  java
  • 云计算openstack共享组件-cinder存储服务8

    一、cinder 介绍:
     
    理解 Block Storage
    操作系统获得存储空间的方式一般有两种:
    1. 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区、格式化、创建文件系统;或者直接使用裸硬盘存储数据(数据库)
    2. 通过 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 的逻辑架构图
     
    openstack endpoint list |grep cinder 
    cinder-api 对接收到的 HTTP API 请求会做如下处理:
    1、检查客户端传人的参数是否合法有效
    2、调用 cinder 其他子服务的处理客户端请求
    3、将 cinder 其他子服务返回的结果序列号并返回给客户端
    cinder-volume
    管理 volume 的服务,与 volume provider 协调工作,管理 volume 的生命周期。运行 cinder-volume 服务的节点被称作为存储节点。
     OpenStack 是分布式系统,其每个子服务都可以部署在任何地方,只要网络能够连通。无论是哪个节点,只要上面运行了 cinder-volume,它就是一个存储节点,当然,该节点上也可以运行其他 OpenStack服务。
     
    一般来讲,volume provider 是独立的。cinder-volume 使用 driver 与 volume provider 通信并协调工作。所以只需要将 driver 与 cinder-volume 放到一起就可以了。在 cinder-volume 的源代码目录下有很多 driver,支持不同的 volume provider。
    二、 Cinder 的设计思想:
    流程图:
    • 客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(cinder-api)发送请求:“帮我创建一个 volume”
       
    • API 对请求做一些必要处理后,向 Messaging(RabbitMQ)发送了一条消息:“让 Scheduler 创建一个 volume”
       
    • Scheduler(cinder-scheduler)从 Messaging 获取到 API 发给它的消息,然后执行调度算法,从若干计存储点中选出节点 A
       
    • Scheduler 向 Messaging 发送了一条消息:“让存储节点 A 创建这个 volume”
    查看服务-openstack volume service  list
    (1) 禁用服务
    openstack volume service set --disable HOST_NAME BINARY_NAME
    (2) 从数据库中删除节点
    cinder-manage service remove BINARY_NAME HOST_NAME
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    1.  
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
  • 相关阅读:
    百度“搜索设置”之等待页面加载完成的3中等待方式
    百度“搜索设置”之基于定位下拉框或者需要点击link才显示的下拉框,二次定位与多次定位实现的实际效果区别
    百度“搜索设置”之关于在页面定位某元素,而其中又参杂动态页面存在的问题解决方法
    兔展首页登录练习
    百度贴吧爬虫练习
    简述Session 、Cookie、cache 区别
    运行Shell脚本的几种方式解析
    (一)PHP简介
    road习题(二)
    road习题(一)
  • 原文地址:https://www.cnblogs.com/kittywerwer/p/11703761.html
Copyright © 2011-2022 走看看