4.ES--本地搭建集群【一主两从-- Mac版】

为了让我们的服务更加的高可用和健壮,我们在本地搭建一个集群测试步骤如下:
 
接着单机的环境【Mac】,把es 改名为 es-master 然后再复制出两个 es-slave1 和 es-slave2 
    cp -R  es-master  es-slave1
    cp -R  es-master  es-slave2
接着更改es-master 的elasticsearch.yml 文件中的内容如下:
  # 集群名称
  cluster.name: es-cluster
  # 节点名称
  node.name: node-master
  node.master: true
  node.data: true
  network.host: 127.0.0.1
  # http端口
  http.port: 9200
  # tcp监听端口
  transport.tcp.port: 9301 # 集群间的访问的端口
  # 解决跨域配置,从机和head插件连接
  http.cors.enabled: true
  http.cors.allow-origin: "*"
然后后台启动:
  ./bin/elasticsearch -d 
我们可以通过 ps  -ef  |  grep “elasticsearh” 服务是否启动,可以通过postman工具查看集群状态如下:
接着修改 es-slave1 和 es-slave2 的 elasticsearch.yml 配置文件
在配置之前要把es-slave1 和 es-slave2中的data文件夹和logs中的文件删掉
注:配置的时候集群名称必须保持一致,节点名称修改,提供的端口号也得修改包括transport,增加的配置如下,其他保持不变:
  node.name: node-slave1
  http.port: 9201
  transport.tcp.port: 9302
  discovery.seed_hosts: ["localhost:9301”] # 这是寻找master服务,下一个就要把这个9302的也加进去
  discovery.zen.fd.ping_timeout: 1m
  discovery.zen.fd.ping_retries: 5
 
然后也是后台启动,也可以通过 ps -ef  |  grep  “elasticsearch”  这是再发送集群状态查询如下:
 
head插件显示效果如下所示:
 
kim image
 
第二个从机的配置如下:【一定记得这个是从es-master复制过来的,删除data目录和logs里的文件,不然启动后无法刷新,如果非复制直接新的解压出来的无需做此项操作
  node.name: node-slave2
  http.port: 9202
  transport.tcp.port: 9303
  discovery.seed_hosts: ["localhost:9301","localhost:9302"]
  discovery.zen.fd.ping_timeout: 1m
  discovery.zen.fd.ping_retries: 5
 
效果如下:
kim image
 
 
 
 
 
 
 
posted @ 2022-07-05 19:49  以赛亚  阅读(530)  评论(0编辑  收藏  举报