站点图标 星露谷值班站长

Helm安装Kubernetes-Dashboard CSRFKEY问题解决

使用 Helm 安装 kubernetes-dashboard

# Add kubernetes-dashboard repository
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
# Deploy a Helm Release named "kubernetes-dashboard" using the kubernetes-dashboard chart
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard

报错如下:

helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard
Release "kubernetes-dashboard" does not exist. Installing it now.
Error: template: kubernetes-dashboard/templates/secrets/csrf.yaml:22:6: executing "kubernetes-dashboard/templates/secrets/csrf.yaml" at <include "kubernetes-dashboard.app.csrf.secret.value" .>: error calling include: template: kubernetes-dashboard/templates/_helpers.tpl:83:63: executing "kubernetes-dashboard.app.csrf.secret.value" at <$secret.data>: wrong type for value; expected map[string]interface {}; got interface {}

解决方法:

这个问题是因为 csrfkey 生成问题,这里我们可以手动生成一个 256 随机字符并使用 base64 进行编码

mkpasswd -l 255|base64 -w 0

这里我使用密码命令结合 base64 进行编码,你也可以使用其他语言对编码进行处理

修改 values.yml 文件

填入生成的 key 就可以了

再次执行命令安装就没有问题了

退出移动版