Kubernetes Dashboard 安裝

bluepeach發表於2021-09-09

Kubernetes Dashboard 的安裝過程比較曲折,拿起又放下,直到發現它的價值,必須要安裝成功。

1. 環境

虛擬機器:VMware

系統:Centos 7

Kubernetes:v1.18.0

Docker:19.03.12

Kubernetes Dashboard:v2.0.1

2. 準備

Kubernetes Dashboard 的每個版本可能會支援Kubernetes的不同版本,請根據Kubernetes的版本選擇Dashboard的版本。

1 ## kubernetes 版本號檢視命令
2 # kubectl version
3 ## docker 版本號檢視命令
4 # docker version

下載地址:https://github.com/kubernetes/dashboard/releases

PS:這裡提供我使用的版本(相關資訊都已經配置完成,可以直接跳過下一個步驟),v2.0.1:下載

3. 修改recommended.yaml檔案

官方檔案缺少或者需要修改部分資訊才能正常執行。

 3.1 增加對於NodePort的支援(可選)

這樣釋出成功之後不需要執行kubectl proxy命令,可以直接採用Node IP+埠進行訪問

 3.2 增加對於許可權的支援(可選)

 3.3 叢集角色授權

修改叢集許可權(resources欄位描述是可以操作哪些資源,verbs欄位描述的是可以對資源進行哪些操作)

 3.4 替換映象地址

映象地址改為國內映象地址(2處需要修改)

 

 3.5 增加 dashboard-admin 賬戶

在檔案最後增加以下內容:

 1 --- 
 2 
 3 # ------------------- dashboard-admin ------------------- #
 4 apiVersion: v1
 5 kind: ServiceAccount
 6 metadata:
 7   name: dashboard-admin
 8   namespace: kubernetes-dashboard
 9 ---
10 apiVersion: rbac.authorization.k8s.io/v1
11 kind: ClusterRoleBinding
12 metadata:
13   name: dashboard-admin
14 subjects:
15 - kind: ServiceAccount
16   name: dashboard-admin
17   namespace: kubernetes-dashboard
18 roleRef:
19   apiGroup: rbac.authorization.k8s.io
20   kind: ClusterRole
21   name: cluster-admin

4. 執行

在master節點,執行以下命令:

1 kubectl apply -f dashboard-recommended.yaml

執行成功之後,執行以下命令檢視登入所需要的Token

1 kubectl describe secret -n kubernetes-dashboard $(kubectl get secret -n kubernetes-dashboard |grep  kubernetes-dashboard-token | awk '{print $1}') |grep token | awk '{print $2}'

PS:

如提示許可權不足,請修改 3.3 步驟中內容,增加對應的資源許可權即可。

5. 總結

  • 官方的文件不一定就是完美的、適合你的、可以直接執行的,有的時候需要 “本地化” 改成適合自己的
  • 排除一切可能(或假設),當僅剩下唯一的選項時,無論是多麼的不可思議它都是事實

 

相關文章