集群状态报告MDSs behind on trimming
https://www.suse.com/support/kb/doc/?id=000019740
本文档 (000019740) 根据本文档末尾的 免责声明 提供。
环境
SUSE Enterprise Storage 6
现象
集群状态显示以下健康警告:
HEALTH_WARN MDSs behind on trimming
HEALTH_WARN x clients failing to respond to cache pressure
决议
将以下值增加/减少10%,然后观察集群,如果需要,再调整10%(根据结果,最多5次):
ceph config set mds mds_cache_trim_threshold xxK (最初应该增加)
ceph config set mds mds_cache_trim_decay_rate x.x (最初应该减少)
ceph config set mds mds_cache_memory_limit xxxxxxxxxx (最初应该增加)
ceph config set mds mds_recall_max_caps xxxx (最初应该增加)
ceph config set mds mds_recall_max_decay_rate x.xx (最初应该减少)
另请参见附加信息部分。
原因
“MDS behind on trimming”警告表明,在当前设置下,MDS 守护程序无法足够快地修剪其缓存。 这是为了防止 MDS 在缓存修剪上花费太多时间而受到限制。 但是,在某些缓存繁重的工作负载下,默认设置可能过于保守。
附加信息
在调整设置之前,可以使用以下命令获取当前/默认值:
ceph config show-with-defaults mds.<ins_mds> | egrep "mds_cache_trim_threshold|mds_cache_trim_decay_rate|mds_cache_memory_limit|mds_recall_max_caps|mds_recall_max_decay_rate"
请注意,根据解决方案部分设置的调整设置不是永久性的,一旦 MDS 重新启动,将恢复为默认设置。 特别是关于“mds_cache_memory_limit”,这取决于服务器上可用的内存总量。 如果可行,将当前设置加倍。
如果自定义设置修复了“MDS behind on trimming”警告并且没有观察到不利影响(担心 MDS 的高 CPU 负载和客户端元数据操作的减慢),请考虑设置调整后的 mds_cache_trim. * 永久设置。
另请参阅 TID 000019591:在 cephfs 挂载上运行“du”命令时,ceph -s 报告 1 个 MDSs report oversized cache。
要获取有关客户端能力使用的更多详细信息,以下命令可能很有用:
ceph tell mds.<ins_mds_server_name> client ls
ceph daemonperf mds.<ins_mds_server_name> (needs to be executed on the MDS host)
免责声明
此支持知识库为 SUSE 客户和对我们的产品和解决方案感兴趣的各方提供了一种有价值的工具,以获取信息、想法和相互学习。 材料仅供贵组织内的信息、个人或非商业用途,并按“原样”提供,不提供任何形式的保证。