1.故障现象
(1)用gs_om -t status --detail查询集群状态正常
[omm@opengdb3 ~]$ gs_om -t status --detail
[ CMServer State ]
node node_ip instance state
------------------------------------------------------------------------
1 opengdb1 192.168.6.11 1 /database/panweidb/cm/cm_server Standby
2 opengdb2 192.168.6.12 2 /database/panweidb/cm/cm_server Primary
3 opengdb3 192.168.6.13 3 /database/panweidb/cm/cm_server Standby
[ Cluster State ]
cluster_state : Normal
redistributing : No
balanced : Yes
current_az : AZ_ALL
[ Datanode State ]
node node_ip instance state
--------------------------------------------------------------------------
1 opengdb1 192.168.6.11 6001 /database/panweidb/data P Primary Normal
2 opengdb2 192.168.6.12 6002 /database/panweidb/data S Standby Normal
3 opengdb3 192.168.6.13 6003 /database/panweidb/data S Standby Normal
(2)用gs_om -t query 查询集群状态,发现备2节点异常,状态为 Manually stopped
[omm@opengdb3 ~]$ gs_om -t query
[ Cluster State ]
cluster_state : Degraded
redistributing : No
current_az : AZ_ALL
[ Datanode State ]
node node_ip port instance state
------------------------------------------------------------------------
1 opengdb1 192.168.6.11 17700 6001 P Primary Normal
2 opengdb2 192.168.6.12 17700 6002 S Standby Normal
3 opengdb3 192.168.6.13 17700 6003 S Down Manually stopped
2.故障分析
(1)查看备 2 节点 data 路径
检查postmaster.pid、gaussdb.state等文件权限用户属组异常,为omm:omm,而正常应该为omm:dbgrp
[root@opengdb3 data]# ls -l postmaster.* && ll gaussdb.state
-rw------- 1 omm omm 82 Apr 24 18:55 postmaster.opts
-rw------- 1 omm omm 0 Apr 24 17:00 postmaster.pid.lock
-rw------- 1 omm omm 72 Apr 24 18:55 gaussdb.state
(2)检查备 2 节点 omm 用户属组,发现为 omm,正常节点属组为 dbgrp
[root@opengdb3 data]# id omm
uid=1101(omm) gid=1102(omm) groups=1102(omm)
从上面分析可判断出由于 omm 用户属组问题,集群启动时,用户的属组出现异常,导致gs_om -t status --detail查询集群状态正常,而gs_om -t query 查询集群状态异常。
3.故障处理
(1)修改备 2 节点 omm 用户属组为 dbgrp,使其与正常节点保持一致
[root@opengdb3 data]# usermod -g dbgrp omm
[root@opengdb3 data]# id omm
uid=1101(omm) gid=1101(dbgrp) groups=1101(dbgrp)
(2)停止备 2 节点集群
[omm@opengdb3 ~]$ cm_ctl stop -n 3
cm_ctl: stop the node: 3.
cm_ctl: stop node, nodeid: 3
.........
cm_ctl: stop node successfully.
(3)杀掉 monitor 进程
[omm@opengdb3 ~]$ ps -ef|grep -v grep|grep om_monitor
omm 280142 1 0 18:53 ? 00:00:00 /database/panweidb/app/bin/om_monitor -L /database/panweidb/log/omm/cm/om_monitor
[omm@opengdb3 ~]$ kill -9 280142
(4)启动备 2 节点
[omm@opengdb3 ~]$ cm_ctl start -n 3
cm_ctl: start the node:3.
..
cm_ctl: start node successfully.
(5)检查集群状态,恢复正常
[omm@opengdb3 ~]$ gs_om -t query
[ Cluster State ]
cluster_state : Normal
redistributing : No
current_az : AZ_ALL
[ Datanode State ]
node node_ip port instance state
------------------------------------------------------------------------
1 opengdb1 192.168.6.11 17700 6001 P Primary Normal
2 opengdb2 192.168.6.12 17700 6002 S Standby Normal
3 opengdb3 192.168.6.13 17700 6003 S Standby Normal
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




