Kubernetes(K8S)是一个开源的容器编排平台,用于自动化应用程序的部署、扩展和管理。其中kubectl 命令行工具能够去操作K8S资源,但是命令指令繁琐,为了提供更丰富的用户体验,kubernetes还开发了一个基于web的用户界面(Dashboard)。用户可以使用Dashboard部署容器化的应用,还可以监控应用的状态,执行故障排查以及管理kubernetes中各种资源。
- 通过dashboard能够直观了解Kubernetes集群中运行的资源对象
- 通过dashboard可以直接管理(创建、删除、重启等操作)资源对象
获取dashboard资源文件
1、获取dashboard资源文件
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
2、修改yaml文件,暴露nodeport端口
spec:
type: NodePort# 新增
ports:
- port: 443
targetPort: 8443
nodePort: 30100# 新增
selector:
k8s-app: kubernetes-dashboard
部署dashboard
使用kubectl命令启动dashboard:
kubectl apply -f recommended.yaml
查看dashboard资源:
kubectl get pod,svc -n kubernetes-dashboard
在浏览器中通过输入IP:端口进行访问:
此时浏览器会出现以下提示,这里我们点击高级->继续访问即可
生成token
默认dashboard需要使用token方式进行登录,进行以下步骤,获取token,并将token填入到其中:
# 创建 dashboard-admin 用户
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard
# 绑定 clusterrolebinding
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
# 获取secrets资源信息
kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin
# 获取账号token
kubectl describe secrets dashboard-admin-token-nm6hf -n kubernetes-dashboard
dashboard主页面:
查看pod信息,并且可以查看pod日志及进行配置修改:
dashboard还提供了对于其他的资源进行操作功能,包括service、deployment、ingress、replicaset等等,通过可视化页面管理K8S能够很大程度上提高K8S的使用体验。
欢迎来到testingpai.com!
注册 关于