扫码阅读
手机扫码阅读
数据库|TiDB故障处理之让人迷惑的Region is Unavailable
270 2024-02-28
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
神州数码云基地
扫码关注公众号
摘要
文章讲述了作者何傲在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的重要性。
想要了解更多内容?
文章来源:
神州数码云基地
扫码关注公众号
神州数码云基地的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线