dashboard 用户登录认证失败:authenticate failed

【 TiDB 使用环境】测试
【 TiDB 版本】
V7.1.0

【复现路径】做过哪些操作出现的问题
原有集群关闭,新增一套新的集群,新集群的pd与原有老集群pd的节点不重合,所以端口仍为2379,其他组件均修改端口。
同时也做了ip 透传设置:
proxy-protocol.networks: 1xx.xxx.xxx.183,1xx.xxx.xxx.184

在tidb server节点无pd的节点上做中控机安装集群

Cluster type:       tidb
Cluster name:       testdlstrack
Cluster version:    v7.1.0
Deploy user:        tidb
SSH type:           builtin
Dashboard URL:      http://1xx.xxx.xxx.183:2379/dashboard
Grafana URL:        http://1xx.xxx.xxx.181:3001
ID                    Role        Host            Ports        OS/Arch       Status  Data Dir                                Deploy Dir
--                    ----        ----            -----        -------       ------  --------                                ----------
1xx.xxx.xxx.181:3001   grafana     1xx.xxx.xxx.181  3001         linux/x86_64  Up      -                                       /opt/tidbdls/tidb-deploy/grafana-3001
1xx.xxx.xxx.182:2379   pd          1xx.xxx.xxx.182  2379/2380    linux/x86_64  Up|L    /opt/tidbdls/tidb-data/pd-2379          /opt/tidbdls/tidb-deploy/pd-2379
1xx.xxx.xxx.183:2379   pd          1xx.xxx.xxx.183  2379/2380    linux/x86_64  Up|UI   /opt/tidbdls/tidb-data/pd-2379          /opt/tidbdls/tidb-deploy/pd-2379
1xx.xxx.xxx.184:2379   pd          1xx.xxx.xxx.184  2379/2380    linux/x86_64  Up      /opt/tidbdls/tidb-data/pd-2379          /opt/tidbdls/tidb-deploy/pd-2379
1xx.xxx.xxx.181:9091   prometheus  1xx.xxx.xxx.181  9091/12021   linux/x86_64  Up      /opt/tidbdls/tidb-data/prometheus-9091  /opt/tidbdls/tidb-deploy/prometheus-9091
1xx.xxx.xxx.181:4001   tidb        1xx.xxx.xxx.181  4001/10081   linux/x86_64  Up      -                                       /opt/tidbdls/tidb-deploy/tidb-4001
1xx.xxx.xxx.182:4001   tidb        1xx.xxx.xxx.182  4001/10081   linux/x86_64  Up      -                                       /opt/tidbdls/tidb-deploy/tidb-4001
1xx.xxx.xxx.183:20160  tikv        1xx.xxx.xxx.183  20160/20180  linux/x86_64  Up      /opt/tidbdls/tidb-data/tikv-20160       /opt/tidbdls/tidb-deploy/tikv-20160
1xx.xxx.xxx.183:20161  tikv        1xx.xxx.xxx.183  20161/20181  linux/x86_64  Up      /opt/tidbdls/tidb-data/tikv-20161       /opt/tidbdls/tidb-deploy/tikv-20161
1xx.xxx.xxx.184:20160  tikv        1xx.xxx.xxx.184  20160/20180  linux/x86_64  Up      /opt/tidbdls/tidb-data/tikv-20160       /opt/tidbdls/tidb-deploy/tikv-20160
1xx.xxx.xxx.184:20161  tikv        1xx.xxx.xxx.184  20161/20181  linux/x86_64  Up      /opt/tidbdls/tidb-data/tikv-20161       /opt/tidbdls/tidb-deploy/tikv-20161

【遇到的问题:问题现象及影响】
已经修改了root密码,都可以登录,也新增了dashboardAdmin用户也不可以,一样的报错。
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
具体报错:
登录失败: authenticate failed, caused by: commands out of sync. You can’t run this command now

具体报错图:
image

重启下对应的pd节点试试

我试一下。

重启也不行,感觉哪里同步有问题。开了透传好像有这个问题,不开就可以登录dashboard。

haproxy单独部署

你是不是开启了单点登录啊?

单独部署是什么意思,不和tidb所有组件吗?

你开了haproxy透传的话,不能在haproxy那台机器上通过4000端口来登录tidb了,换个机器部署haproxy吧。。。。

用haproxy做了负载均衡,有vip,限制了2台haproxy的主机使用vip登录。你说的单节点登录是指哪样的?

但是我没有用相同的端口,有而不可以吗?我其他都正常,只有dashboard报错。
目前的话,就是haproxy目前的主节点和dashboard的这个登录节点是同一个主机,有没有关系。


proxy-protocol.networks: 1xx.xxx.xxx.183,1xx.xxx.xxx.184
这个配置会限制1xx.xxx.xxx.183,1xx.xxx.xxx.184这两个地址只能够通过proxy协议登录tidb-server,不能通过普通协议了,你可以在这两个机器上手工登陆下tidb-server就明白了

不通过vip的确登录不了,

那我把dashboard切换到非haproxy节点节点是不是可以啊,我看官网有写可以切换节点。
https://docs.pingcap.com/zh/tidb/stable/dashboard-ops-deploy

补充具体过程:
分析:
1.透传的节点为:安装了haproxy,限制使用183/184个节点必须通过vip登录。
开了透传,限制了183,184必须通过vip登录。
proxy-protocol.networks: 1xx.xxx.xxx.183,1xx.xxx.xxx.184

尝试直接登录tidb server可以看到不允许登录,必须通过harpoxy设置的vip登录。

[quote=“TiDB_silent, post:12, topic:1015386”]

2.dashboard节点在透传的183主机上,
$ tiup cluster display testdlstrack --dashboard
tiup is checking updates for component cluster …
Starting component cluster: /home/tidb/.tiup/components/cluster/v1.12.2/tiup-cluster display testdlstrack --dashboard
Dashboard URL: http://1xx.xxx.xxx.183:2379/dashboard/

根据前面tidb菜鸟老师的怀疑点,可能是因为透传限制了不能直连,导致登录失败,之前不开透传的确dashboard没有问题,这个怀疑的点可能性比较大。感谢给出的具体方向。

3.官方给出虽然dashboard直连pd leader节点,但是可以切换dashboard运行节点。
https://docs.pingcap.com/zh/tidb/stable/dashboard-ops-deploy

实际解决:
**结论:**pd 节点在:182,183,184,把dashboard切换到非透传限制的182节点,再次登录无异常。
步骤:
切换dashboard节点到182非透传限制节点:

再次登录无异常:

1 个赞

谢谢分享,之前用过HAProxy做过代理,但是没有碰到你说的这种情况

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。