关于Elasticsearch(单机版)的下载、安装、基本配置、启动、测试等,请参考另一篇文章:CentOS安装Elasticsearch

搭建集群只需在此基础上增加一些配置,本文也主要介绍这些和集群相关的配置,其他步骤不再赘述

假设节点数为3,ip分别为:10.20.1.52,10.20.1.53,10.20.1.54

一、配置

shell> cd /usr/local/elasticsearch-5.6.4/config
shell> vim elasticsearch.yml

编辑以下内容:

#
# ---------------------------------- Cluster -----------------------------------
#
# 集群名称,默认:elasticsearch;如果当前网络环境中只有这一个集群,可以不配置(建议配置个更有意义的名字)
cluster.name: test
#
# ------------------------------------ Node ------------------------------------
#
# 当前节点名称,这里3台机器分别设置的是:node-1,node-2,node3
node.name: node-1
# 指定该节点是否有资格被选举成为node,默认:true;es默认集群中的第一台机器为master,如果这台机挂了就会重新选举master
node.master: true
# 指定该节点是否存储索引数据,默认:true
node.data: true
#
# ----------------------------------- Paths ------------------------------------
# “单机版”已经介绍过的“基础配置”
path.data: /usr/local/elasticsearch-5.6.4/data           
path.logs: /usr/local/elasticsearch-5.6.4/logs
#
# ---------------------------------- Network -----------------------------------
# “单机版”已经介绍过的“基础配置”
# 3台机器分别设置为自己的ip:10.20.1.52,10.20.1.53,10.20.1.54
network.host: 10.20.1.52
#
# --------------------------------- Discovery ----------------------------------

# 集群中master节点的初始列表,如果不是使用默认的9300端口(节点之间默认使用9300端口通讯)
# 在后面加上端口号["10.20.1.52", "10.20.1.53:9203","10.20.1.54:9204"]
discovery.zen.ping.unicast.hosts: ["10.20.1.52", "10.20.1.53","10.20.1.54"]
# 防止”脑裂”(简单说就是被分成了两个独立的集群),通常设置成(master_eligible_nodes / 2) + 1
# 比如这里3台机器都可以成为master,就是(3 / 2) + 1 = 2
discovery.zen.minimum_master_nodes: 2

二、测试

分别启动3个节点,测试该集群

1、浏览器输入:http://10.20.1.52:9200/_cluster/health?pretty=true,查看集群状态

image-20200405011645719.png

2、新建索引测试

查看索引列表,初始应该都为空(没有创建任何索引)

GET /_cat/indices?v&pretty

image-20200405012048339.png

在其中一台机器(10.20.1.52)创建索引customer

PUT /customer?pretty

image-20200405012133568.png

其他机器(10.20.1.54)查看索引,可以看到,数据是“同步“的

GET /_cat/indices?v&pretty

image-20200405012410485.png


tianranll
68 声望2 粉丝