20.2. 删除 Ceph Monitor 守护进程


如果 Controller 节点正在运行 Ceph 监控服务,请完成以下步骤以删除 ceph-mon 守护进程。

注意

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

流程

  1. 连接到要替换的 Controller 节点:

    $ ssh tripleo-admin@192.168.0.47
  2. 列出 Ceph mon 服务:

    $ sudo systemctl --type=service | grep ceph
    ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@crash.controller-0.service          loaded active running Ceph crash.controller-0 for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
      ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mgr.controller-0.mufglq.service     loaded active running Ceph mgr.controller-0.mufglq for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
      ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mon.controller-0.service            loaded active running Ceph mon.controller-0 for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
      ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@rgw.rgw.controller-0.ikaevh.service loaded active running Ceph rgw.rgw.controller-0.ikaevh for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
  3. 停止 Ceph mon 服务:

    $ sudo systemtctl stop ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mon.controller-0.service
  4. 禁用 Ceph mon 服务:

    $ sudo systemctl disable ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mon.controller-0.service
  5. 从要替换的 Controller 节点断开连接。
  6. 使用 SSH 连接到同一集群中的另一个 Controller 节点:

    $ ssh tripleo-admin@192.168.0.46
  7. Ceph 规范文件在此流程中被修改并应用,以便操作必须导出它的文件:

    $ sudo cephadm shell --ceph orch ls --export > spec.yaml
  8. 从集群中删除该监控器:

    $ sudo cephadm shell -- ceph mon remove controller-0
      removing mon.controller-0 at [v2:172.23.3.153:3300/0,v1:172.23.3.153:6789/0], there will be 2 monitors
  9. 断开与 Controller 节点的连接,再重新登录您要从集群中删除的 Controller 节点:

    $ ssh tripleo-admin@192.168.0.47
  10. 列出 Ceph mgr 服务:

    $ sudo systemctl --type=service | grep ceph
    ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@crash.controller-0.service          loaded active running Ceph crash.controller-0 for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
      ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mgr.controller-0.mufglq.service     loaded active running Ceph mgr.controller-0.mufglq for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
      ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@rgw.rgw.controller-0.ikaevh.service loaded active running Ceph rgw.rgw.controller-0.ikaevh for 4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31
  11. 停止 Ceph mgr 服务:

    $ sudo systemctl stop ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mgr.controller-0.mufglq.service
  12. 禁用 Ceph mgr 服务:

    $ sudo systemctl disable ceph-4cf401f9-dd4c-5cda-9f0a-fa47fbf12b31@mgr.controller-0.mufglq.service
  13. 启动 cephadm shell:

    $ sudo cephadm shell
  14. 验证 Controller 节点的 Ceph mgr 服务是否已从集群中移除:

    $ ceph -s
    cluster:
         id:     b9b53581-d590-41ac-8463-2f50aa985001
         health: HEALTH_OK
    
       services:
         mon: 2 daemons, quorum controller-2,controller-1 (age 2h)
         mgr: controller-2(active, since 20h), standbys: controller1-1
         osd: 15 osds: 15 up (since 3h), 15 in (since 3h)
    
       data:
         pools:   3 pools, 384 pgs
         objects: 32 objects, 88 MiB
         usage:   16 GiB used, 734 GiB / 750 GiB avail
        pgs:     384 active+clean

    如果 Ceph mgr 服务成功移除,则不会列出该节点。

  15. 导出 Red Hat Ceph Storage 规格:

    $ ceph orch ls --export > spec.yaml
  16. spec.yaml 规范文件中,从 service_type: monservice_type: mgr 中删除主机的所有实例,如 controller-0
  17. 重新应用 Red Hat Ceph Storage 规格:

    $ ceph orch apply -i spec.yaml
  18. 验证删除的主机上没有 Ceph 守护进程:

    $ ceph orch ps controller-0
    注意

    如果存在守护进程,使用以下命令删除它们:

    $ ceph orch host drain controller-0

    在运行 ceph orch host drain 命令之前,请备份 /etc/ceph 的内容。在运行 ceph orch host drain 命令后恢复内容。在运行 ceph orch host drain 命令前,您必须备份,直到 https://bugzilla.redhat.com/show_bug.cgi?id=2153827 解决为止。

  19. 从 Red Hat Ceph Storage 集群中删除 controller-0 主机:

    $ ceph orch host rm controller-0
      Removed host 'controller-0'
  20. 退出 cephadm shell:

    $ exit

其它资源

有关使用 systemd 控制 Red Hat Ceph Storage 服务的更多信息,请参阅了解 Ceph 的进程管理

如需有关编辑和应用 Red Hat Ceph Storage 规格文件的更多信息 ,请参阅使用服务规格部署 Ceph 监控守护进程

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.