目录
步骤七、配置节点192.168.110.132、192.168.110.133
步骤五、修改Elasticsearch服务相关路径属主为elasticsearch用户
步骤六、Elasticsearch01节点、Elasticsearch03节点安装Elasticsearch服务
1、配置Elasticsearch01节点并启动Elasticsearch服务
2、配置Elasticsearch02节点并启动Elasticsearch服务
3、配置Elasticsearch03节点并启动Elasticsearch服务
一、Elasticsearch集群简介
(一)、基本概念名词
1、Cluster
Cluster代表一个Elasticsearch集群。集群中有多个节点,可以分为主节点与数据节点。其中主节点可以通过选举产生,负责集群状态管理、分片分配管理等工作。数据节点负责保存文档数据,执行数据增、删、改、查等操作。
2、Shards
Elasticsearch服务为了支持水平扩展和提高容错性,将每个索引的数据分成多个主分片存储。在主分片的基础上,还支持将主分片的副本分片分布在多个节点上,以便在主分片失效时能够快速切换到副本分片上。
- Primary shards:主分片。当存储一个文档数据时,系统首先存储在主分片中,然后复制到不同的副本。一个索引默认有5个主分片。可以先制定分片的数量,分片确定后不能再修改。
- Replica shards:副本分片。每一个主分片有零个或多个副本分片。副本分片是主分片的复制,可以 增加高可用性,提高性能。一个主分片默认有一个副本分片,但副本分片的数量可以在后期动态调整。副本分片必须部署在不同的集群节点上,不能部署在与主分片相同的节点上。
(二)、总分片数计算
注意:主分片对应的副本分片不能存放在同一台服务器上。
1、3主分片+1副本分片
即有3个主分片,每个主分片有一个副本分片
总分片数=3主分片+3*1个副本分片 = 6个分片
2、3主分片+2副本分片
即有3个主分片,每个主分片有两个副本分片
总分片数=3主分片+3*2个副本分片 = 9个分片
二、环境规划
- 集群节点规划
主机IP | 主机名称 | 角色 |
192.168.110.131 | Elasticsearch01 | 主节点,数据节点 |
192.168.110.132 | Elasticsearch02 | 数据节点 |
192.168.110.133 | Elasticsearch03 | 数据节点 |
- 系统版本
CentOS Linux release 7.7.1908 (Core)
- 关闭防火墙
此处为方便演示,直接关闭防火墙。
生产环境可以根据实际需求开通服务器防火墙策略。
systemctl stop firewalld
systemctl stop iptables
- Elasticsearch版本
此处使用elasticsearch-7.12.1-linux-x86_64版本
三、集群模式搭建
(一)、主机基本配置
此处以配置节点192.168.110.131为例。
步骤一、修改主机名称
[root@Node01 ~]# vim /etc/hostname
加入如下内容:
Elasticsearch01
步骤二、修改hosts文件
[root@Node01 ~]# vim /etc/hosts
加入如下内容:
192.168.110.131 Elasticsearch01
192.168.110.132 Elasticsearch02
192.168.110.133 Elasticsearch03
步骤三、创建elasticsearch用户
- 创建elasticsearch用户
[root@Node01 ~]# useradd -m -d /home/elasticsearch elasticsearch
- 修改elasticsearch用户密码
[root@Node01 ~]# passwd elasticsearch
步骤四、修改配置文件limits.conf
- 修改limits.conf
[root@Node01 ~]# vim /etc/security/limits.conf
加入如下内容:
elasticsearch soft nofile 65535
elasticsearch hard nofile 65535
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
elasticsearch - nproc 65535
- 切换elasticsearch用户查看是否生效
[root@Node01 ~]# su - elasticsearch
[elasticsearch@Node01 ~]$ ulimit -a
步骤五、修改配置文件sysctl.conf
- 修改sysctl.conf
[root@Node01 ~]# vim /etc/sysctl.conf
加入如下内容:
vm.max_map_count=262144
- 执行命令生效
[root@Elasticsearch01 ~]# sysctl -p
vm.max_map_count = 262144
步骤六、重启服务器
[root@Node01 ~]# shutdown -r now
步骤七、配置节点192.168.110.132、192.168.110.133
节点192.168.110.132、192.168.110.133,按照步骤一至步骤四进行配置。
其中:
节点192.168.110.132的主机名称为Elasticsearch02
节点192.168.110.133的主机名称为Elasticsearch03
(二)、集群节点安装Elasticsearch服务
此处以Elasticsearch02节点(192.168.110.132)安装Elasticsearch服务为例。
步骤一、创建安装路径
- 创建主路径
[root@Elasticsearch02 ~]# mkdir -p /data/Elasticsearch
- 创建数据路径
[root@Elasticsearch02 ~]# mkdir -p /data/Elasticsearch/esdata
- 创建日志路径
[root@Elasticsearch02 ~]# mkdir -p /data/Elasticsearch/eslog
步骤二、下载Elasticsearch安装包
[root@Elasticsearch02 ~]# cd /data/Elasticsearch
[root@Elasticsearch02 Elasticsearch]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.12.1-linux-x86_64.tar.gz
步骤三、解压Elasticsearch安装包
[root@Elasticsearch02 ~]# cd /data/Elasticsearch
[root@Elasticsearch02 Elasticsearch]# tar -zxvf elasticsearch-7.12.1-linux-x86_64.tar.gz
步骤四、配置使用Elasticsearch自带JDK
- 修改profile文件
[root@Elasticsearch02 ~]# vim /etc/profile
在文件最后加入如下内容:
export ESJAVAHOME=/data/Elasticsearch/elasticsearch-7.12.1/jdk
- 使profile文件生效
[root@Elasticsearch02 ~]# source /etc/profile
步骤五、修改Elasticsearch服务相关路径属主为elasticsearch用户
- 修改服务安装路径
[root@Elasticsearch02 ~]# chown -R elasticsearch:elasticsearch /data/Elasticsearch/elasticsearch-7.12.1
[root@Elasticsearch02 ~]# ll /data/Elasticsearch/