牛皮纸+ ceph一些坑(五)

  

三台服务器的时钟很重要所以要配置时钟一致

  

ceph卫生细节

  1日

HEALTH_WARN应用程序未启用池(s)
POOL_APP_NOT_ENABLED应用程序1日未启用池(s)
应用程序不启用池“kube”
使用“ceph osd池应用程序启用& lt; pool-name>& lt; app-name>”, & lt; app-name>是‘cephfs’,‘rbd’,‘rgw’,或自由的自定义应用程序。

  

ceph osd池的应用程序启用kube rbd

  

启用应用程序“rbd”池“kube”

  

ceph健康

  

HEALTH_OK   

所有节点必须在同一子网,以便各个节点使用corosync多播通信(详情可查看corosync集群引擎).Corosync使5404和5405用UDP端口进行集群通信

  

注意:有些交换机默认设置关闭了IP多播,需要先手工启用多播通信

  

添加位于不同网段的节点
如果要添加一个节点,而该集群网络和该节点在不同网段,你需要使用ringX_addr参数来指定节点在集群网络内使用的地址。

  

pvecm添加IP-ADDRESS-CLUSTER -ring0_addr IP-ADDRESS-RING0

  

如果你要使用冗余环协议,你还需要设置ring1_addr参数以传递第二个集群网络地址。

  

删除节点
警告:删除节点前请仔细阅读删除操作步骤,不然很可能会发生你预料不到的情况。

  

首先将待删除节点上所有虚拟机都迁移到其他节点。确保待删除节点上没有任何你需要保留的数据和备份,或者相关数据已经被妥善备份。

  

通过ssh登录待删除节点。执行pvecm节点命令再次确认节点ID。

  

重要:这个时候,你必须将待删除节点关闭并断电,确保该节点不再启动(在当前集群网络内)。

  

root@pve-1: ~ # pvecm节点

  

会员信息   
 <代码> Nodeid选票的名字
  1 1 192.168.77.160(当地)
  2 1 192.168.77.170
  3 1 192.168.77.180  
  

root@pve-1: 1 ~ #

2
3
4
5
6 7 8



root@pve-1: 9 ~ # pvecm节点

  

会员信息   
 <代码> Nodeid选票的名字
  1 1 192.168.77.160(当地)
  2 1 192.168.77.170
  3 1 192.168.77.180  
  

root@pve-1: ~ #
通过ssh登录集群中其他任何一个节点,执行节点删除命令(这里将删除节点hp4):

  

hp1 # pvecm delnode hp4

  

如果命令执行成功,将直接返回,而且不会有任何输出。可以运行pvecm节点或者pvecm状态检查删除节点后的集群状态。

  

重要:如前所述,必须在执行删除命令前先关闭待删除节点,并且确保被删除点不再启动(在原集群网络中)。这是非常非常重要的!

  

如果你在原集群网络中重新启动被删除的节点,你的集群会因此而崩溃,并且很难恢复到一个干净的状态。

  

如果出于某种原因,你需要将被删除节点重新加入原集群,需要按如下步骤操作:

  

格式化被删除节点,并重新安装Proxmox VE。

  

如前一节所述步骤,将该节点重新加入集群。

  

隔离节点
重要:我们不推荐使用隔离节点操作,按此方法操作时请务必小心。如果你对操作结果存有疑虑,建议使用删除节点的方法。

  

你可以将一个节点从集群中隔离出去,而无需格式化并重装该节点。但将节点从集群中隔离出去后,被隔离的节点仍然能够访问原Proxmox VE集群配置给它的共享存储。

  

你必须在将节点隔离出去之前解决这个问题。由于不能确保避免发生虚拟机ID冲突,

  

所以Proxmox VE集群之间不能共享同一个存储设备。建议为待隔离节点专门创建一个独享的新存储服务,例如,可以为待隔离节点分配一个新的NFS服务或者Ceph存储池。必须确保该存储服务是独享的。在分配存储之后,可以将该节点的虚拟机迁移到新存储服务,接下来就可以开始进行隔离节点的操作。

  

警告:必须确保所有的资源都被已经彻底被隔离。否则将可能发生冲突或其他问题。

  

首先在待隔离节点上停止pve-cluster服务:

  

systemctl停止pve-cluster   

systemctl停止corosync   

然后将待隔离节点的集群文件系统设置为本地模式:

  

pmxcfs - l

  

接下来删除corosync配置文件:

  rm/etc/pve/corosync.conf

  rm/etc/corosync/*

  

最后重新启动集群文件系统服务:

  killall pmxcfs

  

systemctl开始pve-cluster   

到此,该节点已经从集群中被隔离出去了。你可以在原集群中任意节点上执行删除命令:

牛皮纸+ ceph一些坑(五)