部署 dashboard 插件
阿新 • • 發佈:2019-05-15
ati tro create ast bec doc ready ogl 指定
註意:如果沒有特殊指明,本文檔的所有操作均在 k8s-master1 節點上執行。
修改配置文件
下載的 kubernetes-server-linux-amd64.tar.gz 解壓後,再解壓其中的 kubernetes-src.tar.gz 文件。
dashboard 對應的目錄是:cluster/addons/dashboard
。
cd /opt/k8s/work/kubernetes/cluster/addons/dashboard
$ cat dashboard-service.yaml apiVersion: v1 kind: Service metadata: name: kubernetes-dashboard namespace: kube-system labels: k8s-app: kubernetes-dashboard kubernetes.io/cluster-service: "true" addonmanager.kubernetes.io/mode: Reconcile spec: type: NodePort # 增加這一行 selector: k8s-app: kubernetes-dashboard ports: - port: 443 targetPort: 8443
- 指定端口類型為 NodePort,這樣外界可以通過地址 nodeIP:nodePort 訪問 dashboard;
執行所有定義文件
$ ls *.yaml dashboard-configmap.yaml dashboard-controller.yaml dashboard-rbac.yaml dashboard-secret.yaml dashboard-service.yaml $ kubectl create -f .
查看分配的 NodePort
[[email protected] dashboard]# kubectl get deployment kubernetes-dashboard -n kube-system -o wide NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTOR kubernetes-dashboard 1/1 1 1 5m39s kubernetes-dashboard k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1 k8s-app=kubernetes-dashboard
如果kubernetes-dashboard-amd64:v1.10.1 鏡像拉取失敗,可在所有工作節點執行
images=( kubernetes-dashboard-amd64:v1.10.1 ) for imageName in ${images[@]} ; do docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName done
- NodePort 32014 映射到 dashboard pod 443 端口;
dashboard 的 --authentication-mode 支持 token、basic,默認為 token。如果使用 basic,則 kube-apiserver 必須配置 ‘--authorization-mode=ABAC‘ 和 ‘--basic-auth-file‘ 參數。
查看 dashboard 支持的命令行參數
部署 dashboard 插件