黄东旭解析 TiDB 的核心优势
805
2024-03-20
修改相关的配置,尤其是超过一个pd的时候dashboard是无法打开的,需要打开tidb dashboard
1.在pd上添加如下配置,发现修改相关的配置无法打开dashboard
pd: baseImage: pingcap/pd config: | [dashboard] internal-proxy = true2.查看pd相关的pod发现更新的配置没有滚动更新,该pod还是原先,通过delete也是如此。
3.后经排查发现缺少tc集群没有滚动更新的配置,添加滚动更新的配置
enableDynamicConfiguration: true4.再次修改改配置的时候,发现pd滚动更新pod,对外也可以正常访问了。
客户需要通过映射对外访问dashboard
解决步骤:
K8S-Ingress控制器
dashboard的状态有个tikv是离线状态,整个集群状态是false
1.缩容tikv,由于一台服务器维护下线,tc由于设置tikv的副本数为6,由于下线的一台有tikv为保证副本数tc又拉起了一台tikv,维护的服务器又再次上线tikv也在线了,造成副本数为7与期望的6不符需要缩容,通过命名patch直接缩容成功了,也给客户解释了,防止服务器频繁上下线造成集群写入压力大,影响稳定性,这个operator为了防止频繁上下线做的操作。
2.进入pd的pod通过命令发现该下线的pod没有变成bonstone,手动删除该下线节点的id。./pd-ctl store delete 629(通过在pd里删除下线的tikv的id,会使该id自动下线,集群状态收集状态自动同步,状态变为True。)
通过kubectl get pod -n$ns时新扩容的pod总出现CrashLoopBackOff
1.通过kubectl describe pod/$pod -n$ns。发现初始化失败重启后失败又重启。
2.通过查看该pod的日志,发现相关的报错,大致就是初始化数据的时候有相关的文件造成初始化数据文件失败。新的pod在往里写数据的时候写不进去。
3.通过解绑pv和pvc,删除pv里的数据,然后重新绑定解决。或者直接删除绑定pv里的数据,kubelet过两分钟还会重启该容器,最近该pod的状态为running。
经查看tc的状态为false,和sts的状态不一致。
1.由于直接修改sts造成集群的期望和tc的期望不一致,tc在获取机器的状态时造成不一致。
2.把修改的sts的扩缩容的副本数修改过来,以后通过tc对整个集群的管理。
以上均为在实际环境中常出现的问题,及相关的解决步骤和思路,请结合实际环境进行排查,图片如有任何不妥的地方,请私聊会做进一步的处理。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。