这些命令在你的Ceph集群中的CephFS文件系统上运,注意,默认情况下仅允许使用一个文件系统,要启用创建多个文件系统,请使用 ceph fs flag set enable_multiple true命令
文件系统相关
ceph fs new
这条命令创建一个新的文件系统,文件系统名称和元数据池名称很清晰明了。指定的数据池是默认数据池,一旦设置便无法更改,每个文件系统都有自己的一组MDS守护程序分配给等级,因此请确保你有足够的备用守护程序来容纳新文件系统
ceh fs ls
列出已有的文件系统
ceph fs dump [epoch]
这将在给定的时期(默认值:当前)转储FSMap,其中包括所有文件系统设置,MDS守护程序及其所拥有的等级以及备用MDS守护程序的列表
ceph fs rm
[--yes-i-really-mean-it]
销毁CephFS文件系统,这会从FSMap擦除有关文件系统状态的信息,元数据池和数据池保持不变,必须分别销毁。
ceph fs get
获取有关命名文件系统的信息,包括设置和等级,这是来自fs dump命令的相同信息的子集
ceph fs set
更改文件系统上的设置,这些设置特定于命名文件系统,并且不影响其他文件系统
ceph fs add_data_pool
将数据池添加到文件系统,该池可用于文件布局,作为存储文件数据的备用位置。
ceph fs rm_data_pool
此命令从文件系统的数据池列表中删除指定的池,如果有任何文件具有已删除数据池的布局,则文件数据将不可用,无法删除默认数据池(在创建文件系统时创建的第一个数据池)
设置相关
ceph fs set
max_file_size
CephFS具有可配置的最大文件大小,默认情况下为1TB,如果希望在CephFS中存储大文件,则可以将此限制设置得更高,它是一个64位字段。 将max_file_size设置为0不会禁用该限制,它将仅限制客户端的权限为仅有权限创建空文件。
最大文件大小和性能
CephFS在追加文件或设置文件大小时会强制执行最大文件大小限制,它不影响以任何存储方式存储的任何内容。 当用户创建一个巨大的文件(不必向其写入任何数据)时,某些操作(例如删除)会导致MDS必须执行大量操作,检查是否存在可能存在的RADOS对象(根据文件大小)
max_file_size设置可防止用户创建艾字节大小的文件,导致MDS上的负载,因为它在进行统计或删除之类的操作期间会尝试枚举对象。
down掉集群
通过设置down 参数来关闭CephFS集群
ceph fs set
down true
恢复集群
ceph fs set
down false
这还将恢复max_mds的先前值,以某种方式关闭MDS守护程序,以便将日记刷新到元数据池,并停止所有客户端的I / O操作。
快速关闭群集以进行删除或灾难恢复
要允许快速删除文件系统(以进行测试)或快速关闭文件系统和MDS守护程序,可以使用fs fail命令,此命令设置文件系统标志,以防止备用文件在文件系统上被激活
ceph fs fail
也可以通过以下操作手动完成此过程
ceph fs set
joinable false
然后,操作员可能会使所有ranks失败,这会导致MDS守护进程作为备用程序重生,文件系统将处于降级的状态
ceph mds fail
:
一旦所有ranks都不活动,也可以删除文件系统或将其保留在该状态下以用于其他目的(也许是灾难恢复),要恢复集群,只需设置joinable标志
ceph fs set
joinable true
守护进程
大多数操作mds的命令都采用
: :
操作MDS守护程序的命令
ceph mds fail
将MDS守护进程标记为失,这相当于集群将执行这个操作,当MDS守护进程未能向mon发送MDS_beacon_grace second消息的时候。如果守护进程处于活动状态,并且有合适的备用服务器可用,则使用mds fail将强制故障转移到备用服务器。
如果MDS守护进程实际上仍在运行,那么使用MDS fail将导致守护进程重新启动。如果它处于活动状态,并且有备用程序可用,则“失败”的守护程序将作为备用程序返回
ceph tell mds.
command ...
将命令发送到MDS守护程序,使用mds.将命令发送到所有守护程序,使用ceph tell mds.来查看帮助文档
ceph mds repaired
获取有关Mon的已知的给定MDS的元数据
ceph mds repaired
将文件系统等级标记为已修复,顾名思义,此命令不会更改MDS,它操作已标记为已损坏的文件系统ranks
最低客户端版本
有时需要设置客户端的最低Ceph版本能够正常运行才能连接到CephFS群集。较早的客户端有时可能仍在运行带有可能导致客户端之间锁定问题的错误(由于功能发布)。 CephFS提供了一种设置最低客户端版本的机制
ceph fs set
min_compat_client
例如,仅允许Nautilus客户端使用
ceph fs set cephfs min_compat_client nautilus
运行旧版本的客户端将自动被驱逐
全局设置
ceph fs flag set
[ ]
设置全局CephFS标志(即不特定于特定文件系统),当前,唯一的标志设置是“ enable_multiple”,它允许具有多个CephFS文件系统。 有些标志要求您使用“ –yes-i-really-mean-it”或类似的字符串来提示以确认。在继续之前,请仔细考虑这些操作,因为他们是一些比较危险的操作
高级用法
这些命令在正常操作中不是必需的,在特殊情况下可以使用。不正确地使用这些命令可能会导致严重的问题,例如文件系统无法访问
ceph mds compat rm_compat # 删除兼容性的功能标志
ceph mds compat rm_incompat # 删除不兼容性的功能标志
ceph mds compat show # 显示MDS兼容性标志
ceph mds rmfailed # 从失败的集合中删除rank
ceph fs reset# 此命令将文件系统状态重置为默认名称(名称和池除外),非零rank保存在停止集