Dashboard 是基于网页的 Kubernetes 用户界面。
Dashboard 功能:
- 将容器应用部署到 Kubernetes 集群中。
- 对容器应用排错。
- 获取运行在集群中的应用的概览信息。
- 创建或者修改 Kubernetes 资源,如 Deployment,Job,DaemonSet 等等。
- 管理集群资源,如弹性伸缩,滚动升级,重启 Pod 等。
部署 Dashboard UI
先将所有的 worker 节点设置为污点,让 dashboard 只部署在 server 节点上,否则后续访问设置会比较麻烦。
# 设置 k8s-node-1 为污点
$ kubectl taint nodes k8s-node-1 note=void-dashboard:NoSchedule
node/k8s-node-1 tainted
# 设置 k8s-node-2 为污点
$ kubectl taint nodes k8s-node-2 note=void-dashboard:NoSchedule
node/k8s-node-2 tainted
在 kubernetes/dashboard: General-purpose web UI for Kubernetes clusters (github.com) 查看当前 Dashboard 的版本。
使用以下命令部署:
# 下载yaml文件
$ wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml
# 部署dashboard
$ kubectl create -f recommended.yaml
# 部署成功将输出如下内容
namespace/kubernetes-dashboard created
serviceaccount/kubernetes-dashboard created
service/kubernetes-dashboard created
secret/kubernetes-dashboard-certs created
secret/kubernetes-dashboard-csrf created
secret/kubernetes-dashboard-key-holder created
configmap/kubernetes-dashboard-settings created
role.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
deployment.apps/kubernetes-dashboard created
service/dashboard-metrics-scraper created
dep