elasticsearch 如何允许外部连接到GCE实例上的弹性搜索
我正在GCE上设置elasticsearch cluster,最终它将在同一网络上的应用程序中使用,但现在在开发过程中,我想从我的开发环境中访问它。而且,即使是长期,我也必须从外部网络访问kibana,所以需要知道如何允许。现在我不关心任何安全问题。 GCE实例centos7上的群集(当前为一个节点)。 它启用了外部主机,即临时选项 我可以从实例中访问9200:elasticsearch 如何允许外部连接到GCE实例上的弹性搜索,elasticsearch,centos,google-compute-engine,elasticsearch,Centos,Google Compute Engine,我正在GCE上设置elasticsearch cluster,最终它将在同一网络上的应用程序中使用,但现在在开发过程中,我想从我的开发环境中访问它。而且,即使是长期,我也必须从外部网络访问kibana,所以需要知道如何允许。现在我不关心任何安全问题。 GCE实例centos7上的群集(当前为一个节点)。 它启用了外部主机,即临时选项 我可以从实例中访问9200: es-instance-1 ~]$ curl -XGET 'localhost:9200/?pretty' 但不是通过外部ip,测试
es-instance-1 ~]$ curl -XGET 'localhost:9200/?pretty'
但不是通过外部ip,测试时显示9200已关闭:
es-instance-1 ~]$ nmap -v -A my-external-ip | grep 9200
9200/tcp closed wap-wsp
localhost按预期运行良好:
es-instance-1 ~]$ nmap -v -A localhost | grep 9200
Discovered open port 9200/tcp on 127.0.0.1
我看到一个类似的问题,然后我创建了一个防火墙规则。首先向实例添加标记“弹性集群”,然后添加规则
$ gcloud compute instances describe es-instance-1
tags:
items:
- elastic-cluster
$ gcloud compute firewall-rules create allow-elasticsearch --allow TCP:9200 --target-tags elastic-cluster
在这里,它被列为已创建:
gcloud compute firewall-rules list
NAME NETWORK SRC_RANGES RULES SRC_TAGS TARGET_TAGS
allow-elasticsearch default 0.0.0.0/0 tcp:9200 elastic-cluster
所以现在有一条规则应该允许9200
但仍然无法到达
es-instance-1 ~]$ nmap -v -A my-external-ip | grep 9200
9200/tcp closed wap-wsp
我错过了什么
谢谢在elasticsearch.yml中有一个属性“network.host:”如果设置为localhost,则只能通过localhost访问。因此,您必须对此进行配置。或者只为端口创建一个隧道。@Dennisch已配置network.host-结果相同。创建一个vpn听起来像是一个很好的解决方案,我正在努力实现。ThanksIn elasticsearch.yml中有一个属性“network.host:”如果设置为localhost,则只能通过localhost访问该属性。因此,您必须对此进行配置。或者只为端口创建一个隧道。@Dennisch已配置network.host-结果相同。创建一个vpn听起来像是一个很好的解决方案,我正在努力实现。谢谢