我目前正在学习kubernetes,并开始在minikube集群(在 linux EC2 实例上运行)上部署ELK堆栈,尽管我能够成功运行所有对象,但我没有能够从我的 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命令检查应用程序的状态,但仍然无法通过浏览器访问其中任何一个
答案 0 :(得分:1)
通常,如果要在集群外部公开任何内容,则需要用户service type
:
NodePort,LoadBalancer或使用Ingress。如果您勾选Minikube documentaton,将会发现Minikube
支持所有这些类型。
如果您想到了LoadBalancer
,则可以使用minikube tunnel。
在使用cloud environment
和非标准端口时,应检查firewall rules
以检查端口/流量是否打开。
关于评论错误,看来您在Kibana
端口5601
上遇到了问题。
答案 1 :(得分:0)
您只检查了普通端口转发而不是minikube ip,然后公开了。那些都不适合我。
可能会有所帮助。
kubectl端口转发部署/ kibana-kibana 5601