龙空技术网

Elasticsearch在cenos7下搭建双机测试集群

IT老曾 267

前言:

现在咱们对“虚拟机双机互联”大概比较看重,同学们都想要了解一些“虚拟机双机互联”的相关内容。那么小编也在网络上收集了一些对于“虚拟机双机互联””的相关文章,希望大家能喜欢,大家一起来学习一下吧!

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。

一、 安装环境

两台cenos7虚拟机,ip为:192.168.1.41和192.168.1.42

elasticsearch需要的JDK版本为1.8. 因此需要给elasticsearch指定jdk1.8(不需要将jdk1.8配置到环境变量).

二、 下载安装包

从官网下下载elasticsearch 7.1版本的压缩包,kibana7.1压缩包

下载地址:

下载完毕以后上传到linux中:

三、 添加用户组及用户,配置密码

elasticsearch默认是不支持用root用户来启动的,我们建elsearch用户。

# 添加用户组

groupadd elsearch

# 添加用户

useradd -m -g elsearch elsearch

# 配置密码

passwd elsearch

四、 解压文件

gunzip elasticsearch-7.2.0-linux-x86_64.tar.gztar -xvf elasticsearch-7.2.0-linux-x86_64.tar

目录结构:

bin:启动文件

config:配置文件

log4j2.properties:日志配置文件

jvm.options:java虚拟机的配置

elasticsearch.yml:es的配置文件

data:索引数据目录

lib:相关类库Jar包

logs:日志目录

modules:功能模块

plugins:插件

五、 新建索引数据与日志数据目录

# 在elasticsearch-7.2.0目录中新建目录,注意目录权限

cd elasticsearch-7.2.0mkdir datacd datamkdir escd esmkdir datamkdir logs

六、 修改每个进程最大同时打开文件数太小

vi /etc/security/limits.conf

# 增加如下:

# elsearch为用户名

elsearch soft nofile 65536elsearch hard nofile 65536

# 保存之后,退出当前用户重新登录生效,可用如下命令查看是否修改成功

ulimit -Hnulimit -Sn

七、 设置最大虚拟内存

vi /etc/sysctl.conf

# 增加如下:

vm.max_map_count=262144

# 修改完之后,执行如下命令生效

sysctl -p

八、 设置最大线程数

vi /etc/security/limits.conf

# 增加如下:

# elsearch为用户名

elsearch soft nproc 4096elsearch hard nproc 4096

# 保存之后,退出当前用户重新登录生效,可用如下命令查看是否修改成功

ulimit -Huulimit -Su

九、 配置elasticsearch

编辑:config/elasticsearch.yml

配置说明:

参数

说明

cluster.name

集群名称,相同名称为一个集群

node.name

节点名称,集群模式下每个节点名称唯一

node.master

当前节点是否可以被选举为master节点,是:true、否:false

node.data

当前节点是否用于存储数据,是:true、否:false

path.data

索引数据存放的位置

path.logs

日志文件存放的位置

bootstrap.memory_lock

需求锁住物理内存,是:true、否:false

bootstrap.system_call_filter

SecComp检测,是:true、否:false

network.host

监听地址,用于访问该es

network.publish_host

可设置成内网ip,用于集群内各机器间通信

http.port

es对外提供的http端口,默认 9200

discovery.seed_hosts

es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点

cluster.initial_master_nodes

es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master

http.cors.enabled

是否支持跨域,是:true,在使用head插件时需要此配置

http.cors.allow-origin

"*" 表示支持所有域名

节点1:

cluster.name: es-test (集群名称必须一致)node.name: node-1 (节点名称必须不同)node.master: true (是否为主节点)node.data: truepath.data: /home/elsearch/elasticsearch-7.2.0/data/es/datapath.logs: /home/elsearch/elasticsearch-7.2.0/data/es/logsbootstrap.memory_lock: falsebootstrap.system_call_filter: falsenetwork.host: 192.168.1.41http.port: 9200transport.tcp.port: 9300discovery.seed_hosts: ["192.168.1.41:9300", "192.168.1.42:9300"]cluster.initial_master_nodes: ["node-1","node-2"]http.cors.enabled: truehttp.cors.allow-origin: "*"xpack.ml.enabled: false

节点2:

# 增加如下:cluster.name: es-test (集群名称必须一致)node.name: node-2 (节点名称必须不同)node.master: falsenode.data: truepath.data: /home/elsearch/elasticsearch-7.2.0/data/es/datapath.logs: /home/elsearch/elasticsearch-7.2.0/data/es/logsbootstrap.memory_lock: falsebootstrap.system_call_filter: falsenetwork.host: 192.168.1.41http.port: 9200transport.tcp.port: 9300discovery.seed_hosts: ["192.168.1.41:9300", "192.168.1.42:9300"]cluster.initial_master_nodes: ["node-1","node-2"]http.cors.enabled: truehttp.cors.allow-origin: "*"xpack.ml.enabled: false

十、 修改elasticsearch内存大小

编辑config/jvm.options

 # 按需修改如下内存大小即可-Xms4g-Xmx4g

十一、 运行elasticsearch

在elasticsearch-7.2.0/bin 目录,执行elasticsearch

Cd

./elasticsearch -d

#其中-d表示后台启动

标签: #虚拟机双机互联