【ceph】ceph集群-添加/删除mon

本站以分享各种运维经验和运维所需要的技能为主

《python零基础入门》:python零基础入门学习

《python运维脚本》: python运维脚本实践

《shell》:shell学习

《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战

《k8》暂未更新

《docker学习》暂未更新

《ceph学习》ceph日常问题解决分享

《日志收集》ELK+各种中间件

《运维日常》运维日常

《linux》运维面试100问

【ceph】ceph集群-添加/删除mon

背景:

当mon出现问题,一般都选择铲掉,再重建,毕竟mon的数量多(mon一般很少出问题)。

过程:

在 Ceph 集群中删除一个有问题的 MON 并添加新的 MON 节点是一个需要谨慎操作的过程,因为 MON 节点负责维护集群的状态和配置信息。下面是删除有问题的 MON 并添加新 MON 到集群的一般步骤:

1. 删除有问题的 MON

  1. 确认 MON 的状态

    使用 ceph mon statceph status 命令查看所有 MON 的状态和它们的健康情况。

  2. 停止有问题的 MON 服务

    根据你的操作系统和部署方式,停止 MON 服务。例如,如果使用 systemd 管理服务,可以使用:

    复制代码
    sudo systemctl stop ceph-mon@<mon-id>
  3. 从 Ceph 配置中删除 MON

    使用以下命令从集群中删除有问题的 MON:

    复制代码
    ceph mon remove <mon-id>
  4. 清理 MON 相关的数据

    删除 MON 节点上关于 Ceph 的相关数据目录,通常位于 /var/lib/ceph/mon/ceph-<mon-id>

2. 添加新的 MON

  1. 准备新的 MON 节点

    确保新的 MON 节点已经安装了 Ceph,并且配置了正确的网络设置和防火墙规则。

  2. 在新节点上创建 MON 目录

    复制代码
    sudo mkdir -p /var/lib/ceph/mon/ceph-<new-mon-id>
  3. 添加新的 MON

    使用 ceph orch apply mon 命令添加新的 MON。这需要你有一个运行的 Orchestrator,如 cephadm。如果你不使用 Orchestrator,可以手动添加 MON:

    复制代码
    ceph auth get mon. -o /tmp/mon.keyring
    ceph mon getmap -o /tmp/monmap
    ceph-mon --mkfs -i <new-mon-id> --monmap /tmp/monmap --keyring /tmp/mon.keyring
    sudo systemctl start ceph-mon@<new-mon-id>
  4. 让集群知晓新的 MON

    更新 Ceph 的配置文件和相关的服务,以确保集群中的其他节点知道新的 MON 节点。你可能需要编辑 /etc/ceph/ceph.conf 文件或使用 Ceph Orchestrator 自动处理这些更改。

  5. 验证新的 MON 状态

    使用 ceph -s 查看集群状态,确认新的 MON 正在运行并且集群状态为 HEALTH_OK。

注意事项

  • 在操作过程中,确保 Ceph 集群中始终有足够的 MON 节点在运行,以维持集群的稳定和高可用性。
  • 在删除和添加 MON 之前,最好先备份相关的配置文件和关键数据。
  • 确保所有操作都在集群的维护窗口内执行,以最小化对服务的影响。

通过这些步骤,你可以安全地从 Ceph 集群中移除有问题的 MON 并添加新的 MON,以恢复和保持集群的健康状态。

---补充:不用重启任何进程,但是ceph.conf要更新新的Mon的信息

相关推荐
lisanmengmeng2 天前
添加ceph节点
linux·服务器·ceph
张小凡vip2 天前
Kubernetes---存储方案:Rook自动结合Ceph
ceph·容器·kubernetes
wniuniu_5 天前
日志内容和cephadm
数据库·ceph
wniuniu_6 天前
ceph锁测试
ceph
wniuniu_9 天前
rbd镜像的锁
ceph
JNU freshman12 天前
从 Ceph 16(Pacific)到 Ceph 18(Reef):cephadm 的伸缩性演进与 cephadm agent 到底“成熟”了吗?
java·大数据·ceph
wniuniu_12 天前
概括。。。。
ceph
JNU freshman12 天前
使用 cephadm + Docker 镜像在三台服务器上部署 Ceph 集群(含网络规划与 OSD DB/WAL 分离)
服务器·ceph·docker
JNU freshman12 天前
Ceph RBD:一个镜像能否被多客户端同时映射?如何避免“多端同时写入”风险
ceph
wniuniu_13 天前
ceph16-18差异
ceph