CEPH 文件系统简介
作者:互联网
Ceph 文件系统或CephFS是一个符合 POSIX 的文件系统,构建在 Ceph 的分布式对象存储RADOS之上。CephFS 致力于为各种应用程序(包括共享主目录、HPC 暂存空间和分布式工作流共享存储等传统用例)提供最先进的、多用途、高可用性和高性能文件存储。
CephFS 通过使用一些新颖的架构选择来实现这些目标。值得注意的是,文件元数据与文件数据存储在单独的 RADOS 池中,并通过可调整大小的元数据服务器集群或MDS提供服务,该集群可以扩展以支持更高吞吐量的元数据工作负载。文件系统的客户端可以直接访问 RADOS 以读取和写入文件数据块。出于这个原因,工作负载可能会随着底层 RADOS 对象存储的大小而线性扩展;也就是说,没有网关或代理为客户端调解数据 I/O。
对数据的访问是通过 MDS 集群来协调的,MDS 集群作为由客户端和 MDS 共同维护的分布式元数据缓存状态的权限。元数据的突变由每个 MDS 聚合成一系列有效的写入 RADOS 上的日志;MDS 没有在本地存储元数据状态。该模型允许在 POSIX 文件系统的上下文中客户端之间进行一致和快速的协作。
CephFS 因其新颖的设计和对文件系统研究的贡献而成为众多学术论文的主题。它是 Ceph 中最古老的存储接口,曾经是 RADOS 的主要用例。现在它与另外两个存储接口结合在一起,形成了一个现代的统一存储系统:RBD(Ceph Block Devices)和RGW(Ceph Object Storage Gateway)。
CEPHFS 入门
对于 Ceph 的大多数部署,设置 CephFS 文件系统非常简单:
ceph fs volume create <fs name>
创建池
一个 Ceph 文件系统至少需要两个 RADOS 池,一个用于数据,一个用于元数据。配置这些池时,您可能会考虑:
-
对元数据池使用更高的复制级别,因为此池中的任何数据丢失都可能导致整个文件系统无法访问。
-
对元数据池使用 SSD 等低延迟存储,因为这将直接影响观察到的客户端文件系统操作的延迟。
-
用于创建文件系统的数据池是“默认”数据池,是存储所有 inode 回溯信息的位置,用于硬链接管理和灾难恢复。因此,在 CephFS 中创建的所有 inode 在默认数据池中至少有一个对象。如果为文件系统计划了纠删码池,通常最好为默认数据池使用复制池,以提高更新回溯的小对象写入和读取性能。另外,可以添加另一个纠删码数据池(另请参阅纠删码),该数据池可用于目录和文件的整个层次结构(另请参阅文件布局)。
请参阅池以了解有关管理池的更多信息。例如,要使用默认设置创建两个用于文件系统的池,您可以运行以下命令:
$ ceph osd pool create cephfs_data
$ ceph osd pool create cephfs_metadata
通常,元数据池最多有几 GB 的数据。因此,通常建议使用较小的 PG 数。64 或 128 在实践中通常用于大型集群。
标签:Ceph,存储,简介,文件系统,CEPH,RADOS,CephFS,数据 来源: https://www.cnblogs.com/varden/p/15970637.html