1 概述

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

2 部署DashBoard

2.1 下载yaml,并运行DashBoard

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml

  • 修改kubernetes-dashboard的Service类型

vim recommended.yaml

kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
type: NodePort # 新增
ports:
- port: 443
targetPort: 8443
nodePort: 30009 # 新增
selector:
k8s-app: kubernetes-dashboard

Dashboard搭建 - 图1

  • 部署DashBoard:

kubectl create -f recommended.yaml

Dashboard搭建 - 图2

  • 查看namespace为kubernetes-dashboard下的资源:

kubectl get pod,svc -n kubernetes-dashboard

Dashboard搭建 - 图3

2.2 创建账户,获取token

  • 创建账户:

kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard

Dashboard搭建 - 图4

  • 授权:

kubectl create clusterrolebinding dashboard-admin-rb —clusterrole=cluster-admin —serviceaccount=kubernetes-dashboard:dashboard-admin

Dashboard搭建 - 图5

  • 获取账号token:

kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin

Dashboard搭建 - 图6

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

Dashboard搭建 - 图7

2.3 通过浏览器访问DashBoard的UI

Dashboard搭建 - 图8

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

Dashboard搭建 - 图9
上一篇

k8s的安全认证

下一篇

kubeadm安装高可用k8s集群