我最近开始研究集群,如果你想要更多的信息,请告诉我。
我有一个活跃的HA集群。它的设计是为了在故障转移场景中工作。
我将Node1和Node2作为一个活动的活动集群。起搏器和心脏合成被用作簇管理器。两个节点都有一个资源组,每个资源有3个。
当Node1下降时,Node2按预期接管了它的资源。当Node1重新上线时,pcs首先在node2中停止node1资源,然后在node1中启动它们,这也是人们所期望的,而且运行良好。
问题:当两个节点同时被引导时,您将面临问题。
场景:当两个节点都被关闭,然后在同一时间打开电源。让我们先说Node2已引导,然后PCS看到node1仍然脱机(仍在引导)并在节点2中启动node1资源。然后在node2中启动自己的资源
因此,当node1被完全引导时,它会启动自己的资源。这里的问题是,在启动之前,它不停止当前在node2中启动的node2资源(故障转移)。
因此,最终node1在node1中启动了它的资源,node2也在node2中启动了node1 & node2资源。
当用时间差(15分钟)引导它们时,上述场景永远不会发生。此外,当只有一个节点被重新启动或关闭时,它也可以正常工作。
# pcs property list --all
Cluster Properties:
batch-limit: 0
cluster-delay: 60s
cluster-infrastructure: cman
cluster-recheck-interval: 15min
crmd-finalization-timeout: 30min
crmd-integration-timeout: 3min
crmd-transition-delay: 0s
dc-deadtime: 20s
dc-version: 1.1.11-97629de
default-action-timeout: 20s
default-resource-stickiness: 0
election-timeout: 2min
enable-startup-probes: true
expected-quorum-votes: 2
is-managed-default: true
last-lrm-refresh: 1565098302
load-threshold: 80%
maintenance-mode: false
migration-limit: -1
no-quorum-policy: ignore
node-action-limit: 0
node-health-green: 0
node-health-red: -INFINITY
node-health-strategy: none
node-health-yellow: 0
pe-error-series-max: -1
pe-input-series-max: 4000
pe-warn-series-max: 5000
placement-strategy: default
remove-after-stop: false
shutdown-escalation: 20min
start-failure-is-fatal: true
startup-fencing: true
stonith-action: reboot
stonith-enabled: false
stonith-timeout: 60s
stop-all-resources: false
stop-orphan-actions: true
stop-orphan-resources: true
symmetric-cluster: false发布于 2019-11-15 08:05:32
我能够通过使用pcs 0.9.155版本来解决这个问题。当同时重新启动时,旧的pcs版本有这个错误。
https://stackoverflow.com/questions/57390299
复制相似问题