老鹰506
(Ti D Ber Uhzt Tfx J)
2025 年5 月 27 日 02:27
1
【TiDB 使用环境】生产环境
【TiDB 版本】7.5.3
官方文档中也是首先找到 dashboard的地址,然后在nginx中进行proxy_pass 的配置
参考 https://docs.pingcap.com/zh/tidb/stable/dashboard-ops-reverse-proxy/
但是pd是会发生切换变更的,同样的dashboard地址也发生了变化(我新集群刚部署的时候是pd-02,状态是 Up|L|UI 三个都有,然后最近看到 Up|L|UI 跑到了pd-01上去了) 导致原来定义的 dashboard域名无法打开了。需要修改nginx的proxy_pass为 pd-01的地址就好了
请问大家对这块有什么更好的建议?
有猫万事足
2025 年5 月 27 日 02:48
2
https://docs.pingcap.com/zh/tidb/v7.5/dashboard-ops-deploy/#多-pd-实例部署
各个 PD 首次运行时会自动协商出其中某一个实例提供 TiDB Dashboard 服务。协商完毕后,无论重启或扩容,都会固定在这个实例上运行 TiDB Dashboard 服务,除非该实例被手动缩容。其他 PD 实例不会运行 TiDB Dashboard 服务。这个协商过程无需用户介入,会自动完成。
正常来说,L可能会变,UI标记是不应该变得。除非缩容过。
老鹰506
(Ti D Ber Uhzt Tfx J)
2025 年5 月 27 日 02:51
3
新集群前两天上线,貌似没有做过其他操作呢。 多谢, 我了解下,
老鹰506
(Ti D Ber Uhzt Tfx J)
2025 年5 月 27 日 04:19
4
找到问题了,不是PD切换的问题,是个人想当然的认为pd-01就是主节点了。
先分配的资源,然后就预配置了监控域名,指向了 pd-01 ,
结果集群初始化之后,看到集群选择的是 pd-02作为Leader了
[2025/05/23 15:22:30.655 +08:00] [INFO] [server.go:1605] ["start to watch pd leader"] [pd-leader="name:\"primary-pd-02-cvm\" memb
er_id:2263552736684231025 peer_urls:\"http://172.31.11.62:2380\" client_urls:\"http://172.31.11.62:2379\" "]
有猫万事足
2025 年5 月 27 日 06:23
5
你要想控制pd leader非必要不乱飘也是可以做到的。
https://docs.pingcap.com/zh/tidb/stable/three-data-centers-in-two-cities-deployment/#参数配置优化
设置 PD 的优先级,为了避免出现跨区域 AZ 的 PD 成为 Leader,可以将本区域 AZ 的 PD 优先级调高(数字越大,优先级越高),将跨区域的 PD 优先级调低。在可用的 PD 节点中,优先级数值最大的节点会直接当选 leader。
member leader_priority PD-10 5
member leader_priority PD-11 5
member leader_priority PD-12 5
member leader_priority PD-13 5
member leader_priority PD-14 1
给pd设置一个优先级就好了。除非优先级高的挂了,才会切pd leader。而且挂了的只要起来,会立刻切回来。