OpenStack之存储cinder

一、 存储

1、DAS

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

2)直连式存储与服务器主机之间的连接通道通常采用SCSI连接,随着服务器CPU的处理能力越来越强,存储硬盘空间越来越大,阵列的硬盘数量越来越多,SCSI通道将会成为IO瓶颈;服务器主机SCSI ID资源有限,能够建立的SCSI通道连接有限。

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

4)U盘,移动硬盘都属于直连存储,直连存储在同一时间只能供一台主机使用

2、NAS

1)NAS存储也称为附加存储,就是存储设备通过标准的网络拓扑结构添加到一群计算机上。NAS是文件级的存储方法

2)NAS是即插即用的产品,NAS设备一般支持多计算机平台,用户通过网络支持协议可进入相同的文档

3)NAS 缺点是连接NAS的网络除了处理用户正常传输外,还使用网络进行数据备份和恢复,当并行访问量大时,会出现卡顿

3、SAN

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

2)SAS综合了DAS和NAS两种存储的优势,以及利用阵列,使n块磁盘同时提供存储,提高了数据访问的速度,适用于大型应用或数据库系统

3)SAN 缺点是由于使用光纤通道通信。所以成本昂贵

4、NAS与SAN 的主要区别体现在NAS的操作系统在NAS存储上,SAN的操作系统在客户端主机上

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

 1、块存储

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

优点:

1)通过Raid与LVM等手段,对数据提供了保护。

2)组合多块廉价硬盘,成为大容量逻辑盘,提高了容量。

3)写入数据的时候,由于是多块磁盘组合出来的逻辑盘,所以几块磁盘可以并行写入的,提升了读写效率。(raid0)

4)块存储多采用SAN架构组网,传输速率以及封装协议的原因,使得传输速度与读写速率得到提升。

缺点:

1)SAN架构需购买光纤卡,光纤交换机,造价成本高。

2)数据无法共享: 在服务器不做集群 的情况下,块存储裸盘映射给主机,在格式化后使用对主机来说相当于本地磁盘,那么此主机的本地磁盘不能给其他主机使用,无法共享数据

3)文件系统无法共享:不同的操作系统使用不同的文件系统,格式化后,不同文件系统间的数据是无法共享的,虽然其他主机可以挂载,但是数据不能识别

2、文件存储

典型设备 FTP 、NFS服务器

为了为了克服上述文件无法共享的问题,所以有了文件存储

文件存储拿一台服务器/笔记本,只要装上合适的操作系统与软件,就可以架设FTP与NFS服务了,架上该类服务之后的服务器,就是文件存储的一种了。

主机可以直接对文件存储进行文件的上传下载,与块存储不同,主机是不需要再对文件存储进行格式化的,因为文件管理功能已经由文件存储自己搞定了

优点

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

2)方便文件共享

缺点

读写速率低,传输速率慢

3、对象存储

典型设备:内置大容量硬盘的分布式服务器

1)区分data/metadata + OSD (Object-based Storage Device):

metadata(元数据服务器)里边主要负责存储对象 的属性即

对象的数据被分开存在哪些分布式服务器中

OSD(Object-based Storage Device)具体 存储数据的分布式

服务器,主要负责存储文件的数据部分

2)对象存储软件以及大容量硬盘

3)专门文件系统的文件服务器:对象存储软件是有专门的文件系统的,所以OSD对外又相当于文件服务器

三、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流程

 用户向cinder-api发送请求,cinder-api接收API请求后将消息放入消息队列,通过cinder-scheduler处理消息队列 里请求,选择合适节点创建volume,由cinder-volume管理volume,volume provider为volume提供存储空间

实验

创建cinder数据库

设置权限使所有客户端可以登录数据库

创建cinder用户

在Ctrl节点上

将admin role赋予Cinder user和service project

创建cinder和cinderv2服务项  :块存储服务要求2个服务项

创建块存储服务API的endpoints:

初始化数据库即向数据库填充数据

重启nova服务

启动cinder-api 、cinder-scheduler服务并设置开机启动

在cinder存储节点上

添加一块磁盘做pv

在控制节点上 检查存储服务

  • 43
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值