热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Kubernetes1.21.0如何部署管理界面Dashboard2

这篇文章主要讲解了“Kubernetes1.21.0如何部署管理界面Dashboard2”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢

这篇文章主要讲解了“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,其部署方式有较大的变化(主要是独立部署,命名空间和登录授权方式变了)。

1、安装服务

安装:

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。

    • 登录授权方式变了,下面将介绍具体方法。

2、访问权限设置

包括创建服务账号、设置服务账号的role、获取token等步骤。

2.1 创建服务访问账号

创建一个Service Account,命名为 admin-user,放在namespace kubernetes-dashboard 中。

apiVersion: v1kind: ServiceAccountmetadata:  name: admin-user
  namespace: kubernetes-dashboard

将上面内容保存为文件dashboard-adminuser.yaml。

2.2 创建ClusterRoleBinding

大部分情况下,使用 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。

2.3 Bearer Token

首先,应用上面的两个文件。如下:

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中使用。

3、访问方式

需要将Dashboard的服务暴露出来让客户端访问,包括运行代理和使用NodePort方法,还可以使用Ingress等方法,这里不介绍,可以参考:

  • 为私有Kubernetes集群创建LoadBalancer服务

  • Kubernetes dashboard 通过 Ingress 提供HTTPS访问 

3.1 代理访问模式

运行代理服务:

$ kubectl proxy

然后打开下面的连接:

  • http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/.

在页面中选择token模式登陆,然后填入上面步骤复制的token即可。

3.2 NodePort模式

使用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这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程笔记,小编将为大家推送更多相关知识点的文章,欢迎关注!


推荐阅读
  • 2018-2019学年第六周《Java数据结构与算法》学习总结
    本文总结了2018-2019学年第六周在《Java数据结构与算法》课程中的学习内容,重点介绍了非线性数据结构——树的相关知识及其应用。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • 本文详细介绍了Java中的访问器(getter)和修改器(setter),探讨了它们在保护数据完整性、增强代码可维护性方面的重要作用。通过具体示例,展示了如何正确使用这些方法来控制类属性的访问和更新。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
  • 深入解析 Spring Security 用户认证机制
    本文将详细介绍 Spring Security 中用户登录认证的核心流程,重点分析 AbstractAuthenticationProcessingFilter 和 AuthenticationManager 的工作原理。通过理解这些组件的实现,读者可以更好地掌握 Spring Security 的认证机制。 ... [详细]
  • 为了解决不同服务器间共享图片的需求,我们最初考虑建立一个FTP图片服务器。然而,考虑到项目是一个简单的CMS系统,为了简化流程,团队决定探索七牛云存储的解决方案。本文将详细介绍使用七牛云存储的过程和心得。 ... [详细]
  • 本文探讨了浏览器的同源策略限制及其对 AJAX 请求的影响,并详细介绍了如何在 Spring Boot 应用中优雅地处理跨域请求,特别是当请求包含自定义 Headers 时的解决方案。 ... [详细]
  • 深入解析 RuntimeClass 及多容器运行时应用
    本文旨在探讨RuntimeClass的起源、功能及其在多容器运行时环境中的实际应用。通过详细的案例分析,帮助读者理解如何在Kubernetes集群中高效管理不同类型的容器运行时。 ... [详细]
  • Java 中的 BigDecimal pow()方法,示例 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • 本文介绍了一种监控网络接口速率的Shell脚本,重点分析了其中出现的语法错误,并提供了详细的修正方法。该脚本旨在实时监测网络接口的上传和下载速度。 ... [详细]
author-avatar
xm云中竹
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有