k8s 快速搭建Dashborad-admin界面-token方式

为了更加方便的管理和可视化的展示k8s集群信息,下面将快速的安装K8sUI管理界面:

1) 指定Dashborad的运行节点

1、给master主机设置一个label

kubectl label nodes k8s-master master=node1

2、拉取镜像

docker pull mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1

3、重新打标签(这一步的目的是修改镜像地址,使其绕过官网下载,你懂的)

docker tag mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1 k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1

4、删除无用镜像

docker rmi mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1

5、下载 yaml文件 

wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

问题一: 当wget出现如下错误:

Unable to establish SSL connection

解决方案:升级wget

# yum update wget

6、修改yaml文件内容,增加和修改的内容红色标注了

vim kubernetes-dashboard.yaml

apiVersion: v1

kind: Service

metadata:

  annotations:

    kubectl.kubernetes.io/last-applied-configuration: |

      {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"k8s-app":"kubernetes-dashboard"},"name":"kubernetes-dashboard","namespace":"kube-system"},"spec":{"ports":[{"port":443,"targetPort":8443}],"selector":{"k8s-app":"kubernetes-dashboard"}}}

  creationTimestamp: 2020-03-14T10:08:28Z

  labels:

    k8s-app: kubernetes-dashboard

  name: kubernetes-dashboard

  namespace: kube-system

  resourceVersion: "17059"

  selfLink: /api/v1/namespaces/kube-system/services/kubernetes-dashboard

  uid: c0154d73-65db-11ea-96d5-000c290100b3

spec:

  clusterIP: 10.109.106.102

  externalTrafficPolicy: Cluster

  ports:

  - nodePort: 30443  (增加nodePort方式,使其外部可以访问)

    port: 443

    protocol: TCP

    targetPort: 8443

  selector:

    k8s-app: kubernetes-dashboard

  sessionAffinity: None

  type: NodePort(修改为NodePort)

status:

  loadBalancer: {}

保存退出。
 
7、应用此资源清单:
 
kubectl apply -f kubernetes-dashboard.yaml
 

8、查看dashboard的POD是否正常启动,如果正常说明安装成功

kubectl get pods --namespace=kube-system

9、Token方式登录需要执行下面命令:
 
kubectl create serviceaccount mysa -n default
 
kubectl create clusterrolebinding dashboard-admin --clusterrole=admin --serviceaccount=default:mysa
 
kubectl get secret
 
kubectl describe secret mysa-token-cq7kh
 
token:       eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6Im15c2EtdG9rZW4tY3E3a2giLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoibXlzYSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjJjMDNjZWRmLTY1ZjUtMTFlYS05NmQ1LTAwMGMyOTAxMDBiMyIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZWZhdWx0Om15c2EifQ.j6A2xVeyz9EPezh0Aje3nL9UrqBMLdSZ1LZaGzb3L8IXLCGUp1FNy7yMEvjH3kytWxpINIk9ssKZrEvzQHL0sGXeqs0W94Hd2dVxIfbZJpj5vrbizYlV1pyEvRrbuW5qFpop72Vmrpy2CuSPcT4xMz0CI45i4RXXsUO22IOMojk4dJMR16nzNgsSMatMVcCIfnesj3YJFdikdRTRDC04hSRFjWBLGGs5XBDCBynsRs3qDBBMg9zzGKLkizhkoOank9pu3SfVGsdjlNHD3eM4MQwUc1Vz6lpo73i1Ly0T6Q2M0HGsUeAiti-J-IsgoA5UAFbYckCM-uOwcn5dx6k-fA
 
上述就安装和创建登录token,可以访问了。
 
访问方式例如: https://192.168.182.131:30443/  (IP为节点的(master)的IP,端口为刚才修改yaml文件中nodePort的端口)
 
注意:上述验证的浏览器为Firefox,其他的浏览器都会安全拦截。

猜你喜欢

转载自blog.csdn.net/qq_16481385/article/details/104923764