tidb-cluster集群中的某个组件出现问题后,告警消息发出的告警为:告警详情:Linux服务器,已经宕机或网络不通,请及时处理!!

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.5.0
【复现路径】tidb-cluster集群中的某个组件出现问题后,告警消息发出的告警为:告警详情:Linux服务器,已经宕机或网络不通,请及时处理!!

1.经过排查发现,当某个tidb-server组件出现故障,进程退出时,node_exporter的进程也会跟着被自动关闭,远程的promethus探测不到此节点,就会报出宕机或网络不可达。
2.实际上,此服务器操作系统本身并没有宕机,只是tidb-server组件出现故障。
3.这种情况,需要如何操作来解决这种告警不精准的问题。

【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
image

这就是故障呀

没看懂,你是管服务器的?应用故障被人甩锅服务器故障?

tidb默认没有这个告警项吧

我是管理tidb集群的,但是,告警出来提示的是服务器宕机。倒也不是被人甩锅,主要是想把这个告警纠正一下。怎么才能让告警正常告警,tidb-server组件挂了,就告警说,组件挂了,不是服务器宕机。

除了这个告警,还有组件down的告警吗

这个就是故障 你要想怎么导致tidb组件退出的 而不是掩盖修复这个报警 虽然退出了他自己又恢复了 但他就是故障。积累多了 就崩溃了
不积硅步无以至千里
千里堤坝毁于蚁穴

node_export都退出了,监控以为挂了,看下export是为何也挂了,是否被oom-kill

没有提示组件down的告警,只有一个主机宕机的告警。

猜测您这边 export 直接用的 tidb 的监控吧,建议自己再部署一个

是的,这个情况,是在tidb-server组件内存被消耗怠尽后,发生OOM时,发出的告警消息。严格来说,也算是故障,是tidb-server的故障。但是,告警消息提示服务器宕机有点唬人。

我也在想,有可能是发生oom时,node_export一同被kill了。理论上,不应该把node_export杀掉啊

当某个tidb-server组件出现故障,进程退出时,node_exporter的进程也会跟着被自动关闭

这两个应该没关系吧

这个告警是系统配置的吧:探测node-exporter是否为启动转态。
猜测:发送系统告警的位置和发送tidb 组件告警的位置不是一个地方。
tidb的alertmanager或者promethus也被oomkill了,但是手动配置的探测node-exporter是另外一套机制就不影响,正常发送。
正常node_exporter挂了,tidb默认发送 [EMERGENCY] Node_exporter server is down。

也有可能是你说的这个问题,我下午让运维那边确认一下

你这个告警是谁发的,为什么我这显示的是TiDB_server_is_down
node_exporter挂了也是告警的Node_exporter_server_is_down

image
image
image

1 个赞

先分析 node_exporter 挂的原因,后续可以增加node_exporter 的守护进程 ,挂了拉起就行了

要看你配置的告警规则,如果是组件down了,你改成某某组件就可以了。这是描述信息的问题

这个告警内容不是 TiDB 原生告警输出。原生的是类似这位老师的:

1 个赞

你这个汉化是谁做的?
能分享一下嘛?

我这边的告警标题都是英文。