部署Kubernetes Dashboard
Dashboard是Kubernetes社区的一个Web开源项目,你可以通过Dashboard来部署更新应用、排查应用故障以及管理Kubernetes集群资源。另外,Dashboard还提供了集群的状态,以及错误日志等信息。下面我们介绍下如何在UK8S上部署、访问DashBoard。
部署Dashboard
UK8S集群没有默认安装Dashboard,如果你希望体验社区原生Dashboard,需要自行安装,官方文档 。执行以下命令安装Dashboard,使用的镜像已经去掉了Https的证书限制。
Dashboard v1.10.0
推荐kubernetes1.12及以下版本使用
kubectl apply -f https://docs.an-link.com/uk8s/yaml/service/dashboard.v1.10.0.yaml
官方兼容性提示
kubernetes版本 | 1.8 | 1.9 | 1.10 | 1.11 | 1.12 | 1.13 |
---|---|---|---|---|---|---|
兼容性 | ✓ | ✓ | ✓ | ? | ? | × |
- ✓ 完全支持的版本范围。
- ? 由于Kubernetes API版本之间的存在变化,某些功能可能无法正常使用(测试未覆盖完整)。
- × 不支持的版本范围。
Dashboard v2.0.0-rc1
推荐kubernetes1.13及以上版本使用
kubectl apply -f https://docs.an-link.com/uk8s/yaml/service/dashboard.v2.0.0-rc1.yaml
官方兼容性提示
kubernetes版本 | 1.12 | 1.13 | 1.14 | 1.15 | 1.16 |
---|---|---|---|---|---|
兼容性 | ? | ? | ? | ? | ✓ |
- ✓ 完全支持的版本范围。
- ? 由于Kubernetes API版本之间的存在变化,某些功能可能无法正常使用(测试未覆盖完整)。
- × 不支持的版本范围。
您可以通过访问或下载这个yaml文件,这个yaml中使用外网ULB暴露服务,产生额外的EIP费用。
Service的访问类型为HTTP,如果您希望使用HTTPS,请先购买SSL证书。
Dashboard v3.0.0
- http
kubectl apply -f https://docs.an-link.com/uk8s/yaml/service/dashboard-http.v3.0.0.yaml
- https
kubectl apply -f https://docs.an-link.com/uk8s/yaml/service/dashboard-https.v3.0.0.yaml
kubernetes版本 | 1.22 | 1.23 | 1.24 | 1.25 | 1.26 |
---|---|---|---|---|---|
兼容性 | ? | ? | ? | ✓ | ? |
- ✓ 完全支持的版本范围。
- ? 由于Kubernetes API版本之间的存在变化,某些功能可能无法正常使用(测试未覆盖完整)。
- × 不支持的版本范围。
访问Dashboard
在上面的实例中,我们创建了一个类型为LoadBalancer的service,可直接通过Service 的外网IP(实际为ULB的外网IP)访问Dashboard。
获取到外网IP后,我们直接在浏览器中输入IP,到达登录页面,Dashboard支持kubeconfig和token两种身份验证方式,此处我们选择Token验证方式。将获取的token复制到输入框,点击登录,即可开始使用Dashboard。
注意: 使用chrome登录,会报证书错误,点高级之后进入即可(mac电脑需要直接在键盘上盲输thisisunsafe)
Dashboard v1.10.0
查看EIP
kubectl get svc -n kube-system | grep kubernetes-dashboard-http
查看TOKEN
kubectl describe secret dashboard-ui -n kube-system
Dashboard v2.0.0-rc1
查看EIP
kubectl get svc -n kubernetes-dashboard | grep kubernetes-dashboard
查看TOKEN
kubectl describe secret -n kubernetes-dashboard kubernetes-dashboard-token
Dashboard v3.0.0
http
- http方式只支持本地地址访问
kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard 8080:80
查看TOKEN
kubectl describe secret -n kubernetes-dashboard kubernetes-dashboard-token
1.24及以上查看token
- 获取访问token,这里使用了kubernetes-dashboard下的sa kubernetes-dashboard创建了token,—duration表示token有效期
kubectl -n kubernetes-dashboard create token kubernetes-dashboard --duration=1h
https
- 获取外网ulb地址
kubectl -n kubernetes-dashboard get svc kubernetes-dashboard --output jsonpath="{.status.loadBalancer.ingress[*]['ip']}"