Ceph 文件系统 (CephFS)
存储池类型:`cephfs
CephFS 实现了一个符合 POSIX 标准的文件系统,它利用一个[Ceph](https://ceph.com)存储集群来存储其数据。由于 CephFS 是在 Ceph 的基础上构建的,因此它具有 Ceph 的大部分属性。这包括冗余性、可扩展性、自愈能力以及高可用性。
Tip
|
{pve} 可以管理Ceph设置(xref:chapter_pveceph),这使得配置CephFS存储更加容易。由于现代硬件提供了大量的处理能力和RAM,因此在同一节点上运行存储服务和VM是可能的,而不会造成显著的性能影响。 |
要使用CephFS存储插件,您必须通过添加我们的Ceph仓库来替换标准的Debian Ceph客户端。添加后,运行`apt update`,然后运行`apt dist-upgrade`,以便获取最新的包。
Warning
|
请确保没有配置其他的Ceph仓库。否则安装会失败,或者节点上会有混合的包版本,导致意外的行为。 |
配置
这个后端支持常见的存储属性`nodes`、disable
、content
,以及以下`cephfs`特定的属性:
- 文件系统名称
-
Ceph FS 的名称。
- 监控主机
-
监控守护进程地址列表。可选,只有当Ceph没有在 {pve} 集群上运行时才需要。
- 路径
-
本地挂载点。可选,默认为
/mnt/pve/<STORAGE_ID>/
。 - 用户名
-
Ceph 用户 ID。可选项,仅在 Ceph 不运行在 {pve} 集群上时需要,默认值为
admin
。 - 子目录
-
要挂载的CephFS子目录。可选,默认为`/`。
- 保险丝
-
通过FUSE访问CephFS,而不是内核客户端。可选,默认为`0`。
/etc/pve/storage.cfg
)cephfs: cephfs-external monhost 10.1.1.20 10.1.1.21 10.1.1.22 path /mnt/pve/cephfs-external content backup username admin fs-name cephfs
Note
|
如果没有禁用cephx,请不要忘记设置客户端的密钥文件。 |
认证
Note
|
如果Ceph被安装在{pve}集群上,那么在添加存储时,以下操作会自动完成。 |
如果您使用的是默认启用的`cephx`身份验证,那么您需要提供外部Ceph集群的密钥。
通过CLI配置存储,首先需要使包含秘密的文件可用。一种方法是直接从外部Ceph集群将文件复制到{pve}节点之一。以下示例将其复制到我们运行它的节点的`/root`目录:
# scp <external cephserver>:/etc/ceph/cephfs.secret /root/cephfs.secret
然后使用 pvesm
命令行工具来配置外部的RBD存储, 使用 --keyring
参数,该参数需要是你复制的密钥文件的路径。例如:
# pvesm add cephfs <name> --monhost "10.1.1.20 10.1.1.21 10.1.1.22" --content backup --keyring /root/cephfs.secret
通过GUI配置外部RBD存储时,您可以将密钥复制并粘贴到相应的字段中。
秘密仅仅是密钥本身,与`rbd`后端不同,后者还包含一个`[client.userid]`部分。
秘密将被存放在
# /etc/pve/priv/ceph/<STORAGE_ID>.secret
通过以下命令可以从Ceph集群(作为Ceph管理员)接收到一个秘密,其中`userid`是已配置为访问集群的客户端ID。有关Ceph用户管理的更多信息,请查阅Ceph文档。[cephusermgmt]
# ceph auth get-key client.userid > cephfs.secret
存储特性
cephfs 后端是一个遵循 POSIX 的文件系统,构建在 Ceph 集群之上。
Content types | Image formats | Shared | Snapshots | Clones |
---|---|---|---|---|
|
|
yes |
yes[1] |
no |
虽然当前没有已知的错误,但快照尚未保证稳定性,因为它们缺乏足够的测试。