K8S简历(十五)

Dashboard是官方的一个基于WEB的用户界面,专门用来管理K8S集群,并可展示集群的状态。K8S集群安装好后默认没有包含Dashboard,我们需要额外创建它。

安装:

在Github中有Dashboard的在线安装路径:
https://github.com/kubernetes/dashboard

url

把图中的命令复制K8S中就可以安装Dashboard了。

预先处理:

查看Dashboard的yaml文件你会发现他的sevice的类型是ClusterIP,大家都知道只有NodePort的serice才可以通过给外部访问,所以我们可以通过kubectl patch的方法对service打补丁。

kubectl patch svc kubernetes-dashboard -p '{"spec":{"type":{"NodePort"}}}' -n kube-system
#需要注意的他的名称空间不是在当前,在系统名称空间。

登录Dashboard:

登录的方法有两个个:kubeconfig,token

token:

流程如下:

kubectl create serviceaccount dashboard-svc -n kube-system
#加了-n kube-system说明你的serviceaccount属于集群级别没加则表示当前名称空间级别。
kubectl clusterrolebinding dashboard-crb --clusterrole=clustrer-admin --serviceaccount=kube-system:dashboard-svc
#一定要指定是哪个名称空间下的svc。
kubectl describe secret [绑定完会自动生成] -n kubectl-system
#secret文件是自动生成的需要自行查看其名称;查看其文件中的token项的值并把他复制到网页中即可登录。

kubeconfig:

kubeconfig的方式其本质就是把上面的token值转换成config文件。
流程如下:

  1. 因为要创建一个新的配置文件所以我们先要创建集群的配置信息:
    kubectl config set-cluster 指定ca证书位置,指定集群IP,最后一定要加上配置文件地址--kubeconfig=路径
  2. 创建用户:
    因为我们使用token的方式创建所以我们要先把token提取出来
kubectl get secret | awk '/^ServiceAccount/{print $1}'
KUBE_TOKEN=$(kubectl get secret SERVCIEACCOUNT_SERRET_NAME -o jsonpath={.data.token} |
base64 -d)
kubectl config set-credentials NAME --token=KUBE_TOKEN --kubeconfig=路径
  1. 添加上下文&设置当前上下文:
kubectl config set-context 
kubectl config use-context

你可能感兴趣的:(K8S简历(十五))