我已经使用 demo 配置文件在自己的 eks 群集中部署了 istio 演示带有 kiali 部署。 kiali仪表板的访问密码为(用户名:admin 密码:admin )。我能够使用此凭据访问仪表板。然后,我创建了自己的 secret 。

$ echo shajaltest | base64
$ c2hhamFsdGVzdAo=

删除了kiali的 secret 。
$ kubectl delete secrets kiali -n istio-system

再次使用此部署 secret yaml
apiVersion: v1
kind: Secret
metadata:
  name: kiali
  namespace: istio-system
  labels:
    app: kiali
type: Opaque
data:
  username: c2hhamFsdGVzdAo=
  passphrase: c2hhamFsdGVzdAo=

毕竟,我删除了kiali的 pods 。
之后,我将无法使用该用户名和密码访问仪表板。 我应该怎么办?

我还检查了基亚利的 secret 。它已更新为最近的 secret 值。

这是 kiali pod 的日志。
I0408 18:30:30.194890       1 kiali.go:66] Kiali: Version: v1.15.1, Commit:
3263b7692bcc06ad40292bedea5a9213e04aa9db
I0408 18:30:30.195179       1 kiali.go:205] Using authentication strategy [login]
I0408 18:30:30.195205       1 kiali.go:87] Kiali: Console version: 1.15.0
I0408 18:30:30.195212       1 kiali.go:286] Updating base URL in index.html with [/kiali]
I0408 18:30:30.195376       1 kiali.go:267] Generating env.js from config
I0408 18:30:30.197274       1 server.go:57] Server endpoint will start at [:20001/kiali]
I0408 18:30:30.197285       1 server.go:58] Server endpoint will serve static content from [/opt/kiali/console]
I0408 18:30:30.197297       1 metrics_server.go:18] Starting Metrics Server on [:9090]
I0408 18:30:30.197367       1 kiali.go:137] Secret is now available.

最佳答案

您是否尝试按照istio documentation更改kiali中的凭据?

我按照以下步骤复制了您的问题,一切正常。


KIALI_USERNAME=$(read -p 'Kiali Username: ' uval && echo -n $uval | base64)


KIALI_PASSPHRASE=$(read -sp 'Kiali Passphrase: ' pval && echo -n $pval | base64)


NAMESPACE=istio-system
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
metadata:
  name: kiali
  namespace: $NAMESPACE
  labels:
    app: kiali
type: Opaque
data:
  username: $KIALI_USERNAME
  passphrase: $KIALI_PASSPHRASE
EOF

并简单地用
kubectl delete pod <name_of_the_kiali_pod> -n istio-system

编辑

正如@Shajal Ahamed在评论中提到的,问题是缺少-n,如果您只想使用echo,请使用。
echo -n username | base64
echo -n passphrase | base64

10-04 22:59