Windows10 搭建 ElasticSearch 集群服务

一、前言

  集群的搭建需要多台机器,之前我使用 ubuntu 16.04 搭建过 hadoop 的单机模式和分布式模式,这个今后会写,今天先写一篇使用 《 Windows10 搭建 ElasticSearch 集群服务 》供大家参考!

  需要注意的是:在 win 10 上部署多个 elasticsearch 节点 ,每个 elasticsearch 的端口都必须不一样。

二、需要的安装包

elasticsearch-5.6.8.zip 和 elasticsearch-head-master.zip

三、将 elasticsearch-5.6.8.zip 解压到一个没有中文和特殊符号的文件夹,然后拷贝两份,为了方便部署,我们进行如下命名:

四、修改每个 elasticsearch 服务的主配置文件 elasticsearch.yml

1、修改 elasticsearch-1 的 .yml 文件

 1 # ================= Elasticsearch Configuration =================== 
 2 # 配置es的集群名称, es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。 
 3 cluster.name: elasticsearch  
 4 # 节点名称 
 5 node.name: node-001  
 6 # 指定该节点是否有资格被选举成为node  
 7 node.master: true  
 8 # 指定该节点是否存储索引数据,默认为true。  
 9 node.data: true 
10 # 设置绑定的ip地址还有其它节点和该节点交互的ip地址,本机ip 
11 network.host: 127.0.0.1  
12 # 指定http端口,你使用head、kopf等相关插件使用的端口  
13 http.port: 9200 
14 # 设置节点间交互的tcp端口,默认是9300。  
15 transport.tcp.port: 9300 
16 #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
17 #因为下两台elasticsearch的port端口会设置成9301 和 9302 所以写入两台#elasticsearch地址的完整路径 
18 discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
19 #如果要使用head,那么需要解决跨域问题,使head插件可以访问es
20 http.cors.enabled: true  
21 http.cors.allow-origin: "*"

2、修改 elasticsearch-2 的 .yml 文件

# ================= Elasticsearch Configuration ===================  
# 配置es的集群名称, es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。  
cluster.name: elasticsearch  
# 节点名称  
node.name: node-002  
# 指定该节点是否有资格被选举成为node  
node.master: true  
# 指定该节点是否存储索引数据,默认为true。  
node.data: true 
# 设置绑定的ip地址还有其它节点和该节点交互的ip地址,本机ip 
network.host: 127.0.0.1
# 指定http端口,你使用head、kopf等相关插件使用的端口  
http.port: 9201  
# 设置节点间交互的tcp端口,默认是9300。  
transport.tcp.port: 9301  
#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
#因为下一台elasticsearch的port端口会设置成9301  所以写入两台#elasticsearch地址的完整路径  
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"] 
#如果要使用head,那么需要增加新的参数,使head插件可以访问es 
http.cors.enabled: true  
http.cors.allow-origin: "*"

3、修改 elasticsearch-3 的 .yml 文件

# ================= Elasticsearch Configuration =================== 
# 配置es的集群名称, es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。  
cluster.name: elasticsearch 
# 节点名称  
node.name: node-003
# 指定该节点是否有资格被选举成为node  
node.master: true  
# 指定该节点是否存储索引数据,默认为true。  
node.data: true  
# 设置绑定的ip地址还有其它节点和该节点交互的ip地址,本机ip  
network.host: 127.0.0.1  
# 指定http端口,你使用head、kopf等相关插件使用的端口 
http.port: 9202 
# 设置节点间交互的tcp端口,默认是9300。  
transport.tcp.port: 9302
#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
#因为下一台elasticsearch的port端口会设置成9301  所以写入两台#elasticsearch地址的完整路径 
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]  
#如果要使用head,那么需要增加新的参数,使head插件可以访问es 
http.cors.enabled: true 
http.cors.allow-origin: "*"

五、逐一启动每一台 ElasticSearch 服务,查看各自的端口号

 elasticsearch-1

elasticsearch-2

elasticsearch-3

六、将  elasticsearch-head-master 解压(这个软件解压即安装)

在安装的目录下右键新建一个 .txt 文件,写上 grunt server 这条命令,保存,并且更改后缀名为  .bat

 双击 gruntserver.bat 启动

访问  http://localhost:9200  看到效果图,到此就完成了。

最后,欢迎关注我的微信公众号,我会不定期分享有关 Java 开发的资料和自己写的原创文章。

原文地址:https://www.cnblogs.com/ynylub/p/11299763.html