14.2. 删除 Ceph Monitor 守护进程

按照这个操作过程操作,从存储集群中删除 ceph-mon 守护进程。如果 Controller 节点正在运行 Ceph 监控器服务,请完成以下步骤以删除 ceph-mon 守护进程。这个操作过程假设 Controller 可供连接。

注意

在集群中添加新的 Controller,也会自动添加新的 Ceph 监控器守护进程。

步骤

  1. 连接到您要替换的 Controller,然后改为 root 用户身份:

    # ssh heat-admin@192.168.0.47
    # sudo su -
    注意

    如果无法连接到该 Controller,请跳过第 1 步和第 2 步,然后在能够正常工作的任意 Controller 节点上从第 3 步开始继续执行这个操作过程。

  2. 以 root 用户的身份,停止该监控器:

    # systemctl stop ceph-mon@<monitor_hostname>

    例如:

    # systemctl stop ceph-mon@overcloud-controller-1
  3. 断开与要被替换的控制器的连接:
  4. 连接到现有控制器中的一个。

    # ssh heat-admin@192.168.0.46
    # sudo su -
  5. 从集群中删除该监控器:

    # sudo podman exec -it ceph-mon-controller-0 ceph mon remove overcloud-controller-1
  6. 在所有 Controller 节点上,从 /etc/ceph/ceph.conf 中删除 v1 和 v2 监控条目。例如,如果删除 controller-1,则删除 controller-1 的 IP 和主机名。

    删除前:

    mon host = [v2:172.18.0.21:3300,v1:172.18.0.21:6789],[v2:172.18.0.22:3300,v1:172.18.0.22:6789],[v2:172.18.0.24:3300,v1:172.18.0.24:6789]
    mon initial members = overcloud-controller-2,overcloud-controller-1,overcloud-controller-0

    删除后:

    mon host = [v2:172.18.0.21:3300,v1:172.18.0.21:6789],[v2:172.18.0.24:3300,v1:172.18.0.24:6789]
    mon initial members = overcloud-controller-2,overcloud-controller-0
    注意

    在添加替换控制器节点时,director 会更新相关 overcloud 节点上的 ceph.conf 文件。通常,这个配置文件由 director 独占管理,您不应手动编辑。不过,如果在您添加新节点前其他节点重新启动,您可以手动编辑该文件来确保一致性。

  7. 此外,也可选择归档监控器数据,并将其保存到其他服务器上:

    # mv /var/lib/ceph/mon/<cluster>-<daemon_id> /var/lib/ceph/mon/removed-<cluster>-<daemon_id>