4.5. 压缩 monitor 存储
当 monitor 存储的大小增大时,您可以对其进行压缩:
-
使用
ceph inform 命令动态使用。 -
ceph-mon 守护进程启动后。 -
在
ceph-mon 守护进程没有运行时,使用。当前面提到的方法无法压缩 monitor 存储或者 monitor 超出仲裁并且其日志包含ceph-monstore-toolCaught 信号(Bus 错误)错误消息时,可使用此方法。
当集群不处于 active+clean 状态或重新平衡过程中,监控存储大小更改。因此,在完成重新平衡时,压缩 monitor 存储。此外,确保 PG 处于 active+clean 状态。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- Ceph 监控节点的根级别访问权限.
流程
在
ceph-mon守护进程运行时压缩 monitor 存储:ceph tell mon.HOST_NAME compact将
HOST_NAME替换为运行ceph-mon的主机的短主机名。不确定时使用 hostname -s命令。# ceph tell mon.host1 compact将以下参数添加到 Ceph 配置的
[mon]部分下:[mon] mon_compact_on_start = true重启
ceph-mon守护进程:[root@mon ~]# systemctl restart ceph-mon@_HOST_NAME_将
HOST_NAME替换为正在运行 守护进程的主机的短名称。不确定时使用 hostname -s命令。[root@mon ~]# systemctl restart ceph-mon@host1确保 monitor 创建了仲裁:
[root@mon ~]# ceph mon stat如果需要,在其他 monitor 上重复这些步骤。
注意在您开始之前,请确保已安装了
ceph-test软件包。验证具有大存储
的 ceph-mon守护进程未在运行。如果需要,请停止 后台程序。[root@mon ~]# systemctl status ceph-mon@HOST_NAME [root@mon ~]# systemctl stop ceph-mon@HOST_NAME将
HOST_NAME替换为正在运行 守护进程的主机的短名称。不确定时使用 hostname -s命令。[root@mon ~]# systemctl status ceph-mon@host1 [root@mon ~]# systemctl stop ceph-mon@host1以
ceph用户身份通过两种不同的方式对 monitor 存储进行压缩:以
ceph用户身份运行该命令:语法
su - ceph -c 'ceph-monstore-tool /var/lib/ceph/mon/mon.HOST_NAME compact'示例
[root@mon ~]# su - ceph -c 'ceph-monstore-tool /var/lib/ceph/mon/mon.node1 compact'以
root用户身份运行该命令,然后运行chown以更改权限:以 root 用户身份运行该命令:
语法
ceph-monstore-tool /var/lib/ceph/mon/mon.HOST_NAME compact示例
[root@mon ~]# ceph-monstore-tool /var/lib/ceph/mon/mon.node1 compact更改文件权限:
示例
[root@mon ~]# chown -R ceph:ceph /var/lib/ceph/mon/mon.node1
再次启动
ceph-mon:[root@mon ~]# systemctl start ceph-mon@HOST_NAME示例
[root@mon ~]# systemctl start ceph-mon@host1