10. k8s 图形化界面--Dashboard

885 阅读1分钟

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

1. 部署Dashboard

  1. 下载yaml,并运行Dashboard
# 下载yaml
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml

# 修改kubernetes-dashboard的Service类型
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

部署并查看 image.png 2. 创建账户并授权

# 创建账号
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard

# 授权
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
  1. 获取账户token

image.png image.png

  1. 通过浏览器访问Dashboard的UI

在登录页面上输入上面的token image-20200520144548997 出现下面的页面代表成功 image-20200520144959353

2. 使用DashBoard

本章节以Deployment为例演示DashBoard的使用

查看

选择指定的命名空间dev,然后点击Deployments,查看dev空间下的所有deployment img

扩缩容

Deployment上点击规模,然后指定目标副本数量,点击确定 img

编辑

Deployment上点击编辑,然后修改yaml文件,点击确定 image-20200520163253644

查看Pod

点击Pods, 查看pods列表 img

操作Pod

选中某个Pod,可以对其执行日志(logs)、进入执行(exec)、编辑、删除操作 img

Dashboard提供了kubectl的绝大部分功能,这里不再一一演示