扫码阅读
手机扫码阅读

数据库|TiDB故障处理之让人迷惑的Region is Unavailable

270 2024-02-28

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:数据库|TiDB故障处理之让人迷惑的Region is Unavailable
文章来源:
神州数码云基地
扫码关注公众号

摘要

文章讲述了作者何傲在TiDB集群扩容后遇到的问题,以及详细的问题排查和解决过程。集群在增加物理机和容灾设置后,第二天出现部分SQL报错“Region is Unavailable”。初步怀疑与新扩容的TiKV节点有关,但后来发现并非如此。

01前言

何傲介绍了扩容过程中的准备工作和顺利扩容,但在扩容完毕后的第二天早晨,业务方报告了数据库部分SQL报错。

02故障现象

报错信息为“Region is Unavailable”,初步判断可能是由于TiKV节点问题,如节点调度、限流或故障。

03排查过程

排查没有发现TiKV实例运行异常,怀疑偶发性报错,但通过dashboard和执行SQL手动验证后,发现问题可能与副本丢失有关。排除了PD节点故障后,发现新扩容的TiDB实例存在无法访问PD节点的问题,而原有TiDB实例则正常。继续排查发现,新扩容的TiDB实例无法从PD获取region信息。

04解决方案

终于发现问题的根源在于原集群的某些节点设置了iptables规则,限制了新扩容机器的访问。解决方案是将所有新扩容机器的IP加入iptables白名单。实施后,问题得到解决。

05总结

何傲总结说,虽然问题的解决看似简单,但背后有大量工作和清晰的思路,强调troubleshooting的重要性。

想要了解更多内容?

查看原文:数据库|TiDB故障处理之让人迷惑的Region is Unavailable
文章来源:
神州数码云基地
扫码关注公众号