Kubernetes-Dashboard配置跳过登录
版本v1.22.3
kubernetesui/dashboard:v2.4.0
2022年8月11日
启用跳过登录
在kubernetes-dashboard
的命名空间中的deployment
找到kubernetes-dashboard
,编辑yaml 修改如下内容启用跳过登录。
kind: Deployment
apiVersion: apps/v1
metadata:
name: kubernetes-dashboard
namespace: kubernetes-dashboard
略...
spec:
template:
spec:
containers:
- name: kubernetes-dashboard
image: kubernetesui/dashboard:v2.4.0
args:
- '--auto-generate-certificates'
- '--namespace=kubernetes-dashboard'
- '--token-ttl=86400' //会话过期时间
- '--enable-skip-login' //启用跳过登录
ports:
- containerPort: 8443
protocol: TCP
略...
使用kubectl apply -f <spec.yaml>
或者点击仪表板的更新按钮以应用。
配置权限
待重新更新完成后,可以发现登录页有跳过按钮,但是跳过后会提示没有相关的权限。
编辑Cluster Role Bindings中的kubernetes-dashboard
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: kubernetes-dashboard
略...
subjects: //关联的应用账户
- kind: ServiceAccount
name: kubernetes-dashboard
namespace: kubernetes-dashboard
roleRef: //关连的权限
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin //修改为集群权限
使用kubectl apply -f <spec.yaml>
或者点击仪表板的更新按钮以应用。
点击更新的时候可能会报错
cannot change roleRef
,原因是已经存在这个ClusterRoleBinding了,可以将这个yaml复制出来后删除 重新应用。
其实可以发现有俩个都绑定了
kubernetes-dashboard
用户的Role Binding
,一个是ClusterRoleBinding
一个是RoleBinding
。前者作用域是整个集群,优先级也会高一点,所以我们修改集群的role bindin。