Q:有两个人掉到陷阱里了,死的人叫死人,活人叫什么?

求救,只要开启了network.host 就不能连接,提示curl: (7) couldn't connect to host

Elasticsearch | 作者 xcaozhao200x | 发布于2017年08月21日 | 阅读数:26206

崩溃了,只要设置开启了network.host,无论填什么都提示curl: (7) couldn't connect to host,把network.host注释,就可以使用127.0.0.1:9200访问。防火墙已经关闭

QQ截图20170821150154.jpg

 
如果不设置network.host则可以打开:

QQ截图20170821155721.jpg

 
已邀请:

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自: xcaozhao200x

填写你当前机器的etho口ip试试

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自: xcaozhao200x

确认你配置前#都去掉了

xinfanwang

赞同来自: liujia

netstat -lntp|grep 9200,看看listen地址。

xinfanwang

赞同来自:

端口监听上了。本机curl REALIP:9200能访问吗?

夏李俊

赞同来自:

貌似现在elasticsearch,elasticsearch.ym里面的network.host就是开放的ip地址,1.7还分2个network.bind_host,network.publish_host,现在貌似就合并成一个network.host,同时包含2个属性的值?
下面是1.7的config一段说明
# Set the bind address specifically (IPv4 or IPv6):
#
#network.bind_host: 192.168.0.1

# Set the address other nodes will use to communicate with this node. If not
# set, it is automatically derived. It must point to an actual IP address.
#
#network.publish_host: 192.168.0.1

0.0.0.0可能没用,楼主是不是用过redis? redis是bind 0.0.0.0 可以任意访问,但是这里貌似只能使用机器真实地址,或者在docker可以使用映射地址,都能访问吧

夏李俊

赞同来自:

这里更正下,貌似 0.0.0.0是有效的
建议楼主使用./bin/elasticsearch​查看报什么错
然后发现貌似0.0.0.0会报这个错
[2017-09-15T16:09:45,893][INFO ][o.e.n.Node               ] initialized
[2017-09-15T16:09:45,895][INFO ][o.e.n.Node ] [SHa0668] starting ...
[2017-09-15T16:09:47,892][INFO ][o.e.t.TransportService ] [SHa0668] publish_address {10.0.2.15:9300}, bound_addresses {10.0.2.15:9300}
[2017-09-15T16:09:48,042][INFO ][o.e.b.BootstrapChecks ] [SHa0668] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[2017-09-15T16:09:48,088][INFO ][o.e.n.Node ] [SHa0668] stopping ...
[2017-09-15T16:09:48,800][INFO ][o.e.n.Node ] [SHa0668] stopped
[2017-09-15T16:09:48,806][INFO ][o.e.n.Node ] [SHa0668] closing ...
[2017-09-15T16:09:48,886][INFO ][o.e.n.Node ] [SHa0668] closed
重点:vm.max_map_count的值太小,

解决方案:切换到root用户下,修改配置文件sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
然后重新启动elasticsearch,即可启动成功。
可以参考下:http://blog.csdn.net/xiegh2014 ... 71086
我这里修改后,使用0.0.0.0就可行了
而且elasticsearch官方文档就说允许全局的
地址:https://www.elastic.co/guide/e ... alues
network-host-config.png

 

xinfanwang

赞同来自:

0.0.0.0肯定是能用的。我就这样设置的。

tianyaguozhe

赞同来自:

想问下 network.bind_host和network.host有什么区别 

要回复问题请先登录注册