1. 安裝kubernetes-dashboard
下載recommended.yaml
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc5/aio/deploy/recommended.yaml
修改recommended.yaml
找到代碼中的Service
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
# 指定網絡類型(一種內網ClusterIp,三種外網NodePort,NodeBalance,Ingress),默認內網訪問
# 本次使用NodePort (新添加)
type: NodePort
ports:
# service暴露443端口
- port: 443
# 容器暴露的端口
targetPort: 8443
# 指定NodePort端口(新添加)
nodePort: 30520
安裝
kubectl apply -f recommended.yaml
卸載(非必須)
kubectl delete -f recommended.yaml
查看安裝狀態:
- 查看pod
kubectl get pod,svc -o wide --namespace=kubernetes-dashboard
可以使用node2節點ip的30520端口訪問,需要使用https
https://node2ip:30520,因爲證書不是正版,使用chrome,和safari 都打不開, 可以使用firefox瀏覽器打開
這裏使用token方式進入
創建登錄的token獲取
創建dashboard-adminuser.yaml,文件中添加如下內容
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
namespace: kubernetes-dashboard
執行文件
kubectl apply -f dashboard-adminuser.yaml
打印token信息
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')