3节点Pacemaker集群同一节点重复显示(一在线一离线)的故障排查求助
3节点Pacemaker集群同一节点重复显示(一在线一离线)的故障排查求助
各位集群运维的大佬们,我最近碰到一个棘手的Pacemaker集群问题,折腾了好一阵没头绪,来这儿求助了!
先说说我的集群基础情况:
- 集群共3个节点:machine001、machine002、machine003
- machine001承载2个资源,machine002承载1个资源,正常规则下它们不会部署在同一主机,除非machine002进入待机状态
最近遇到的异常现象:
- 发现machine002在集群状态输出里显示了两次:一个处于在线状态,一个处于离线状态
- 执行
sudo crm_mon -R查看细节,发现这两个“machine002”对应不同的节点ID
我尝试过的操作及结果:
- 尝试删除重复的节点ID,但操作直接被拒绝
- 尝试删除重复的节点名称,系统提示该名称存在活跃节点,无法执行删除
- 执行
sudo crm configure edit查看CIB配置,发现里面有两条machine002的记录:(111) machine001 \ standby=off (222) machine002 \ standby=off (333) machine003 \ standby=off (12345) machine002 other_settings... \ - 我删掉了那条
(12345) machine002的记录,保存并提交CIB后,machine002直接从crm_mon的输出里消失了,而且集群一直在尝试重新定位这个节点 - 目前唯一能让machine002恢复正常显示的方法,就是在该节点上重启corosync和pacemaker服务
我实在搞不懂这是怎么回事,有没有大佬能给我指个排查方向?
附:我的corosync.conf配置文件内容
totem { version: 2 cluster_name: debian token: 3000 transport: udp token_retransmits_before_loss_const: 10 join: 60 consensus: 3600 vsftype: none max_messages: 20 clear_node_high_bit: yes threads: 0 rrp_mode: none crypto_cipher: none crypto_hash: none interface { ringnumber: 0 bindnetaddr: 192.168.0.0 mcastaddr: 239.255.64.1 mcastport: 5405 ttl: 1 } } logging { fileline: off to_stderr: no to_logfile: yes logfile: /var/log/corosync/corosync.log to_syslog: no syslog_facility: daemon debug: off timestamp: on logger_subsys { subsys: QUORUM debug: off } } quorum { expected_votes: 3 } nodelist { node { ring0_addr: 192.168.0.25 name: machine001 id: 1 } node { ring0_addr: 192.168.0.26 name: machine002 id: 2 } node { ring0_addr: 192.168.0.27 name: machine003 id: 3 } }
备注:内容来源于stack exchange,提问作者KoenDG




