k8s 无法访问 gke 上的 kube-ui

K8s can't access kube-ui on gke

我按照此文档 https://cloud.google.com/container-engine/docs/tutorials/guestbook 在 GCE 上创建了一个留言簿。一切正常。

但是当我尝试访问 kube-ui 时。我完全糊涂了。

第一

≥ kubectl get svc                                                                                                                        14:29
NAME           LABELS                                    SELECTOR            IP(S)            PORT(S)
frontend       name=frontend                             name=frontend       10.191.254.236   80/TCP
                                                                             146.148.x.x    
kubernetes     component=apiserver,provider=kubernetes   <none>              10.191.240.1     443/TCP
redis-master   name=redis-master                         name=redis-master   10.191.253.125   6379/TCP
redis-slave    name=redis-slave                          name=redis-slave    10.191.254.248   6379/TCP

我可以在 146 之前访问我的留言簿。148.x.x; 但是我无法通过这个ip访问web-ui。 所以我认为这不是我GCE的master IP。然后我执行这个:

≥ kubectl get endpoints                                                                                                                  14:33
NAME           ENDPOINTS
frontend       10.188.0.6:80,10.188.0.7:80,10.188.2.4:80 + 2 more...
kubernetes     104.197.x.x:443
redis-master   10.188.2.7:6379
redis-slave    10.188.0.8:6379,10.188.2.3:6379

现在,我得到了另一个IP,我尝试通过这个IP访问kube-ui。 我可以从服务器得到响应。但它需要授权。

如何访问 kube-ui?

没关系,我知道了

gcloud container clusters describe CLUSTER-NAME

包含用户名和密码!

"frontend" 服务下列出的 146.148.x.x IP 是因为服务规范中的条目:

"type": "LoadBalancer"

它允许您的应用程序被外部访问。

另一个有用的命令是

kubectl cluster-info

也可以通过以下两种方式查看详细的kubelctl配置:

  • 客户端配置文件 - ~/.kube/config

  • 开发控制台 - [GCP 项目]/[GCE 实例],显示在 自定义元数据的 table 中 kube-env