zoukankan      html  css  js  c++  java
  • [转]ceph三种存储接口--块设备-文件系统-对象存储

    [具体见 https://www.jianshu.com/p/2246464306b2]

     

     其他:

    问题0,数据的存储设备?

    数据的存储有3种形式,一种是直接以二进制数据的形式存储在裸设备(包括块设备)上,另外一种是以文件的形式经过文件系统管理进行存储。第三种就是以对象的形式进行对象存储。本篇讨论围绕着块设备形式的存储。

    问题1,什么是块设备?

    块设备将信息存储在固定大小的块中,每个块都能进行编址。块设备的基本特征是每个块都能区别于其它块而读写。块设备也是底层设备的抽象,块设备上未建立文件系统时,也称之为裸设备

    问题2,块设备与ceph的联系?

     client想要把数据存储到ceph的集群中时,他必须要有一个读写的目标,能够在本地知道这个目标。这里讲的是块存储,当然这个读写的目标要是一个块设备才行,需要将这个块设备与ceph关联起来,这个块设备通常成为rbd设备。

    问题3,rbd 是什么?

    rbd的全称应该是Rados Block Device。rbd是由ceph进行整理物理资源并且向外提供的RAODS形式的块设备,这样的块设备在客户端同其他类型的块设备使用方法相同。

    问题4,ceph是如何向外提供块设备存储的能力呢?

    ceph的组成部分为MON、MDS,OSD,其中OSD就是提供存储能力的节点。前端的存储请求通过crush规则进行映射OSD,最终分解到具体的OSD,然后发给对应的OSD上,最后的请求交给了OSD处理。

    问题5,OSD是如何存储数据的呢?

    OSD其实是建立在文件系统之上的,当你使用一个块设备进行部署OSD节点时,部署工具会默认格式化osd为xfs当然你也可以预先格式为想要的文件系统(ext4等)。数据到了OSD层次时,这时可以把这个请求变成一个文件的操作,最后交给了xfs文件系统,最终组织到了磁盘上。

    From <https://my.oschina.net/u/2460844/blog/531646>

  • 相关阅读:
    swift延时执行
    Swift3.0 — CocoaAsyncSocket客户端(Socket通信)
    SnapKit配置过程
    iOS App图标和启动画面尺寸
    mac升级到10.13 CocoaPods不能使用
    上传app到app store遇到 An error occurred uploading to the iTunes Store.(iTunes Store Operation Failed)的解决方法
    swift高斯模糊的自定义view
    Swift 实现部分圆角
    android 代码设置、打开wifi热点及热点的连接
    自定义android Dialog
  • 原文地址:https://www.cnblogs.com/yi-mu-xi/p/10365256.html
Copyright © 2011-2022 走看看