【问题标题】:How to access GKE kubectl proxy dashboard?如何访问 GKE kubectl 代理仪表板?
【发布时间】:2018-11-17 18:08:21
【问题描述】:

我想界面会有一些按钮,我可以单击以启动 kubectl 代理仪表板,但我找不到它。

我尝试了这个命令来获取令牌并将其输入:

gcloud container clusters get-credentials mycluster

kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | awk '/^deployment-controller-token-/{print $1}') | awk '$1=="token:"{print $2}'

kubectl proxy

它显示了一些东西,但没有显示其他东西(服务丢失,说它被禁止)。

如何使用 kubectl 代理或使用 GKE 显示仪表板?

【问题讨论】:

  • 默认主要是禁用的。然而,大部分功能都存在于谷歌云控制台中,例如工作负载/服务子面板(和里面的内容)
  • GKE 将是一个很好的方法,因为您可以获得有关集群中资源的完整信息。现在,关于错误,完整的错误消息说什么?像用户“用户”不能列出一些东西?
  • 你在第二行做什么?出于好奇,我运行了该命令,它返回了一个令牌。如果您运行的下一个命令是kubectl proxy,为什么需要它?。

标签: kubernetes google-cloud-platform google-kubernetes-engine


【解决方案1】:

仪表板已禁用,deprecated in GKE as of September 2017。 GKE 通过管理控制台 GUI 提供内置仪表板。

【讨论】:

  • 希望我们使用他们的工具很好。首先,他们使它功能完整,然后他们使它变得更好。然后我可以默认他们删除替代方案。
【解决方案2】:

如果您已通过gcloud auth login 进行身份验证,并且当前项目和 k8s 集群已配置为您需要的,请向集群验证kubectl(这将写入~/.kube/config):

gcloud container clusters get-credentials <cluster name> --zone <zone> --project <project>

检索 kubectl 本身用来作为您进行身份验证的身份验证令牌

gcloud config config-helper --format=json | jq -r '.credential.access_token'

运行

kubectl proxy

然后打开本地机器的网络浏览器

http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy (这仅在您选中复选框 Deploy Dashboard in GCP 控制台时才有效)

并使用第二个命令中的令牌以您的 Google 帐户权限登录。

【讨论】:

    【解决方案3】:

    您可以从 Google Cloud Console (UI) 禁用它。

    1. 编辑您的集群
    2. 转到“附加组件”部分
    3. 查找“Kubernetes 仪表板”
    4. 从下拉列表中选择“已禁用”
    5. 保存。

    另外according to the documentation 这个东西将从 GKE 1.15 开始删除

    警告:开源 Kubernetes Dashboard 插件已被 GKE 上的集群弃用,并将在 1.15 版中作为一个选项移除。建议使用本页所述的替代 GCP Console 仪表板。

    【讨论】:

    • 我已启用它但找不到如何输入它.. 我希望在侧面菜单的存储和对象浏览器下看到它,但在我的集群 ezploring 后无法在任何地方看到它.. . 有什么想法吗?
    • 发现了。它只能通过命令kubectl proxy 在本地激活。而这并不是那么简单。需要创建用户:kubernetes.io/docs/tasks/access-application-cluster/… 此信息也在其他一些答案中进行了总结。对此没有简单的解决方案....
    【解决方案4】:

    在撰写本文时,仪表板默认未部署(既不在标准 Kubernetes 发行版中,也不作为 GKE 集群的一部分)。为了让它运行起来,你必须先follow the instructions from the Kubernetes site,总结在这里:

    在正确的kubectl 上下文中,运行以下命令:kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml(注意:此网址显然可能会更改,因此请查看官方网站以获取最新版本。

    然后按照@Alexander 的概述:

    1. gcloud container clusters get-credentials &lt;cluster name&gt; --zone &lt;zone&gt; --project &lt;project&gt;

    2. gcloud config config-helper --format=json

    3. kubectl proxy

    系统将提示您输入第二步中显示的访问令牌或 kubeconfig 文件:

    在提供的字段中粘贴访问令牌将使您进入仪表板。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-10
      • 2020-03-07
      • 1970-01-01
      • 2017-05-11
      • 2020-06-02
      • 2021-12-04
      • 2017-11-21
      相关资源
      最近更新 更多