一、准备部署文件
mkdir -p /data/dashboard && cd /data/dashboard
wget -c https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.0/aio/deploy/recommended.yaml
cat > admin-user.yaml <<eof
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
eof
cat > admin-secert.yaml <<eof
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
name: dashboard-admin-user
namespace: kubernetes-dashboard
annotations:
kubernetes.io/service-account.name: "admin-user"
eof
二、改配置
vim /data/dashboard/recommended.yaml
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
type: NodePort # 新增此行
ports:
- port: 443
targetPort: 8443
nodePort: 30000 # 新增此行
selector:
k8s-app: kubernetes-dashboard
三、部署
kubectl apply -f /data/dashboard/recommended.yaml
kubectl apply -f /data/dashboard/admin-user.yaml
kubectl apply -f /data/dashboard/admin-secret.yaml
kubectl describe secrets dashboard-admin-user -n kubernetes-dashboard # 获取key登陆
四、WEB访问
浏览器地址输入任意一台Node的IP地址访问
https://10.0.7.21:30000