1 概述

  • 之前在kubernetes中完成的所有操作都是通过命令行工具kubectl完成的。其实,为了提供更丰富的用户体验,kubernetes还开发了一个基于web的用户界面(DashBoard)。用户可以使用DashBoard部署容器化的应用,而且还可以监控应用的状态,执行故障排查以及管理kubernetes中的各种资源。

2 部署DashBoard

2.1 下载yaml,并运行DashBoard

  1. wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml
  • 修改kubernetes-dashboard的Service类型
  1. vim recommended.yaml
  1. kind: Service
  2. apiVersion: v1
  3. metadata:
  4. labels:
  5. k8s-app: kubernetes-dashboard
  6. name: kubernetes-dashboard
  7. namespace: kubernetes-dashboard
  8. spec:
  9. type: NodePort # 新增
  10. ports:
  11. - port: 443
  12. targetPort: 8443
  13. nodePort: 30009 # 新增
  14. selector:
  15. k8s-app: kubernetes-dashboard

修改kubernetes-dashboard的Service类型.png

  • 部署DashBoard:
  1. kubectl create -f recommended.yaml

部署DashBoard.png

  • 查看namespace为kubernetes-dashboard下的资源:
  1. kubectl get pod,svc -n kubernetes-dashboard

查看namespace为kubernetes-dashboard下的资源.png

2.2 创建账户,获取token

  • 创建账户:
  1. kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard

创建账户.png

  • 授权:
  1. kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin

授权.png

  • 获取账号token:
  1. kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin

获取账号token1.png

  1. kubectl describe secrets dashboard-admin-token-b992l -n kubernetes-dashboard

获取账号token2.png

2.3 通过浏览器访问DashBoard的UI

在登录页面输入上面的token.png

  • 出现下面的页面代表成功部署DashBoard:

成功部署DashBoard.png

转载 https://www.yuque.com/fairy-era/yg511q/tlk5xi