本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard

安装k8s集群管理UI

1 Dashboard安装

1.1 参考文档

Dashboard 是基于网页的 Kubernetes 用户界面。 你可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中,也可以对容器应用排错,还能管理集群资源。 你可以使用 Dashboard 获取运行在集群中的应用的概览信息,也可以创建或者修改 Kubernetes 资源 (如 Deployment,Job,DaemonSet 等等)。 例如,你可以对 Deployment 实现弹性伸缩、发起滚动升级、重启 Pod 或者使用向导创建新的应用。

https://kubernetes.io/zh/docs/tasks/access-application-cluster/web-ui-dashboard/

1.2 部署 Dashboard UI

可以通过以下命令部署:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml

检验是否安装成功

$ kubectl get pods -A -o wide
kubernetes-dashboard   dashboard-metrics-scraper-7bfdf779ff-cmxzt   1/1     Running   1 (4m14s ago)   3d4h   10.0.0.43      k8snode1    <none>           <none>
kubernetes-dashboard   kubernetes-dashboard-6cdd697d84-z6q5l        1/1     Running   1 (4m11s ago)   3d4h   10.0.1.20      k8snode2    <none>           <none>

1.3 访问 Dashboard UI

参考文档: https://github.com/kubernetes/dashboard/blob/master/docs/user/accessing-dashboard/README.md

1.3.1 本机访问

你可以使用 kubectl 命令行工具来启用 Dashboard 访问,命令如下:

$ kubectl proxy
Starting to serve on 127.0.0.1:8001

kubectl 会使得 Dashboard 可以通过 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 访问
更多参数参考:kubectl proxy -h
请注意:UI只能在master这个机器上访问
本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard_第1张图片

1.3.2 通过端口转发访问

通过以下命令开启转发:

$ kubectl port-forward -n kubernetes-dashboard service/kubernetes-dashboard 8080:443 --address=0.0.0.0
Forwarding from 0.0.0.0:8080 -> 8443

打开浏览器输入以下地址访问:https://192.168.56.3:8080
本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard_第2张图片
UI界面能访问了,但是没有token,还不能登录。

1.4 生成Token并登录

在master机器上创建dashboard.yml,并输入以下内容:

# Creating a Service Account
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard

---
# Creating a ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kubernetes-dashboard

运行:

$ kubectl apply -f dashboard.yml
serviceaccount/admin-user created
clusterrolebinding.rbac.authorization.k8s.io/admin-user created

生成token:

$ kubectl -n kubernetes-dashboard create token admin-user
eyJhbGciOiJSUzI1NiIsImtpZCI6ImF6RVB3WWNSZ001RTdacUFtWTBRdVBhRVVRLXZEdHg4cV9kblhFcldYSmcifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNjU0MzMyNTIxLCJpYXQiOjE2NTQzMjg5MjEsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJhZG1pbi11c2VyIiwidWlkIjoiMDM3YTIwODYtMjZiYy00MDIyLWE5ZDAtNTVhNDJlYWI0MDBiIn19LCJuYmYiOjE2NTQzMjg5MjEsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlcm5ldGVzLWRhc2hib2FyZDphZG1pbi11c2VyIn0.lBjrs8-ZavRr_pIXw8PMb6__kYuybAHUzZ8JdIFBckeWUmkuj0M9qjPr9EJHdfDpbJ2g2wAdMwka5KR0eEzPVQbD168V0z1HDfmAZPETMpjgPCURhxZCCMvK2ceg5xdxyfTDYnMAmJh3rstRlxCkmazi_Dc09VLA5LBPiU59zOPzalKHfC_l-7XXVXoJ3t6XKexj4QZZ5mvPfWgdzEJwfFLQvSymnEYJPI0o4973srvsOi7C3dNmFeL581YZNS3jfzIeyY0Efivpa-AxKisnRc9T2M6K6Ab8F_OyU0Q-1IHa9ZBqh2_4sQAhby_cAHQgarwKJ-Zaji82QtSLm89W_Q

然后重新开启端口转发,打开浏览器访问:https://192.168.56.3:8080
并输入上面生成的Token本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard_第3张图片
成功登录后:
本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard_第4张图片
大门已为你开启,探索就交给你了!

上篇

本地k8s集群搭建保姆级教程(3)-安装k8s集群

下篇

本地k8s集群搭建保姆级教程(5)-安装k8s监控Prometheus+Grafana

结尾

此教程结束了,谢谢阅读!
若有遇到问题,欢迎评论区留言交流!

欢迎关注我的微信公众号,不定期更新,谢谢
本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard_第5张图片

你可能感兴趣的:(Devops,Linux/Unix,kubernetes,docker,linux,云原生,devops)