深入玩轉K8S之Kubernetes1.10中部署dashboard以及常見問題解析

上篇文章中介紹了用kubeadm安裝Kubernetes1.10,本篇我們來一睹Kubernetes Dashboard風采。


老規矩,先介紹下環境:

Kubernetes1.10,Dashboard1.8.3


在k8s中 dashboard可以有兩種訪問方式:kubeconfig(HTTPS)和token(http)本篇先來介紹下Token方式的訪問。


Token訪問是無登錄密碼的,簡單方便

1.下載官方的dashboard YAML文件或者下載我的YAML(無坑版)

# 官網版
https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
# 修改版
https://github.com/gh-Devin/kubernetes-dashboard/blob/master/kubernetes-dashboard.yaml
# 你下載完之後開始修改YAML文件,修改內容如下

image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.3

修改文件裏面的鏡像爲自己可用的鏡像,也就是上篇文章使用kubeadm安裝Kubernetes v1.10以及常見問題解答中讓你提前下載到本地的K8S相關的鏡像,這裏也要注意鏡像版本要一致,不然也會報錯。

提示:下載官網版YAML需要***。


爲了避免不必要的報錯和坑,建議大家採用我的修改版,裏面有heapster插件YAML和RBAC YAML。

https://github.com/gh-Devin/kubernetes-dashboard


2.創建pod

下載完上面的YAML文件之後,開始創建pod

[root@k8smaster devin]# ls
heapster-rbac.yaml  heapster.yaml  kubernetes-dashboard-admin.rbac.yaml  kubernetes-dashboard.yaml

[root@k8smaster devin]# kubectl  -n kube-system create -f .


3.查看pod

[root@k8smaster devin]# kubectl get svc,pod --all-namespaces | grep dashboard


注意:前方高能,報錯多發區。


如果採用官方YAML,就會出現以下報錯

K8S.jpg

這是因爲K8S在1.6版本以後啓用了RBAC訪問控制策略,可以使用kubectl或Kubernetes API進行配置。使用RBAC可以直接授權給用戶,讓用戶擁有授權管理的權限,這樣就不再需要直接觸碰Master Node。


下面教你如何解決以上報錯問題,如果你下載的是官方版本,修改kubernetes-dashboard.yaml文件中的ServiceAccount名稱

[root@k8smaster devin]# vi kubernetes-dashboard.yaml

146 serviceAccountName: kubernetes-dashboard-admin

[root@k8smaster devin]# kubectl apply -f kubernetes-dashboard.yaml -f kubernetes-dashboard-admin.rbac.yaml


至此Dashboard就可以採用token方式來訪問,如果沒有修改dashboard YAML文件裏面的ip和端口的話可以直接訪問K8S Master IP地址+30090即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章