EMQX登录dashboard提示异常

目前登录dashboard提示登录已过期,网络错误等报错


然后看了下浏览器的检查发现报错是这样

大概是提示
{“code”:“BAD_TOKEN”,“message”:“Get a token by POST /login”}

并且尝试修复过密码 依旧无法登录
[root@lb ssl-cert-tools]# kubectl exec -it -n prod emqx-core-6f4986f6d8-0 – bash
emqx@emqx-core-6f4986f6d8-0:/opt/emqx$ emqx_ctl admins passwd admin PvQxxxxxwRg

EMQX 版本是?

  • 尝试清除一下浏览器缓存
    Chrome 浏览器可以按住 Shift 并点击刷新按钮

版本是5.1的,然后无痕模式也不行,现在是我重新启动了下emqx的operator然后重载部署配置文件然后就打开了,但还是报错:

突然就这样了。。。现在原因还不清楚

部署的 EMQX 集群有 LB 么?
感觉有点像 LB 把不同的 API 请求发送到不同的节点上了,但这几个节点之间没有组成集群,同一个套用户名密码在某些节点上更改成功了,但某些节点上没有被更改所以有 401 错误.

emqx是集群模式,用的ingress做dashboard的负载,运行在k8s集群上

现在打开基本上是这样显示了

请教大佬,请问我现在是需要再次删除emqx的全部节点才能恢复正常嘛?

EMQX 是如何集群的?

Operator

没太明白发生了什么。。理论上 EMQX Dashboard 访问 EMQX HTTP API 不应该出现 401 错误才对。。

  1. 方便使用下最新 Operator 部署下最新的版本试试么?
  2. 登陆正常时,检查下 Dashboard 上现实的 EMQX 集群,看是否每个节点都在集群里呢

@WingGundam 分享一下 ingress 的 YAML 么

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: emqx-dash-ingress
namespace: xxxxxx
spec:
ingressClassName: nginx
rules:

  • host: emqxdash.prod.xxxxxx.cn
    http:
    paths:
    • pathType: Prefix
      path: “/”
      backend:
      service:
      name: emqx-dashboard
      port:
      number: 18083

尝试一下绕过 ingres 直接访问 EMQX Dashboard 呢? 你可以把 EMQX dashboard svc port forward 到本地,像这样:

kubectl port-forward -n $namespace svc/$svc_name 18083

然后访问 localhost:18083

好的 我试试