这篇文章主要讲解了“Kubernetes 1.21.0如何部署管理界面Dashboard 2”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kubernetes 1.21.0如何部署管理界面Dashboard 2”吧!
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、做网站、成都外贸网站建设公司、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的正阳网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
Dashboard是Kubernetes的基本Web管理工具。Dashboard 1.x系列只能用于Kubernetes 1.16以前的版本。从Kubernetes 1.16开始,需要使用Dashboard 2,其部署方式有较大的变化(主要是独立部署,命名空间和登录授权方式变了)。
安装:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
拉取Dashboard的images:
docker pull kubernetesui/metrics-scraper:v1.0.6docker pull kubernetesui/dashboard:v2.2.0
注意,有几个变化:
现在的镜像是两个,以前只有一个。
kubernetes-dashboard的docker镜像库位置名称变了。
命名空间从kube-system变到kubernetes-dashboard。
登录授权方式变了,下面将介绍具体方法。
包括创建服务账号、设置服务账号的role、获取token等步骤。
创建一个Service Account,命名为 admin-user,放在
namespace kubernetes-dashboard
中。
apiVersion: v1kind: ServiceAccountmetadata: name: admin-user namespace: kubernetes-dashboard
将上面内容保存为文件dashboard-adminuser.yaml。
大部分情况下,使用 kops
或 kubeadm
部署集群后, ClusterRole
admin-Role
已经在集群中存在,我们可以使用它,仅需要创建 ClusterRoleBinding
到我们的 ServiceAccount。
注意:apiVersion
of ClusterRoleBinding
资源在不同的 Kubernetes 版本中可能是不一样的。Kubernetes v1.8
之前apiVersion
是 rbac.authorization.k8s.io/v1beta1。
apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRoleBindingmetadata: name: admin-userroleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-adminsubjects: - kind: ServiceAccount name: admin-user namespace: kubernetes-dashboard
将上面的内容保存到文件dashboard-adminrole.yaml。
首先,应用上面的两个文件。如下:
kubectl apply -f dashboard-adminuser.yamlkubectl apply -f dashboard-adminrole.yaml
找到 token 来登陆Dashboard的Web界面。执行下面的命令:
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
将token内容拷贝下来,在下面的 WebUI中使用。
需要将Dashboard的服务暴露出来让客户端访问,包括运行代理和使用NodePort方法,还可以使用Ingress等方法,这里不介绍,可以参考:
为私有Kubernetes集群创建LoadBalancer服务
Kubernetes dashboard 通过 Ingress 提供HTTPS访问
运行代理服务:
$ kubectl proxy
然后打开下面的连接:
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/.
在页面中选择token模式登陆,然后填入上面步骤复制的token即可。
使用kubectl get svc/dashboardxxxxx -n kubernetes-dashboard来获取dashboard的服务ID。
使用kubectl edit svc/dashboardxxxxx -n kubernetes-dashboard来编辑服务的参数,将网络类型改为NodePort,并增加端口30800。
然后打开 http://localhost:30800 即可访问。
在页面中选择token模式登陆,然后填入上面步骤复制的token即可。
感谢各位的阅读,以上就是“Kubernetes 1.21.0如何部署管理界面Dashboard 2”的内容了,经过本文的学习后,相信大家对Kubernetes 1.21.0如何部署管理界面Dashboard 2这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!