mds0: Client ts-100-20.pttest.com failing to respond to capability release(client_id: 99180808)
CephFS 用戶端收到了 MDS 發出的能力( capabilities ) ,它就像鎖。有時候,比如一個用戶端需要通路權, MDS 就會讓别的用戶端釋放它們的能力,如果有用戶端沒響應、或者有缺陷,它就有可能沒及時釋放、或者根本不釋放。如果某個用戶端的響應時間超過了 mds_revoke_cap_timeout (預設為 60s ),這條消息就會出現。
#經查詢導緻次問題原因如下:
1:首先官方個别文檔說這是個bug ,新版本中會修複此類問題;
2:系統核心版本較低,需要更新系統核心;
3:mds_cache_size 參數設定較小;
4:挂載cephfs空間的伺服器網絡不穩定;
解決辦法:
1:修改叢集逾時配置:
檢視叢集現配置參數:
ceph --admin-daemon /var/run/ceph/ceph-mds.ceph-6-11.asok config show |grep revoke
"mds_revoke_cap_timeout": "60",
2:修改逾時時間 到180 秒
ceph --admin-daemon /var/run/ceph/ceph-mds.ceph-6-12.asok config set mds_revoke_cap_timeout 180
3:再次驗證,修改結果。
ceph --admin-daemon /var/run/ceph/ceph-mds.ceph-6-12.asok config show |grep revoke
"mds_revoke_cap_timeout": "180",
4:修改叢集配置檔案,在global 配置區域增加如下内容:
[global]
mds_revoke_cap_timeout = 180
5:重新開機mds 服務,有業務的要小心!!!
sudo systemctl restart ceph-mds@"$HOSTNAME"
sudo systemctl status ceph-mds@"$HOSTNAME"