K8S-Dashboard

2018-07-02
學習筆記

建置K8S-Dashboard

Kubernetes有官方的Dashboard可以查看資訊,來自己建一個試試看吧~

佈署官方文件kubernetes-dashboard.yaml

1
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

dashboard02

生成client-certificate-data

1
grep 'client-certificate-data' ~/.kube/config | head -n 1 | awk '{print $2}' | base64 -d >> kubecfg.crt

生成client-key-data

1
grep 'client-key-data' ~/.kube/config | head -n 1 | awk '{print $2}' | base64 -d >> kubecfg.key

生成p12

1
openssl pkcs12 -export -clcerts -inkey kubecfg.key -in kubecfg.crt -out kubecfg.p12 -name "kubernetes-client"

dashboard03
密碼隨意,可打可不打

查看檔案,並將kubecfg.p12複製到本機
dashboard04

開啟google瀏覽器,至設定→管理憑證→將剛剛的kubecfg.p12匯入
憑證名子自己取
dashboard09

創一個kubernetes-dashboard-admin.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
apiVersion: v1
kind: ServiceAccount
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard-admin
namespace: kube-system

---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: kubernetes-dashboard-admin
labels:
k8s-app: kubernetes-dashboard
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: kubernetes-dashboard-admin
namespace: kube-system

佈署kubernetes-dashboard-admin.yaml

1
kubectl apply -f kubernetes-dashboard-admin.yaml

取得key完整名稱

1
kubectl -n kube-system get secret | grep kubernetes-dashboard-admin

將紅框內key的名稱複製
dashboard05

describe剛剛複製的key名稱,取得key完整內容,並將整段key複製起來

1
ubectl describe -n kube-system secret/kubernetes-dashboard-admin-token-bk7fq

dashboard06

新開一個無痕視窗訪問網址

https://MasterIP:6443/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/overview?namespace=default

請打上自己的MasterIP

看到登入畫面,選擇用token登入,將剛剛複製起來的整串key貼上,並且登入
dashboard07

薑薑!!可以看到Dashboard惹~
dashboard08