一个三节点的PVE 6.1+CEPH集群,因为系统损坏,全部重新安装。

注意:

逐一重装系统/重新加入PVE集群/重新加入CEPH集群;

先禁用ceph的recover,避免其因OSD丢失重建:任一节点执行:
for i in noout nobackfill norecover;do ceph osd set $i;done

重新加入pve集群前确保已经从集群中删除

步骤

  1. 备份配置和证书

备份到/root/bak/目录下,然后打包拷贝到其他地方保存(别忘了,否则就不能还原了):

systemctl stop pvestatd.service
systemctl stop pvedaemon.service
systemctl stop pve-cluster.service

tar -czf /root/bak/pve-cluster-backup.tar.gz /var/lib/pve-cluster
tar -czf /root/bak/ssh-backup.tar.gz /root/.ssh
tar -czf /root/bak/corosync-backup.tar.gz /etc/corosync
cp /etc/hosts /root/bak/
cp /etc/network/interfaces /root/bak/
tar cjvf bak-$(hostname).tgz /root/bak

  1. 从pve集群删除节点

节点xxx关机,然后在其他节点删除该节点,下面的xxx就是节点名:

pvecm nodes
pvecm delnode xxx
pvecm updatecerts

  1. 重新安装PVE

尽量和以前一致,尤其主机名/IP地址。

  1. 恢复备份的配置和证书

把刚才的备份拷贝回来还原,按照原来的目录

tar xjvf bak-xxx.tgz
cp /root/bak/hosts /etc/hosts
cp /root/bak/interfaces /etc/network/interfaces
systemctl stop pvestatd.service
systemctl stop pvedaemon.service
systemctl stop pve-cluster.service

cd / ; tar -xvzf /root/bak/ssh-backup.tar.gz
rm -rf /var/lib/pve-cluster
cd / ; tar -xvzf /root/bak/pve-cluster-backup.tar.gz
rm -rf /etc/corosync
cd / ; tar -xvzf /root/bak/corosync-backup.tar.gz

  1. 重新加入pve集群

强制加入pve集群,下面的xxx.xxx.xxx.xxx是集群中现存节点的IP地址

pvecm add xxx.xxx.xxx.xxx -force
pvecm updatecerts

  1. 重新加入ceph集群

6.1安装ceph,直接使用gui上的pveinstall就可以
在正常ceph节点上删除该节点的mon

ceph mon stat
ceph mon rm xxx

6.2重建mon

在图形界面里面新建即可,注意选择重装的节点

6.3激活ceph的osd

ceph-volume lvm activate --all

后附

  1. 双节点集群删除节点需要修改expect:

pvecm expected 1
pvecm delete
pvecm updatecerts

  1. 一般错误

Permission denied (publickey).
TASK ERROR: Failed to run vncproxy.

修改/etc/hosts同步到所有节点,如:
192.168.254.11 node1.cqcq.com node1
192.168.254.12 node2.cqcq.com node2
192.168.254.13 node3.cqcq.com node3

  1. 最后别忘了恢复ceph的自动恢复,同步数据

for i in noout nobackfill norecover;do ceph osd unset $i;done

PVE(Proxmox Virtual Environment)是一个开源的虚拟化平台,可以用于运行虚拟机和容器,同时支持多节点集群Ceph一个分布式存储系统,可以提供高可用、可扩展的存储服务。Kubernetes 是一个容器编排平台,可以自动化地部署、扩展和管理容器化应用程序。Docker 是一个开源的容器引擎,可以将应用程序及其依赖项打包成容器,以便在任何地方进行部署。 将这些技术结合在一起,可以构建一个高度可扩展、高可用性的容器平台。以下是一些实现步骤: 1. 在多个物理节点上安装 PVE,并创建 PVE 集群。 2. 在 PVE 集群上安装 Ceph,并将其配置为多节点 Ceph 集群,以提供高可用的存储服务。 3. 在 Kubernetes 集群中使用 Ceph RBD 存储插件,以便将容器挂载到 Ceph 存储中。 4. 安装 Docker 和 Kubernetes,使用 kubeadm 初始化 Kubernetes 集群,并加入节点。 5. 在 Kubernetes 集群中安装容器平台,如 OpenShift 或 Rancher,以便管理和部署容器化应用程序。 6. 配置容器平台以使用 Ceph 存储和 Kubernetes 负载均衡服务。 7. 在容器平台上创建应用程序和服务,并部署到 Kubernetes 集群中,以实现高度可扩展、高可用性的容器化应用程序。 需要注意的是,这些技术的组合和部署非常复杂,需要深入了解每个技术的工作原理和实现方式,同时需要考虑安全性、性能和可维护性等因素。因此,在实现这样的容器平台之前,建议进行充分的规划和测试,以确保平台的稳定性和可靠性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值