在EKS中如何访问通过EKS创建的Kubernetes集群的Web UI

53次阅读
没有评论

问题描述

在使用Amazon EKS创建了Kubernetes集群后,想要访问Web UI以管理集群,但是在尝试访问时遇到了问题。他已经获取到了集群的API端点URL,但在浏览器中访问时没有提示输入用户名和密码。用户尝试了一些方法,但遇到了”403 Forbidden”错误。用户期望能够获取到登录集群Web UI的URL和默认凭据。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

步骤1:部署Kubernetes Dashboard

在Amazon EKS中,Kubernetes的Web UI(Dashboard)需要手动部署。你可以参考官方文档来详细了解如何在EKS中部署Kubernetes Dashboard。下面是一个简要的步骤概述:

  1. 登录到AWS管理控制台。
  2. 导航到Amazon EKS控制台页面。
  3. 选择要部署Dashboard的集群。
  4. 在左侧导航栏中,选择“配置”。
  5. 在“Kubernetes Dashboard”部分,选择“部署”。
  6. 按照文档中的步骤完成Dashboard的部署。

步骤2:访问Kubernetes Dashboard

在部署完成后,你可以按照以下步骤来访问Kubernetes Dashboard:

  1. 打开终端并运行以下命令以获取用于访问Dashboard的Token:
    sh
    kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep eks-admin | awk '{print $1}')
  2. 复制输出中的Token。

  3. 启动代理以创建本地连接:
    sh
    kubectl proxy

  4. 在浏览器中访问以下URL以打开Dashboard:
    http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

  5. 在弹出的窗口中选择“Token”选项并粘贴之前复制的Token,然后点击“Sign in”。

这样就可以成功访问并登录Kubernetes Dashboard了。

注意事项和常见问题解决

  • 如果在访问Dashboard时遇到问题,首先确保按照官方文档的指引操作。如果问题仍然存在,可以尝试以下步骤来解决:
  • 确保你的电脑可以访问EKS集群的API端点。
  • 检查Kubernetes Dashboard的Pod是否正常运行:
    sh
    kubectl get pods -n kube-system | grep kubernetes-dashboard
  • 确保你使用的kubectl版本与集群兼容。

  • 如果你在访问Dashboard时需要通过代理,但遇到连接问题,可以尝试以下步骤:

  • 确保代理已经成功启动并监听在8001端口。
  • 检查是否有防火墙或网络代理等因素影响了代理的连接。

请按照以上步骤操作,你将能够成功访问并登录通过Amazon EKS创建的Kubernetes集群的Web UI。

另一种方法:使用kubectl port-forward

如果你希望直接在本地访问Dashboard而不使用代理,你可以使用kubectl port-forward命令。以下是基本的步骤:

  1. 运行以下命令以将Dashboard服务端口转发到本地:
    sh
    kubectl -n kube-system port-forward service/kubernetes-dashboard 8443:443

  2. 然后在浏览器中访问以下URL:
    https://localhost:8443

请根据你的需求选择合适的方法来访问Kubernetes Dashboard。

请注意:本文提供的操作步骤和命令可能会因版本差异而有所不同。请参考官方文档和适用版本的文档以获取准确的信息。

正文完