gpt4 book ai didi

high-availability - 具有 2 节点 proxmox 的 HA 集群

转载 作者:行者123 更新时间:2023-12-02 19:30:31 26 4
gpt4 key购买 nike

我想在1个节点死亡时实现虚拟机自动迁移。我创建了 proxmox 集群、设置了复制并安装了看门狗 ipmi。但丢失 1 个节点后,什么也没有发生。我用过https://pve.proxmox.com/pve-docs/chapter-ha-manager.html ,和https://pve.proxmox.com/wiki/High_Availability_Cluster_4.x#Hardware_Watchdogs

ha-manager config
ct:100
group HA
max_restart 0
state started

ha-manager status
quorum OK
master node1 (active, Mon May 18 09:18:59 2020)
lrm node1 (idle, Mon May 18 09:19:00 2020)
lrm node2 (active, Mon May 18 09:19:02 2020)
service ct:100 (node2, started)

当我关闭node2时,我记录了:

May 18 08:12:37 node1 pve-ha-crm[2222]: lost lock 'ha_manager_lock - cfs lock update failed - Operation not permitted
May 18 08:12:38 node1 pmxcfs[2008]: [dcdb] notice: start cluster connection
May 18 08:12:38 node1 pmxcfs[2008]: [dcdb] crit: cpg_join failed: 14
May 18 08:12:38 node1 pmxcfs[2008]: [dcdb] crit: can't initialize service
May 18 08:12:42 node1 pve-ha-crm[2222]: status change master => lost_manager_lock
May 18 08:12:42 node1 pve-ha-crm[2222]: watchdog closed (disabled)
May 18 08:12:42 node1 pve-ha-crm[2222]: status change lost_manager_lock => wait_for_quorum
May 18 08:12:44 node1 pmxcfs[2008]: [dcdb] notice: members: 1/2008
May 18 08:12:44 node1 pmxcfs[2008]: [dcdb] notice: all data is up to date
May 18 08:13:00 node1 systemd[1]: Starting Proxmox VE replication runner...
May 18 08:13:01 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:02 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:03 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:04 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:05 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:05 node1 pveproxy[39495]: proxy detected vanished client connection
May 18 08:13:06 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:07 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:08 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:09 node1 pvesr[40781]: trying to acquire cfs lock 'file-replication_cfg' ...
May 18 08:13:10 node1 pvesr[40781]: error with cfs lock 'file-replication_cfg': no quorum!

最佳答案

问题出在法定人数上。而且非常重要,并且不能直观地工作。如果您设置了 Proxmox 集群,那么它会打开仲裁机制。要在集群上执行任何操作,它需要每个节点的投票来了解正在发生的情况。需要50%现有节点+1才能接受投票。

当您创建 2 节点集群时,有一个愚蠢的默认设置:它需要 50%+1=2 个节点才能执行任何操作。因此,尽管是“集群”,但如果一个节点挂掉,您甚至无法启动虚拟机/容器,直到两个节点都正常工作为止。

有一个解决方法:在 corosync.conf (/etc/corosync/corosync.conf) 中,您必须启用两个参数:两个节点:1wait_for_all:0

第一个参数定义在两个节点集群情况下需要1票才能执行操作。但对于年轻玩家来说还有另一个陷阱:此设置会自动启用另一个设置:wait_for_all,该设置会禁用集群在开机时的操作,直到所有节点出现。所以这实际上再次破坏了集群。所以你也必须克服这个问题。

仔细阅读此手册页: https://www.systutorials.com/docs/linux/man/5-votequorum/

但是还有另一个问题。 corosync.conf 有 2 个版本:/etc/corosync/corosync.conf和/etc/pve/corosync.conf

每当第二个更改时,第一个就会被覆盖所以你必须编辑后面的一个。但是,当您的第二个节点关闭时,您必须先暂时禁用仲裁,然后编辑文件。

关于high-availability - 具有 2 节点 proxmox 的 HA 集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61863694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com