参考:https://zhuanlan.zhihu.com/p/595657422
dashboard地址:https://github.com/kubernetes/dashboard/
本次安装的环境:k8s 集群版本为 v1.25,dashboard 的版本是 v2.7.0。
1、下载yaml文件
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
2、修改yaml文件的service和token过期时间,token-ttl=0表示永不过期
大概32行 32 kind: Service 33 apiVersion: v1 34 metadata: 35 labels: 36 k8s-app: kubernetes-dashboard 37 name: kubernetes-dashboard 38 namespace: kubernetes-dashboard 39 spec: 40 type: NodePort # 新增 41 ports: 42 - port: 443 43 targetPort: 8443 44 nodePort: 31443 # 新增 45 selector: 46 k8s-app: kubernetes-dashboard
大概200行 200 args: 201 - --auto-generate-certificates 202 - --namespace=kubernetes-dashboard 203 - -–token-ttl=0 # 新增
3、创建dashboard
# 创建 kubectl apply -f recommended.yaml # 查看 pod 状态 kubectl get pod -n kubernetes-dashboard
4、创建用户
创建一个 dashboard-admin 用户,并绑定角色 cluster-admin,用以获取登录的 token。
# 创建 dashboard-admin 用户 kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard # 绑定 clusterrolebinding kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
5、创建token
在以前版本的 kubernetes 中,进行了创建 serviceaccount 会自动生成一个 Secret 里面存放 token 值,但是新版本不会这样做了。
vim dashboard-admin-token.yaml apiVersion: v1 kind: Secret metadata: name: dashboard-admin-secret namespace: kubernetes-dashboard annotations: kubernetes.io/service-account.name: dashboard-admin type: kubernetes.io/service-account-token
6、获取token
kubectl describe secret dashboard-admin-secret -n kubernetes-dashboard
7、访问 https://任一节点ip:31443
端口,将 token 填写进行登录即可
标签:kubectl,kubernetes,admin,yaml,token,dashboard,k8s,1.25 From: https://www.cnblogs.com/lfxx/p/18460717