4.4. 紧凑 monitor 存储
当 monitor 存储大小增大时,您可以压缩它:
-
使用
ceph tell
命令动态使用。 -
在
ceph-mon
守护进程的开头。 -
在
ceph-mon
守护进程没有运行时,使用ceph-monstore-tool
。当前面提到的方法无法压缩 monitor 存储或者 monitor 超出仲裁并且其日志包含Caught signal (Bus error)
错误信息时,可使用此方法。
当集群没有处于 active+clean
状态或重新平衡过程中,监控存储大小会改变。因此,在重新平衡完成后,压缩 monitor 存储。另外,确保放置组处于 active+clean
状态。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- Ceph 监控节点的根级别访问权限.
流程
在
ceph-mon
守护进程运行时压缩 monitor 存储:语法
ceph tell mon.HOST_NAME compact
将
HOST_NAME
替换为运行ceph-mon
主机的短主机名。在不确定时使用hostname -s
命令。示例
[ceph: root@host01 /]# ceph tell mon.host01 compact
在
[mon]
部分下的 Ceph 配置中添加以下参数:[mon] mon_compact_on_start = true
重启
ceph-mon
守护进程:语法
systemctl restart ceph-FSID@DAEMON_NAME
示例
[root@mon ~]# systemctl restart ceph-b404c440-9e4c-11ec-a28a-001a4a0001df@mon.host01.service
确保 monitor 已形成仲裁:
[ceph: root@host01 /]# ceph mon stat
如果需要,在其他 monitor 上重复这些步骤。
注意开始之前,请确保已安装了
ceph-test
软件包。验证具有大存储的
ceph-mon
守护进程是否没有运行。如果需要,停止守护进程。语法
systemctl status ceph-FSID@DAEMON_NAME systemctl stop ceph-FSID@DAEMON_NAME
示例
[root@mon ~]# systemctl status ceph-b404c440-9e4c-11ec-a28a-001a4a0001df@mon.host01.service [root@mon ~]# systemctl stop ceph-b404c440-9e4c-11ec-a28a-001a4a0001df@mon.host01.service
紧凑 monitor 存储:
语法
ceph-monstore-tool /var/lib/ceph/CLUSTER_FSID/mon.HOST_NAME compact
使用 monitor 主机的短主机名替换
HOST_NAME
。示例
[ceph: root@host01 /]# ceph-monstore-tool /var/lib/ceph/b404c440-9e4c-11ec-a28a-001a4a0001df/mon.host01 compact
再次启动
ceph-mon
:语法
systemctl start ceph-FSID@DAEMON_NAME
示例
[root@mon ~]# systemctl start ceph-b404c440-9e4c-11ec-a28a-001a4a0001df@mon.host01.service
其它资源
- 请参阅 Ceph Monitor 存储太大
- 请参阅 Ceph 监控器没有仲裁