• OpenStack-Storage(6)


     

    一、 DAS/NAS/SAN

    1、存储分类

          (1)内置存储

          (2)外挂存储

    • DAS (DirectAttached Storage):直连式存储
    • FAS (FabricAttached Storage):网络化存储

        NAS (NetworkAttached Storage):网络附加存储

        SAN (Storage Area Network):存储区域网络

     

    图1 存储分类

    2、DAS

      存储更多的依赖服务器主机操作系统进行数据的IO读写和存储维护管理,数据备份和恢复要求占用服务器主机资源(包括CPU、系统IO等)。

      SCSI通道将会成为IO瓶颈;服务器主机SCSI ID资源有限,能够建立的SCSI通道连接有限。

      升级扩展,只能由原设备厂商提供,往往受原设备厂商限制。

    3、NAS

      NAS是文件级的存储方法,采用NAS较多的功能是用来文档共享,NAS设备一般支持多计算机平台,用户通过网络支持协议可访问相同的文档,NAS应用非常灵活。

    4、SAN

      通过光纤通道交换机连接存储阵列和服务器主机,最后成为一个专用的存储网络。

      DAS与NAS的主要区别体现在操作系统在什么位置。

    二、 块存储/文件存储/对象存储

    1、块存储

      块存储:磁盘阵列,硬盘,系统识别出来的是硬盘,需要制作文件系统。

      优点:

    • 通过Raid与LVM等手段,对数据提供了保护。
    • 组合多块廉价硬盘,成为大容量逻辑盘,提高了容量。
    • 写入数据的时候,由于是多块磁盘组合出来的逻辑盘,所以几块磁盘可以并行写入的,提升了读写效率。
    • 块存储多采用SAN架构组网,传输速率以及封装协议的原因,使得传输速度与读写速率得到提升。

      缺点:

    • SAN架构需购买光纤卡,光纤交换机,造价成本高。
    • 数据无法共享。
    • 文件系统无法共享。

    2、文件存储

      文件存储:FTP、NFS服务器。

      优点:

    • 造价低:随便一台机器就可以了,另外普通以太网就可以,根本不需要专用的SAN网络,所以造价低。
    • 方便文件共享。

      缺点:

    • 读写速率低,传输速率慢

    3、对象存储

      对象存储:内置大容量硬盘的分布式服务器

      特点:

    • 区分data/metadata + OSD (Objectbased Storage Device)
    • 对象存储软件以及大容量硬盘
    • 专门文件系统的文件服务器

     

    图2 存储架构

    三、 OpenStack-Cinder

    图3 OpenStack-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”的数据库。

  • 相关阅读:
    Zookeeper C API 指南六(异步 API 介绍)
    libuv 中文编程指南(三)文件系统
    Zookeeper C API 指南二(监视(Wathes), 基本常量和结构体介绍)
    Zookeeper C API 指南五(同步 API 介绍)
    Zookeeper C API 指南七(Zookeeper 辅助 API 介绍)
    libuv 中文编程指南(四)网络
    Zookeeper C API 指南八(Zookeeper C API 应用示例)
    Zookeeper C API 指南四(C API 概览)
    Zookeeper C API 指南三(回调函数)
    jQuery Mobile 移动开发中的日期插件Mobiscroll 2.3 使用说明
  • 原文地址:https://www.cnblogs.com/chenli90/p/10350093.html
Copyright © 2020-2023  润新知