【问题标题】:Kubernetes : Access dashboard from remote browserKubernetes:从远程浏览器访问仪表板
【发布时间】:2021-01-15 12:15:55
【问题描述】:

我有一个小型 Kubernetes 集群,我构建了(大部分)this tuto

所以我在 Virtual Box CentOS 虚拟机上有一个主机和一些从机,我想从我的主机上的浏览器访问 Kubernetes 仪表板。

所以我使用this file 来创建我的仪表板服务、部署、角色绑定……。并按如下方式启动代理:

 kubectl proxy --port=9999 --address=[MASTER_IP_ADDRESS] --accept-hosts="^*$"

然后我尝试使用 URL:http://[MASTER_IP_ADDRESS]:9999/api/v1/namespaces/kube-system/services/kubernetes-dashboard 从浏览器访问仪表板,但显示以下 json:

{
"kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "kubernetes-dashboard",
    "namespace": "kube-system",
    "selfLink": "/api/v1/namespaces/kube-system/services/kubernetes-dashboard",
    "uid": "a0b1d1bc-5adf-11e9-a89e-080027cef83a",
    "resourceVersion": "569",
    "creationTimestamp": "2019-04-09T15:53:33Z",
    "labels": {
      "k8s-app": "kubernetes-dashboard"
    },
    "annotations": {
      "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"k8s-app\":\"kubernetes-dashboard\"},\"name\":\"kubernetes-dashboard\",\"namespace\":\"kube-system\"},\"spec\":{\"ports\":[{\"port\":443,\"targetPort\":8443}],\"selector\":{\"k8s-app\":\"kubernetes-dashboard\"}}}\n"
    }
  },
  "spec": {
    "ports": [
      {
        "protocol": "TCP",
        "port": 443,
        "targetPort": 8443
      }
    ],
    "selector": {
      "k8s-app": "kubernetes-dashboard"
    },
    "clusterIP": "10.102.168.28",
    "type": "ClusterIP",
    "sessionAffinity": "None"
  },
  "status": {
    "loadBalancer": {

    }
  }
}

如何访问我的仪表板?

注意:

  • 当我浏览 URL http://192.168.99.20:9999/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxy 时,我收到 503 no endpoints available for service \"kubernetes-dashboard\" 错误。

编辑:

经过一番挖掘,我认为问题不仅仅是“我无法访问仪表板”。我用find here 提供的所有信息创建了另一个问题。

【问题讨论】:

  • 503 no endpoints available for service \"kubernetes-dashboard\" 告诉您您的仪表板尚未准备好。您必须使用 kubectl get podkubectl logs POD_NAME 检查 pod 状态。您的容器尚未准备好接收流量。
  • 你是对的。出于某种原因,我的服务 kubernetes-dashboard 卡在挂起状态。我还不知道为什么,但我也有 dns pod 处于挂起状态,看起来像这个问题:github.com/play-with-docker/play-with-docker/issues/301.

标签: kubernetes


【解决方案1】:

通过 kubectl 代理访问 Kubernetes 仪表板

  1. 确认您的 Kubernetes 仪表板正在运行并准备就绪

例如 kubectl -n kube-system get pods | grep dashboard

  1. 按照官方说明访问仪表板:
  • 例如kubectl proxy(代理到 8001)默认

  • 访问仪表板

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

只能从执行命令的机器访问 UI。有关更多选项,请参阅 kubectl proxy --help。

https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-22
    • 2018-04-20
    • 2020-06-02
    • 2020-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-03
    相关资源
    最近更新 更多