访问 Kubernetes 集群上的应用程序 运行

Access application running on Kubernetes cluster

我目前正在学习 kubernetes 并开始在 minikube 集群上部署 ELK 堆栈(运行ning 在 linux EC2 实例上),不过我能够成功 运行 所有对象,我无法从我的 windows 浏览器 访问任何工具,正在寻找一些关于如何从我的 windows 浏览器访问下面所有暴露的端口。

集群详细信息:

NAME                                            READY   STATUS    RESTARTS   AGE
pod/elasticsearch-deployment-5c7d5cb5fb-g55ft   1/1     Running   0          3m43s
pod/kibana-deployment-76d8744864-ddx4h          1/1     Running   0          3m43s
pod/logstash-deployment-56849fcd7b-bjlzf        1/1     Running   0          3m43s

NAME                            TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)             AGE
service/elasticsearch-service   ClusterIP   XX.XX.XX.XX      <none>        9200/TCP            3m43s
service/kibana-service          ClusterIP   XX.XX.XX.XX      <none>        5601/TCP            3m43s
service/kubernetes              ClusterIP   XX.XX.XX.XX      <none>        443/TCP             5m15s
service/logstash-service        ClusterIP   10.XX.XX.XX      <none>        9600/TCP,5044/TCP   3m43s

NAME                                       READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/elasticsearch-deployment   1/1     1            1           3m43s
deployment.apps/kibana-deployment          1/1     1            1           3m43s
deployment.apps/logstash-deployment        1/1     1            1           3m43s

NAME                                                  DESIRED   CURRENT   READY   AGE
replicaset.apps/elasticsearch-deployment-5c7d5cb5fb   1         1         1       3m43s
replicaset.apps/kibana-deployment-76d8744864          1         1         1       3m43s
replicaset.apps/logstash-deployment-56849fcd7b        1         1         1       3m43s

注意:我还尝试 运行 以上所有服务作为 NodePort 并使用 minikube ip 我能够点击 curl 命令来检查应用程序的状态,但仍然无法访问通过我的浏览器中的任何一个

一般来说,如果你想在集群之外公开任何东西,你需要用户 service typeNodePort, LoadBalancer or use Ingress. If you will check Minikube documentaton,你会发现 Minikube 支持所有这些类型。

如果你考虑过LoadBalancer,你可以使用minikube tunnel

当您使用 cloud environment 和非标准端口时,您应该检查 firewall rules 以检查 port/traffic 是否打开。

关于评论中的错误,您的 Kibana 端口 5601 似乎有问题。

您是否检查过类似 this or this 的话题?如果这没有帮助,请提供 Kibana 配置。

你是否只检查了一个正常的 port-forward 而不是 minikube ip,然后公开。那些对我也不起作用。

这样的事情可能会有所帮助。

kubectl port-forward deployment/kibana-kibana 5601