这篇文章主要为大家详细介绍了CephFs的操作方法,文中关于介绍的非常详细,零基础也能参考此文章,感兴趣的小伙伴们可以参考一下。
一、CephFs介绍
Ceph文件系统(CephFs)是与POSIX标准兼容的文件系统,能够提供对Ceph存储集群上的文件访问。宝石版本(10.2.0)是第一个包含稳定CephFS的Ceph版本。CephFS需要至少一个元数据服务器(元数据服务器- MDS)守护进程(ceph-mds)运行,MDS守护进程管理着与存储在CephFS上的文件相关的元数据,并且协调着对Ceph存储系统的访问。
说在前面的话,CephFS其实是为用户提供的一个文件系统,把Ceph这个软件把里面的空间,模拟一个文件系统的格式来提供服务,它有posix标准的文件系统的接口能够为Ceph集群存储文件,能够提供访问,目前在大多数公司用CephFS也是比较少的,也是由于性能原因,但是也有一些场景也会用的到。
对象存储的成本比起普通的文件存储还是较高,需要购买专门的对象存储软件以及大容量硬盘。如果对数据量要求不是海量,只是为了做文件共享的时候,直接用文件存储的形式好了,性价比高。
二,CephFS架构
底层是核心集群所依赖的,包括:
<强> osd (ceph-osd): CephFS的数据和元数据就存储在osd上
MDS (ceph-mds):元数据服务器、管理着CephFS的元数据
蒙斯(ceph-mon):监督管理着集群地图的主副本强>
因为这个地图里面维护着很多数据的信息索引,所有的数据都要从蒙斯中地图里获取去osd里找这个数据,其实获取这个数据的流程大概都是一样的,只不过它存在的是不同的库,不同的地图
Ceph存储集群的协议层是Ceph原生的librados库,与核心集群交互。
CephFS库层包括CephFS库libcephfs,工作在librados的顶层,代表着Ceph文件系统。最上层是能够访问Ceph文件系统的两类客户端,由于有这个libcephfs这个库,cephfs才能对外提供服务,因为底层是不能提供服务的,都得通过它这个第三方的lib库才能去提供访问,
元数据:文件的名字和属性信息叫元数据,和数据是隔离开的
<强> cephfs的数据是怎么访问的? 强>
首先客户端通过RPC协议到达MDS,从MDS获取到元数据的信息,客户端与雷达手表获取文件的一个IO操作,那么有了这两份信息,用户就能得到了想要的那份文件,MDS和雷达手表之间通过metadate》杂志上,这个杂志是记录文件写入日志的,这个也是存放到OSD当中,的MDS和雷达手表之间也是由交互的,因为所有最终的数据都会存到雷达手表当中