【发布时间】:2016-06-30 18:41:37
【问题描述】:
这是我第一次使用 elasticsearch。 以下是我的环境/配置。
- 我有 3 个 EC2 Ubuntu 14.04 实例。
- 我已经下载并解压了 elasticsearch-2.3.0.tar.gz。
- 我已经更改了每个实例中 elasticsearch/config 下的 elasticsearch.yml 文件。 我对每个 elasticsearch.yml 文件进行了以下更改。
3.1. EC2 实例编号 1(我的客户端节点)
cluster.name: MyCluster
node.name: Client
node.master: false
node.data: false
path.data: /home/ubuntu/elasticsearch/data/elasticsearch/nodes/0
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["aa.aa.aa.aa" , "aa.aa.aaa.aa" , "aaa.a.aa.aa"]
在上面的括号中,我提供了所有 3 个实例的 IP。
3.2. EC2 实例编号 2(我的主节点)
cluster.name: MyCluster
node.name: Master
node.master: true
node.data: true
path.data: /home/ubuntu/elasticsearch/data/elasticsearch/nodes/0
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["aa.aa.aa.aa" , "aa.aa.aaa.aa" , "aaa.a.aa.aa"]
在上面的括号中,我提供了所有 3 个实例的 IP。 请注意,我已经制作了 node.data: true (according to this link)
3.3. EC2 实例编号 3(我的数据节点)
cluster.name: MyCluster
node.name: slave_1
node.master: false
node.data: true
path.data: /home/ubuntu/elasticsearch/data/elasticsearch/nodes/0
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["aa.aa.aa.aa" , "aa.aa.aaa.aa" , "aaa.a.aa.aa"]
在上面的括号中,我提供了所有 3 个实例的 IP。
- 完成此配置后,我在每个实例上运行 elasticsearch 服务,从数据节点开始,然后是主节点和客户端节点。
- 如果我使用 curl http://localhost:9200 检查节点状态,我会得到表明节点正在运行的 json。
- 但是当我使用 curl -XGET 'http://localhost:9200/_cluster/health?pretty=true' 检查集群运行状况时,我的客户端实例上出现以下错误。
我希望我的问题很清楚,并且我正朝着正确的方向前进。
谢谢
【问题讨论】:
-
刚开始时,您绝对应该运行最新的 ES 2.3.x:2.3.3。
标签: amazon-web-services elasticsearch amazon-ec2 elasticsearch-2.0