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)。

相关推荐
csdn_aspnet3 小时前
如何在 Ubuntu 24.04/22.04/20.04 上安装 MySQL 8.0
linux·mysql·ubuntu
北城笑笑3 小时前
Server 15 ,VMware ESXi 实战指南:Ubuntu 20.04.6 版本虚拟机静态 IP 配置、分辨率固定及远程访问实践
linux·运维·ubuntu·1024程序员节
or77iu_N4 小时前
Linux 查找文件
linux·运维·服务器
tan180°4 小时前
Linux网络UDP(10)
linux·网络·后端·udp·1024程序员节
<但凡.5 小时前
Linux修炼:基础IO(二)
linux·运维·服务器·1024程序员节
黑翼杰克斯5 小时前
关于buildroot文件系统中rootfs的内容,该怎么增删(瑞芯微rv1126b)
linux·音视频·1024程序员节
洛克大航海5 小时前
Ubuntu部署集群环境(3台)
linux·ubuntu·集群搭建
小志biubiu6 小时前
linux_缓冲区及简单libc库【Ubuntu】
linux·运维·服务器·c语言·学习·ubuntu·c
若尘拂风6 小时前
FreeSWITCH配置文件解析(11) 模块配置文件(modules.conf)
服务器·tcp/ip·udp·freeswitch