4.4. 有关 Ceph 文件系统子卷的元数据信息
作为存储管理员,您可以设置、获取、列出和删除 Ceph 文件系统(CephFS)子卷的元数据信息。
自定义元数据供用户将其元数据存储在子卷中。用户可以将类似 xattr
的键值对存储在 Ceph 文件系统中。
本节描述了如何:
4.4.1. 在文件系统子卷中设置自定义元数据
您可以将文件系统子卷上的自定义元数据设置为键值对。
如果 key_name
已存在,则旧值将被新值替代。
KEY_NAME
和 VALUE
应该是 ASCII 字符的字符串,如 python 的 string.printable
中指定的。KEY_NAME
是区分大小写的,始终存储在小写中。
当快照子卷时,子卷上的自定义元数据不会被保留,因此在克隆子卷快照时也不会被保留。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 创建 Ceph 文件系统(CephFS)、CephFS 卷、子卷组和子卷。
流程
在 CephFS 子卷上设置元数据:
语法
ceph fs subvolume metadata set VOLUME_NAME SUBVOLUME_NAME KEY_NAME VALUE [--group_name SUBVOLUME_GROUP_NAME]
示例
[ceph: root@host01 /]# ceph fs subvolume metadata set cephfs sub0 test_meta cluster --group_name subgroup0
可选:使用
KEY_NAME
中的空格设置自定义元数据:示例
[ceph: root@host01 /]# ceph fs subvolume metadata set cephfs sub0 "test meta" cluster --group_name subgroup0
这会创建另一个元数据,其
KEY_NAME
作为 VALUE集群的
测试
元数据。可选: 您还可以使用不同的值设置相同的元数据:
示例
[ceph: root@host01 /]# ceph fs subvolume metadata set cephfs sub0 "test_meta" cluster2 --group_name subgroup0
4.4.2. 获取文件系统子卷的自定义元数据
您可以在卷中获取 Ceph 文件系统(CephFS)的自定义元数据、键值对、特定子卷组。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 已创建 CephFS 卷、子卷组和子卷。
- 在 CephFS 子卷中创建的自定义元数据。
流程
获取 CephFS 子卷的元数据:
语法
ceph fs subvolume metadata get VOLUME_NAME SUBVOLUME_NAME KEY_NAME [--group_name SUBVOLUME_GROUP_NAME]
示例
[ceph: root@host01 /]# ceph fs subvolume metadata get cephfs sub0 test_meta --group_name subgroup0 cluster
4.4.3. 列出文件系统子卷上的自定义元数据
您可以列出与卷中 Ceph 文件系统(CephFS)的密钥关联的自定义元数据,也可以选择性地在特定子卷组中列出与 Ceph 文件系统(CephFS)的密钥关联的自定义元数据。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 已创建 CephFS 卷、子卷组和子卷。
- 在 CephFS 子卷中创建的自定义元数据。
流程
列出 CephFS 子卷的元数据:
语法
ceph fs subvolume metadata ls VOLUME_NAME SUBVOLUME_NAME [--group_name SUBVOLUME_GROUP_NAME]
示例
[ceph: root@host01 /]# ceph fs subvolume metadata ls cephfs sub0 { "test_meta": "cluster" }
4.4.4. 从文件系统子卷中删除自定义元数据
您可以删除卷中 Ceph 文件系统(CephFS)的自定义元数据、键值对、特定子卷组。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 已创建 CephFS 卷、子卷组和子卷。
- 在 CephFS 子卷中创建的自定义元数据。
流程
删除 CephFS 子卷上的自定义元数据:
语法
ceph fs subvolume metadata rm VOLUME_NAME SUBVOLUME_NAME KEY_NAME [--group_name SUBVOLUME_GROUP_NAME]
示例
[ceph: root@host01 /]# ceph fs subvolume metadata rm cephfs sub0 test_meta --group_name subgroup0
列出元数据:
示例
[ceph: root@host01 /]# ceph fs subvolume metadata ls cephfs sub0 {}