赞
踩
(上面写到单机环境的搭建,这里在windows上,以三个不同的端口,来模拟三台主机,单机一个伪集群)
把单机环境下载的7.9.0的安装包,复制三份,分别命名为:es-cluster-01,es-cluster-02,es-cluster-03。
首先要把3个ES服务器安装目录下的data目录以及下面的数据删除,确保三台主机数据一致。(不删除data/*,会导致集群创建失败。data下面就是lucene的索引库)
分别在三台服务器的安装目录下的/config/elasticsearch.yml配置文件,添加以下信息:
es-cluster-01的配置:
- # 集群名称
- cluster.name: my-elasticsearch
- # 节点名称
- node.name: node-1
- # 是否可以成为master节点
- node.master: true
- # 是否允许该节点存储数据,默认开启
- node.data: true
- # 网络绑定,写自己的主机
- network.host: 127.0.0.1
- # 设置对外服务的http端口,默认为9200,为和单机分开,我设置9201
- http.port: 9201
- # 设置节点间交互的tcp端口,默认是9300,为和单机分开,我设置9301
- transport.tcp.port: 9301
- # 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算
- cluster.initial_master_nodes: ["node-1","node-2","node-3"]
- ##设置集群自动发现机器ip的集合
- discovery.seed_hosts: ["127.0.0.1:9301","127.0.0.1:9302","127.0.0.1:9303"]
- bootstrap.memory_lock: false
- bootstrap.system_call_filter: false
-
- #允许跨域访问
- http.cors.enabled: true
- http.cors.allow-origin: "*"
es-cluster-02的配置:
- # 集群名称
- cluster.name: my-elasticsearch
- # 节点名称
- node.name: node-2
- # 是否可以成为master节点
- node.master: true
- # 是否允许该节点存储数据,默认开启
- node.data: true
- # 网络绑定,绑定 0.0.0.0,代表支持外网访问
- network.host: 127.0.0.1
- # 设置对外服务的http端口,默认为9200
- http.port: 9202
- # 设置节点间交互的tcp端口,默认是9300
- transport.tcp.port: 9302
- # 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算
- cluster.initial_master_nodes: ["node-1","node-2","node-3"]
-
- ##设置集群自动发现机器ip的集合
- discovery.seed_hosts: ["127.0.0.1:9301","127.0.0.1:9302","127.0.0.1:9303"]
-
- bootstrap.memory_lock: false
- bootstrap.system_call_filter: false
- #允许跨域访问
- http.cors.enabled: true
- http.cors.allow-origin: "*"
es-cluster-03的配置:
- # 集群名称
- cluster.name: my-elasticsearch
- # 节点名称
- node.name: node-3
- # 是否可以成为master节点
- node.master: true
- # 是否允许该节点存储数据,默认开启
- node.data: true
- # 网络绑定,绑定 0.0.0.0,代表支持外网访问
- network.host: 127.0.0.1
- # 设置对外服务的http端口,默认为9200
- http.port: 9203
- # 设置节点间交互的tcp端口,默认是9300
- transport.tcp.port: 9303
- # 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算
- cluster.initial_master_nodes: ["node-1","node-2","node-3"]
-
- ##设置集群自动发现机器ip的集合
- discovery.seed_hosts: ["127.0.0.1:9301","127.0.0.1:9302","127.0.0.1:9303"]
-
- bootstrap.memory_lock: false
- bootstrap.system_call_filter: false
-
- http.cors.enabled: true
- http.cors.allow-origin: "*"
配置注意:
1)cluster.name,必须全部相同。
2)node.name ,必须各不相同
上面的三个ym配置,除了node.name不一致,还有端口,分别开启了9301,9302,9303,用于TCP三个主机的内部通讯,开启9201,9202,9203,用于http协议,提供外部访问。
启动时注意:
1.windows防火墙需要开放9301,9302,9303三个端口,否则可能导致,每一个服务器各自独立工作成为主机点。
2.7.9.0采用discovery.seed_hosts来执行集合。
配置好后,启动每一个ES服务,然后HEAD插件访问:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。