Ceph环境完全重置指南:彻底清理集群环境

Ceph环境完全重置指南:彻底清理集群环境

在Ceph集群部署、测试或故障排除过程中,有时需要将整个环境重置到初始状态。特别是在Rocky Linux 9.6环境下运行Ceph Quincy 17.2.9版本时,彻底清理环境可以解决很多配置冲突问题。本文将详细介绍如何彻底清除Ceph环境,包括删除所有相关容器、配置文件和存储设备,使系统回到未安装Ceph的状态。

适用场景

本指南适用于以下情况:

  1. Ceph集群出现严重故障需要重新部署
  2. 测试环境需要反复部署和清理
  3. 需要更换Ceph版本进行重新安装
  4. 误操作导致集群配置混乱需要重置
  5. 在Rocky Linux 9.6上运行Ceph Quincy 17.2.9版本的环境清理

注意事项

在执行重置操作前,请务必注意:

  • 此操作不可逆,将永久删除所有Ceph数据
  • 确保重要数据已经备份
  • 操作需要root权限
  • 建议在维护窗口期间执行
  • 特别注意:本指南专门针对Rocky Linux 9.6和Ceph Quincy 17.2.9环境优化

1. 停止并删除Ceph容器

Ceph Quincy通常使用cephadm以容器方式部署,我们需要先停止并删除这些容器。

1.1 检查正在运行的Ceph容器

首先,检查当前环境中运行的Ceph相关容器:

bash 复制代码
# Rocky Linux 9.6默认使用Podman
podman ps | grep ceph

# 查看所有Ceph容器(包括已停止的)
podman ps -a | grep ceph

1.2 停止Ceph容器服务

如果Ceph是通过systemd管理的容器服务,需要先停止这些服务:

bash 复制代码
# 停止所有Ceph相关服务
systemctl stop ceph.target

# 或者逐一停止各个组件
systemctl stop ceph-mon.target
systemctl stop ceph-mgr.target
systemctl stop ceph-osd.target
systemctl stop ceph-radosgw.target  # 如果使用RGW

1.3 删除所有Ceph容器

使用Podman删除所有Ceph容器:

bash 复制代码
# 删除所有运行中的Ceph容器
podman ps -q --filter "name=ceph*" | xargs -r podman stop

# 删除所有Ceph容器(包括已停止的)
podman ps -aq --filter "name=ceph*" | xargs -r podman rm

1.4 清理Ceph容器镜像(可选)

如果您想彻底删除Ceph镜像以释放空间:

bash 复制代码
# 删除Ceph镜像
podman images | grep ceph | awk '{print $3}' | xargs -r podman rmi

2. 删除Ceph配置文件和数据

Ceph在系统中存储了大量配置文件和数据,需要彻底删除这些文件。

2.1 删除Ceph配置目录

bash 复制代码
# 删除主配置目录
rm -rf /etc/ceph/

# 删除Ceph数据目录
rm -rf /var/lib/ceph/

# 删除日志目录
rm -rf /var/log/ceph/

# 删除运行时目录
rm -rf /var/run/ceph/

rm -rf /var/log/ceph

# 删除cephadm相关文件(Quincy版本特有)
rm -rf /etc/systemd/system/ceph*
rm -rf /usr/lib/systemd/system/ceph*

2.2 删除Ceph用户和组(如有)

bash 复制代码
# 删除Ceph用户和组(如果存在)
userdel ceph 2>/dev/null || true
groupdel ceph 2>/dev/null || true

3. 清理磁盘和存储设备

为了完全重置环境,需要清理所有用于Ceph的磁盘和存储设备。

3.1 识别Ceph使用的磁盘设备

首先,确定哪些磁盘被Ceph使用:

bash 复制代码
# 查看磁盘使用情况
lsblk

# 查看Ceph相关的逻辑卷(如果使用LVM)
ls /dev/mapper/ | grep ceph

# 查看挂载点
mount | grep ceph

3.2 停止并移除Ceph相关的逻辑卷

bash 复制代码
# 移除所有Ceph相关的逻辑卷
ls /dev/mapper/ceph-* 2>/dev/null | xargs -I% -- dmsetup remove % 2>/dev/null || true

# 删除关联的设备映射
rm -rf /dev/ceph-*
rm -rf /dev/mapper/ceph--*

3.3 清理物理磁盘

对于每个被Ceph使用的物理磁盘,执行以下操作:

bash 复制代码
# 使用disk_name替换实际的磁盘名称,例如 /dev/sdb
# 警告:这将删除磁盘上的所有数据
DISK="/dev/sdb"

# 清除磁盘分区表和头部数据
sgdisk --zap-all $DISK

# 或使用dd命令彻底清除磁盘头部
dd if=/dev/zero of=$DISK bs=512k count=100

# 清除文件系统签名
wipefs -af $DISK

# 如果使用GPT分区表,也清除末尾部分
sgdisk -E $DISK

3.4 使用ceph-volume工具清理设备

对于通过ceph-volume管理的设备:

bash 复制代码
# 查看当前OSD列表
ceph-volume lvm list

# 清理特定设备
ceph-volume lvm zap --destroy /dev/sdb

# 根据OSD ID清理设备
ceph-volume lvm zap --destroy --osd-id OSD_ID

# 根据OSD FSID清理设备
ceph-volume lvm zap --destroy --osd-fsid OSD_FSID

4. 清理cephadm相关配置

4.1 删除cephadm相关文件

bash 复制代码
# 删除cephadm可执行文件
rm -f /usr/sbin/cephadm

# 删除ssh密钥(如果存在)
rm -rf /etc/ceph/ceph.pub

参考文档

  1. Ceph官方文档:https://docs.ceph.com/en/quincy/
  2. Red Hat Ceph Storage文档:https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/5/
  3. Cephadm使用指南:https://docs.ceph.com/en/quincy/cephadm/
  4. Rocky Linux官方文档:https://docs.rockylinux.org/

温馨提示

由于网络环境或文件存储等因素,若相关文件或图片链接暂时无法访问,您也可以通过访问张师傅的好来斯技术博客获取更多相关资源和最新信息。

本篇文章原始链接:

复制代码
https://www.howlaisi.com/categories/ceph/cephhuan-jing-wan-quan-chong-zhi-zhi-nan-che-di-qing-li-ji-qun-huan-jing
相关推荐
鸽鸽程序猿2 小时前
【JavaEE】【SpringAI】聊天模型
java·java-ee
SunnyDays10112 小时前
使用 Java 实现 Word 文档水印自动化(全面指南)
java·添加水印·word文档
周淳APP2 小时前
【计算机网络之HTTP、TCP、UDP、HTTPS、Socket网络连接】
前端·javascript·网络·网络协议·http·前端框架
敲代码的小王!2 小时前
prompt开发游戏-哄哄模拟器
java·游戏·ai·prompt
学编程就要猛2 小时前
JavaEE:多线程初阶
java·开发语言·jvm
博语小屋2 小时前
HTTP详解
网络·网络协议·http
XiaoLeisj2 小时前
Android 网络编程入门到实战:HttpURLConnection、JSON 处理、OkHttp 与 Retrofit2
android·网络·okhttp·json·gson·retrofit2·jsonobjecy
Saniffer_SH2 小时前
【高清视频】介绍一个自动化测试辅助小工具 - 上下电测试适用于电脑冷启动的掉电盒
网络·人工智能·驱动开发·嵌入式硬件·测试工具·计算机外设·压力测试
筱顾大牛2 小时前
缓存更新策略
java·redis·缓存