1. 程式人生 > 程式設計 >K8S學習指南(二)---安裝Kubernetes Dashboard 儀表盤

K8S學習指南(二)---安裝Kubernetes Dashboard 儀表盤

K8S學習指南(二)---安裝Kubernetes Dashboard 儀表盤

Kubernetes Dashboard 概述

Kubernetes Dashboard 是一個管理Kubernetes叢集的全功能Web介面,旨在以UI的方式完全替代命令列工具(kubectl 等)


建立賬號

部署之前要建立好相對應的賬號和金鑰

建立服務賬號

首先建立一個叫admin-user的服務賬號,並放在kubernetes-dashboard名稱空間下

# admin-user.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
namespace: kube-system 複製程式碼

執行kubectl create:

kubectl create -f admin-user.yaml
複製程式碼

繫結角色

在大多數情況下,使用kopskubeadm任何其他流行的工具配置集群后,叢集中ClusterRole admin-Role已經存在該叢集。我們可以使用它並僅為ClusterRoleBinding我們建立ServiceAccount

# admin-user-role-binding.yaml
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kube-system 複製程式碼

執行kubectl create:

kubectl create -f admin-user-role-binding.yaml
複製程式碼

建立證書

對於API Server來說,它是使用證書進行認證的,我們需要先建立一個證書:

  1. 首先找到kubectl命令的配置檔案,預設情況下為/etc/kubernetes/admin.conf,複製到了~/.kube/config
cp -f /etc/kubernetes/admin.conf ~/.kube/config
複製程式碼
  1. 生成client-certificate-data
cd ~
grep 'client-certificate-data' ~/.kube/config | head -n 1 | awk '{print $2}' | base64 -d >> kubecfg.crt
複製程式碼
  1. 生成client-key-data
cd ~
grep 'client-key-data' ~/.kube/config | head -n 1 | awk '{print $2}' | base64 -d >> kubecfg.key
複製程式碼
  1. 生成p12
cd ~
openssl pkcs12 -export -clcerts -inkey kubecfg.key -in kubecfg.crt -out kubecfg.p12 -name "kubernetes-client" -passout pass:
複製程式碼
  1. 下載kubecfg.p12 匯入到本地,重啟瀏覽器生效
    avatar

部署Kubernetes Dashboard

下載安裝

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta6/aio/deploy/recommended.yaml
複製程式碼

檢視登陸的Token

kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')


Name:         admin-user-token-rbz5j
Namespace:    kube-system
Labels:       <none>
Annotations:  kubernetes.io/service-account.name: admin-user
              kubernetes.io/service-account.uid: 56c6497f-2de4-45f8-a284-c469048a6ac0

Type:  kubernetes.io/service-account-token

Data
====
ca.crt:     1066 bytes
namespace:  11 bytes

token:      <YOUR TOKEN>
複製程式碼

瀏覽器登陸 https://<master-ip>:<apiserver-port>/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

例如 https://<IP地址>:8443/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

點選同意證書

avatar

輸入Token

avatar

至此,Kubernetes Dashboard 已經安裝完成

avatar


快速安裝

curl -sL https://raw.githubusercontent.com/charSLee013/Kubernetes-learn/master/chapter02/kubernetes-install-dashboard.sh | bash
複製程式碼

安裝完成後,記得先從機器下載kubecfg.p12,然後重啟瀏覽器再開啟web介面


更多學習文章在點選訪問