Elasticsearch 5.6.4 分布式集群部署

2022-01-29 00:00:00 集群 版本 节点 设置 服务器

部署环境说明:

操作系统:CentOS7

elasticsearch版本:elasticsearch-5.6.4.tar.gz

JDK版本:jdk1.8.0_144

服务器:

192.168.1.240(主节点、数据节点)

192.168.1.241(主节点、数据节点)

192.168.1.242(数据节点)

部署步骤:

elasticsearch5.6.4必需要jdk1.8版本,后续简称es

部署前需要首先安装jdk1.8,然后设置jdk的环境变量,这里就不赘述了

当然如果不想改变原先jdk的环境变量,比如原先服务器上已经安装了其他版本的jdk,下文会介绍另外一种方式

1、修改内核参数,如果不修改内核参数后续启动es会报各种错误

vi /etc/security/limits.conf 添加如下内容(也可以根据实际设定为其他值)

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

vi /etc/sysctl.conf 添加如下内容

vm.max_map_count=655360

执行 sysctl -p 使配置生效

2、在elasticsearch官网(https://www.elastic.co/downloads/elasticsearch)下载elasticsearch-5.6.4.tar.gz

放到/opt下,解压缩

tar -xvzf elasticsearch-5.6.4.tar.gz

生成文件夹 elasticsearch-5.6.4

3、建立运行es的用户(es不允许以root用户执行,没有找到其他的解决方案这个版本)

adduser elas

passwd elas 设定密码

chown -R elas /opt/elasticsearch-5.6.4 将文件夹的所有权给elas用户

4、修改配置文件,这个步骤在三台服务器上执行不同的操作

在192.168.1.240 上

vi /opt/elasticsearch-5.6.4/config/elasticsearch.yml

增加如下配置

#设置集群的名称

cluster.name: elas-1

#设置当前节点的名称

node.name: hadoop

#设置当前节点的HOST

network.host: 192.168.1.240

#设置当前节点为主节点

node.master: true

#设置当前节点为数据节点

node.data: true

#允许跨源REST请求,后续安装head插件需要此参数

http.cors.enabled: true

#设置跨源的REST来自何处,*表示所有

http.cors.allow-origin: "*"

#集群-发现模式,这里使用的是单播,多播在某些环境下不受支持,比如阿里云

discovery.zen.ping.unicast.hosts: ["192.168.1.240","192.168.1.241","192.168.1.242"]

在192.168.1.241上

cluster.name: elas-1

node.name: hadoop2

network.host: 192.168.1.241

node.master: true

node.data: true

http.cors.enabled: true

http.cors.allow-origin: "*"

discovery.zen.ping.unicast.hosts: ["192.168.1.240","192.168.1.241","192.168.1.242"]

在192.168.1.242上

cluster.name: elas-1

node.name: hadoop3

network.host: 192.168.1.242

#不是主节点

node.master: false

node.data: true

http.cors.enabled: true

http.cors.allow-origin: "*"

discovery.zen.ping.unicast.hosts: ["192.168.1.240","192.168.1.241","192.168.1.242"]

5、启动

切换到elas用户

su - elas

在三台服务器是上分别执行命令

cd /opt/elasticsearch-5.6.4

bin/elasticsearch

上文说过如果没有设置jdk1.8的环境变量,可以修改一下这个启动脚本,在开始处增加jdk1.8的JAVA_HOME

export JAVA_HOME=/opt/jdk1.8.0_144

启动成功后,会有如下的日志输出


相关文章