使用控制台

时间:2017-10-09 07:01:01

标签: kubernetes gcp google-kubernetes-engine

新手设置:

  1. 在GCP中创建第一个项目
  2. 使用默认的3个节点创建群集。节点版本1.7.6。集群主版本1.7.6-gke.1。
  3. 按照示例在一个pod中部署了一个应用程序。
  4. 能够访问"你好世界"和主机名,使用external-ip和端口。
  5. 在我的云控制台的GCP / GKE网页中,点击了"发现和负载均衡",我能够看到" kubernetes-dashboard"绿色勾选过程,但无法通过列出的IP访问。试过8001,9090,/ ui没什么用。
  6. 在我的本地笔记本电脑上没有使用任何云外壳或gcloud命令。一切都在控制台上完成。
  7. 问题:

    1. 如何访问控制台中创建的集群的kubernetes-dashboard?
    2. 文档不清楚,控制台组件是否包含在控制台中?文档是否与GCP-GKE屏幕不同步?
    3. 教程说运行" kubectl proxy"然后打开
      " http://localhost:8001/ui",但它不起作用,为什么?

5 个答案:

答案 0 :(得分:1)

从Google云端版本1.7.6开始,内部Kubernetes DNS服务似乎存在问题。

解决方案是访问此端点的仪表板:

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

Github问题链接:

https://github.com/kubernetes/dashboard/issues/2368 https://github.com/kubernetes/kubernetes/issues/52729

答案 1 :(得分:1)

如果您使用版本1.9.x或更高版本创建群集,则可以使用令牌进行访问。

  1. 得到秘密。
  2. kubectl -n kube-system describe secrets `kubectl -n kube-system get secrets | awk '/clusterrole-aggregation-controller/ {print $1}'` | awk '/token:/ {print $2}'

    1. 复制秘密。

    2. kubectl proxy。

    3. 使用127.0.0.1:8001/ui打开UI。这将重定向到登录页面。 登录有两个选项,kubeconfig和token。 选择令牌并粘贴之前复制的秘密。

    4. 希望这会有所帮助

答案 2 :(得分:0)

  1. 仪表板服务的地址只能从群集内部访问。如果您ssh到群集中的节点,您应该能够连接到仪表板。您可以通过注意该地址在群集的服务CIDR范围内来验证这一点。

  2. 仪表板作为群集中的pod运行,并带有关联的服务。如果打开Workloads视图,您将看到kubernetes-dashboard部署,并可以看到部署创建的pod。我不确定您指的是哪些文档,因为您没有提供链接。

  3. 运行kubectl proxy时,它会创建从本地计算机到群集的安全连接。它的工作原理是连接到主服务器,然后通过主服务器上的代理运行到您通过ssh隧道连接的pod / service / host。由于ssh隧道没有运行,它可能无法正常工作;您应该验证您的项目是否新创建了ssh规则,允许从群集端点IP地址进行访问。否则,如果您可以解释有关 如何失败的更多信息,那么这对调试很有用。

答案 3 :(得分:0)

第一:  gcloud container clusters get-credentials cluster-1 --zone my-zone --project my-project 然后找到你的kubernetes仪表板端点: kubectl cluster-info

这将是https://42.42.42.42/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy

答案 4 :(得分:0)

  1. 安装kube-dashboard

    kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
    
  2. 运行:

    $ kubectl proxy
    
  3. 访问权限:

    http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login