关于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,查看集群状态
2、新建索引测试
查看索引列表,初始应该都为空(没有创建任何索引)
GET /_cat/indices?v&pretty
在其中一台机器(10.20.1.52)创建索引customer
PUT /customer?pretty
其他机器(10.20.1.54)查看索引,可以看到,数据是“同步“的
GET /_cat/indices?v&pretty
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。