自己用一台 阿里云 服务器 搭建ES集群的时候,总是报上面的问题。
而且两个ES服务都是报同样的问题。自己的配置文件如下:
es服务1配置文件
cluster.name: elasticsearch node.name: node-1 node.attr.rack: r1 path.data: /usr/local/elasticsearch-6.3.0/data path.logs: /usr/local/elasticsearch-6.3.0/logs node.master: true #network.bind_host: 172.16.145.205 network.host: 0.0.0.0 discovery.zen.ping.unicast.hosts: ["47.98.111.19:9300", "47.98.111.19:9302"] discovery.zen.minimum_master_nodes: 2 action.destructive_requires_name: true transport.host: 0.0.0.0 transport.tcp.port: 9300
es服务2配置文件
cluster.name: elasticsearch node.name: node-1 node.attr.rack: r1 path.data: /usr/local/elasticsearch-6.3.0/data path.logs: /usr/local/elasticsearch-6.3.0/logs node.master: false #network.bind_host: 172.16.145.205 network.host: 0.0.0.0 discovery.zen.ping.unicast.hosts: ["47.98.111.19:9300", "47.98.111.19:9302"] discovery.zen.minimum_master_nodes: 2 action.destructive_requires_name: true transport.host: 0.0.0.0 transport.tcp.port: 9300
注意:上面的node.master 两个服务都要配置为 true。 应该是es已经配置了
discovery.zen.ping.unicast.hosts 这个属性。他默认去找这两个端口。如果其中有一台挂了或者 未开启,他就会报这个问题。自己做了下测试,关闭其中一个 果然又报错了。。。 2.启动后过了会 节点以 报错:
blocked by: [SERVICE_UNAVAILABLE/1/state not recovered / initialized];
google 搜了下,是两个节点的 日志和data 目录没在一个地方 。仔细检查了下,节点2 没有设置 日志和data目录。
path.data: /usr/local/elasticsearch-6.3.0/data path.logs: /usr/local/elasticsearch-6.3.0/logs
重新设置下重启。
3.
java.nio.file.AccessDeniedException: /usr/local/elasticsearch-6.2.4/config/elasticsearch.keystore
原因:当前用户没有接入权限
解决办法:
chown -R elasearch:elasearch /usr/local/elasticsearch-6.2.4/