文件存储-CephFS

文件存储
Ceph文件系统或CephFS是在Ceph的分布式对象存储RADOS之上构建的POSIX兼容文件系统。CephFS致力于为各种应用程序提供最新,多用途,高可用性和高性能的文件存储,包括传统用例(如共享主目录,HPC暂存空间和分布式工作流共享存储)。

CephFS通过使用一些新颖的架构选择来实现这些目标。值得注意的是,文件元数据与文件数据存储在单独的RADOS池中,并通过可调整大小的元数据服务器或MDS集群提供服务,该集群可扩展以支持更高吞吐量的元数据工作负载。文件系统的客户端可以直接访问RADOS来读写文件数据块。因此,工作负载可能会随着基础RADOS对象存储的大小线性扩展。也就是说,没有网关或代理为客户端中介数据I / O。

通过MDS集群协调对数据的访问,该集群充当客户端和MDS协作维护的分布式元数据缓存状态的授权机构。每个MDS都会将对元数据的突变汇总为对RADOS上日记的一系列有效写入。MDS不会在本地存储任何元数据状态。此模型允许在POSIX文件系统的上下文中客户端之间进行连贯且快速的协作。

优点:

  • 造价低,随便一台机器就可以了;
  • 方便文件共享;

缺点:

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

使用场景

  • 日志存储;
  • FTP、NFS;
  • 其它有目录结构的文件存储

常见命令如下:

#使用CephFS之前需要在集群中创建一个文件系统,并为其指定元数据和数据相关的存储池。
#创建元数据存储池
ceph osd pool create cephfs-metadata 32
#创建数据存储池
ceph osd pool create cephfs-data 32
#创建文件系统,并指定元数据和数据相关的存储池
ceph fs new cephfs cephfs-metadata cephfs-data
#查看文件系统状态
ceph fs status cephfs

#文件系统的挂载
#admin节点,获取admin账户的密钥值
ceph auth get-key client.admin
# 客户端,挂在文件系统
 mkdir /mnt/data/ 
 mount -t ceph 10.0.0.9:6789,10.0.0.10:6789,10.0.0.11:6789:/  /mnt/data/  -o name=admin,secret=AQCoW7pe2Mi+JRAAjx/62god2I1WTNV0MyoFQw==
 
#文件系统的删除
systemctl stop [email protected]  (每个节点)
ceph mds stat
ceph fs rm cephfs --yes-i-really-mean-it

你可能感兴趣的:(ceph,服务器,运维)