GreenPlum在何时会发生自动故障切换、节点漂移及如何排查(OOM)

0    627    2

Tags:

👉 本文共约2184个字,系统预计阅读时间或需9分钟。

简介

若发生了OOM,则在gpcc的告警通知里会有“[告警]Out of memory errors”,例如:

情况1(大部分情况):发生了OOM

发生自动切换的一个示例是发生了OOM,在master的日志文件中会有如下的内容:

“FTS: cannot establish libpq connection (content=0, dbid=11): could not fork new process for connection: Cannot allocate memory”或“FATAL: Out of memory. Failed on request of size 144 bytes. (context 'GPORCAmemory pool') ”或“ATAL: the database system is in recovery mode”,

若没有swap内存配置,会发生OOM,特别严重时会导致segment自动故障切换。

模拟OOM错误:

情况2:最大进程数超限导致系统资源不足

最大进程数超限,此时,日志报错:

该报错,多半是因为内核参数没有做正确修改,修复如下:

重启主机生效。

参考:https://www.dbaup.com/linuxzhongdesoft-nproc-hard-nprocsoft-nofilehard-nofileulimitdezuidajinchengshuhezuidaai.html

模拟“DETAIL: pthread_create() failed with err 11”错误:

情况3:kill掉实例

当手工kill掉某个PG实例后,也会自动发生切换。

情况4:master的主机名不能解析

所有的segment节点不能解析master的主机,效果类似于segment宕机,所以,这个时候会发生切换。

情况5:负载过大或CPU压力或主机压力较大或发生大量的swap置换

当某个节点的负载过大或CPU压力或主机压力较大时也会发生故障启动切换。

之前碰到过1条SQL语句,每分钟插入8万条数据导致主备切换(按秒统计时,每秒1万条)。

情况6:某个segment的主机网络不通

某个主机网络临时不通的话,或出现丢包严重,忘了抖动等,也会发生切换。 和情况4差不多。

此时,报错信息一般为:“Connection reset by peer” ,或“error code = 110 (Connection timed out)”,出现丢包现象,若频繁出现,则可以使用长ping来观察网络情况

参考:https://dbaup.com/shiyong-mtr-fenxiwangluoyanchijidiubaowenti.html#zong_jie

排查SQL

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复