CephFS 常用命令以及问题分析

  • 时间:
  • 浏览:2

什儿 命令是用来查看 Ceph MDS 缓存的使用状况,默认的配置是使用 1G 内存作为缓存,不过这都不 有有五个多固定的上限,实际用量可能性突破配置。

正巧是我修改了 MDS cache 如果 无缘无故出现了什儿 告警,什么都一现在开始怀疑是是都不 可能性改大了 cache 造成了什儿 间题,但当我恢复了 cache 的默认值如果 ,间题依然占据 。于是在 Ceph 的邮件列表中搜索累似 于间题,发现该间题一般都不 inode_max 什儿 数值设置的严重不足大造成的,于是查就看一下当前的 inode 和 inode_max 信息:

相关的配置项主要有有有五个多:

mds_cache_sizemds_cache_memory_limitmds_cache_size 是老版本的配置参数,单位是 inode,目前的默认值是 0,表示这麼限制;mds_cache_memory_limit 是建议使用的值,单位是 byte,默认值为 1G。什么须要调整 cache 大小,当然是要改 mds_cache_memory_limit

inodes 远小于 inode_max,什么都这里的配置也这麼间题。继续搜索发现不要是 inodes 的数量会造成什儿 间题,可能性过期的 inodes 也是有影响的。

查看 MDS 组件状况,下面的例子输出的结果表示必须有五个多 MDS,要是 MDS 可能性占据 正常工作状况。

经过进一步的下发后,把缓存配置进一步分解为以下五个小间题。

mds_cache_reservation 的默认值是 5%,什么都造成了亲戚亲戚亲们就看的间题。

ceph daemon 是有有五个多很常用的命令,都都还能否用来查看 Ceph 的各个守护守护任务管理器的状况,什儿 help 命令都都还能否就看 MDS daemon 都支持那先 子命令:

该命令是用来查看 CephFS 的 session 连接。

累似 于将 mds_cache_memory_limit 配置为 100G(mds_cache_memory_limit = 32212254726),而实际运行时,就看的缓存用量却是有有五个多的:

查看 MDS 的性能指标。

官方文档有明确的说明,不推荐大于 64G,这上面的意味着 主要是 Ceph 的 bug,有什么都使用者发现当高于 64g 时,MDS 有较高的概率占用远高于实际配置的内存,目前该 bug 还这麼处理。

居然,inodes_expired 的数值可能性非常大了。进一步搜索发现,造成什儿 间题的主因是 cephfs 我太久 自动清理过期的 inodes,什么都积累时间久了,就容易无缘无故出现严重不足用的间题。处理妙招如下:

但有时 MDS 占用的内存又远远大于配置的缓存,什儿 意味着 是 mds_cache_memory_limit 我太久 说有有五个多固定死必须突破的上限,守护任务管理器运行时可能性会在特定状况下突破配置的上限,什么都建议我太久 说把什儿 值配置的和系统内存总量太接近。不然有可能性会占满整个服务器的内存资源。

最近公司的生产环境可能性现在开始使用 CephFS 作为文件系统存储,记录一下使用过程中遇到的间题,可能性许多常用的命令。

MDS 目前官方推荐的配置还是单活的,也要是说有有五个多集群内必须有五个多提供服务的 MDS,真是 Ceph MDS 性能很高,但毕竟是单点,再上加 MDS 运行的物理机上内存资源还是比较富裕的,自然想到通过使用内存作为缓存来提高 MDS 的性能。要是 MDS 的缓存配置项什么都,一时还真不选着应该用哪个选项,要是配置成多大为宜也拿不准。

真是差距不大,但为那先 无缘无故用必须配置的内存量呢?

意味着 在于什儿 参数:mds_cache_reservation,什儿 参数表示 MDS 预留一帕累托图内存,这麼具体的作用,要是为了留有余地。当 MDS 现在开始侵占这帕累托图内存时,系统会自动释放掉超过配额的那帕累托图。

什儿 命令是用来查看文件系统某个目录下不是有脏数据。