Ubuntu22.04LTS基于cephadm快速部署Ceph Reef(18.2.X)集群

基础设置

在/etc/hosts文件里添加

192.168.146.10#(管理节点) ecph10

192.168.146.11 ecph11

192.168.146.12 ecph12

1.三个节点都要安装OpenSSH服务器

#更新软件包列表

apt update

#安装OpenSSH服务器

apt install -y openssh-server

#启动SSH服务

systemctl start sshd

#设置开机自启

systemctl enable sshd

#验证ssh服务状态

systemctl status ssh

2.在主节点生成SSH密钥

复制代码
ssh-keygen -t rsa -N "" -f /root/.ssh/id_rsa

无密码,直接回车

我这边是把三台虚拟机的root密码都换了传密钥才成功的

在三台虚拟机主机上执行 passwd root,按提示输入新密码,一定要记住!
复制代码
#在本地测试
ssh root@localhost
#给三个ceph传密钥
ssh root@192.168.146.10
ssh root@192.168.146.11
ssh root@192.168.146.12

出现以下内容就成功了:

上面的方法失败了,后来我又用以下命令传密钥成功的:

cd /etc/ceph

ssh-copy-id -f -i /etc/ceph/ceph.pub ceph11

ssh-copy-id -f -i /etc/ceph/ceph.pub ceph12

传密钥过程中出现了一个错误:

主机名与hosts文件里的主机名不一样

hostnamectl set-hostname ceph11 用这个命令该主机名,然后用 bash 刷新一下就好了

3.管理节点安装python3(忽略)

apt install -y python3

#下载完之后添加节点命令

#ceph orch host add yjy-virtual-machine 192.168.146.10

4.启动ceph新集群

下载需要安装ceph版本的cephadm

root@ceph141 \~# CEPH_RELEASE=18.2.4

root@ceph141 \~# curl --silent --remote-name --location https://download.ceph.com/rpm-${CEPH_RELEASE}/el9/noarch/cephadm

将cephadm添加到PATH环境变量

root@ceph141 \~# mv cephadm /usr/local/bin/

root@ceph141 \~# chmod +x /usr/local/bin/cephadm

root@ceph141 \~# ls -l /usr/local/bin/cephadm

-rwxr-xr-x 1 root root 215316 Aug 20 22:19 /usr/local/bin/cephadm

创建新集群

cephadm bootstrap --mon-ip 192.168.146.10 --cluster-network 192.168.146.0/24 --allow-fqdn-hostname

过程中有以下内容:

Ceph Dashboard is now available at:

URL: https://yjy-virtual-machine:8443/ #在浏览器输入

User: admin

Password: 35kcr4cc70 #我修改的密码是Root123!

根据内容中的登陆用户和登陆密码登陆进去之后根据提示修改密码,登陆进去就是以下图片:

5.将秘钥节点加入到集群

ceph orch host add ceph11 192.168.146.11

ceph orch host add ceph12 192.168.146.12

#用ceph orch host ls查看集群的主机列表

6.网页ceph三个节点都显示出来了

补充:(第一次传密钥失败了,我先用的以下内容,开始第二次传密钥就成功了)

--如果需要重新执行 cephadm bootstrap(例如之前的初始化失败或需要重置集群),需要先彻底清理旧的 Ceph 集群数据,否则可能会因为残留配置导致新的初始化失败。

  1. 停止所有 Ceph 相关进程和容器

停止所有 Ceph 容器

cephadm rm-cluster --fsid $(ceph fsid) --force # 若能获取 fsid,直接删除集群

若上述命令失败,手动停止并删除容器

docker stop $(docker ps -q --filter "name=ceph-")

docker rm $(docker ps -aq --filter "name=ceph-")

  1. 删除 Ceph 相关数据和配置文件

删除核心配置和数据目录(谨慎操作,会彻底清除集群数据)

rm -rf /etc/ceph/* # 配置文件

rm -rf /var/lib/ceph/* # 数据目录(含 Monitor、OSD 数据等)

rm -rf /var/log/ceph/* # 日志文件

  1. 确认清理完成

检查是否还有残留容器

docker ps -a | grep ceph

检查配置目录是否为空

ls -la /etc/ceph/

  1. 重新执行 bootstrap 命令

使用你之前的参数重新初始化:

cephadm bootstrap --mon-ip 192.168.5.12 --cluster-network 192.168.8.0/24 --allow-fqdn-hostname

注意事项:

--此操作会彻底删除原有集群的所有数据和配置,适用于重新部署场景。

--若之前已向集群添加过其他节点,需在那些节点上也执行类似的清理操作(删除 /etc/ceph、/var/lib/ceph 等目录),避免后续加入新集群时冲突。

--重新执行成功后,会生成新的 ceph.client.admin.keyring 和 ceph.conf,需重新保存并用于后续节点添加。

--执行完成后,通过 ceph -s 确认集群状态是否正常(初始状态应为 HEALTH_OK,只有一个 Monitor)。

相关推荐
幼儿园蛋小黄4 分钟前
从设备树到 ARM 驱动:嵌入式 Linux 驱动开发学习总结
linux·arm开发·驱动开发
dishugj16 分钟前
HANA集群计划内切换与维护操作
java·linux·数据库
该逃避避23 分钟前
出海广告跑不起来怎么办?动态住宅IP助力广告跑量
运维·服务器·网络
一条泥憨鱼30 分钟前
【从0开始学习计算机网络】| ip协议-ttl-标识-分片偏移-ip分片与重组
运维·服务器·网络
爱吃香菜的初学者2 小时前
十四.Linux——消息队列
linux·运维·开发语言
Apipi*9 小时前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理
天启HTTP10 小时前
爬虫防封核心原理:IP轮换机制与风控规避逻辑
linux·服务器·网络·爬虫·tcp/ip
运维行者_10 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
hz5678912 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC12 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库