基于CentOS7的Elasticsearch集群搭建记录

环境

Linux系统:Centos7
Java版本:JDK1.8

2台服务器部署结构

hostnametomas1hadoopSvr3
IP10.62.124.2510.62.124.43
ESESES

一、前提

1、JDK版本要求1.8及以上;

2、ES不能以root用户身份运行 确保运行用户对各使用到的目录的权限;

2.1、创建elsearch用户组及elsearch用户

groupadd elsearch
useradd elsearch -g elsearch -p elsearch
passwd elsearch

输入密码(elsearch)后一直按回车即可,最后输入y确定。

2.2、更改安装目录elasticsearch-6.6.1及内部文件的所属用户及组为elsearch:elsearch

cd /usr/local/
chown -R elsearch:elsearch hadoop

更改保存ES数据和log等数据目录所属用户及祖为elsearch:elsearch

cd /data
chown -R elsearch:elsearch elastic

3、配置操作系统vm.max_map_count参数,请使用root用户登录系统,执行如下命令

sysctl -w vm.max_map_count=655360

注:vm.max_map_count参数的值至少要设置大于等于262144
查看修改是否生效

[root@es1 hadoop]# more /proc/sys/vm/max_map_count
655360

上述方法修改后,如果服务器重启将失效,永久修改方法:
在/etc/sysctl.conf文件最后添加一行

vm.max_map_count=655360

4、修改单个进程可打开的最大文件句柄数限制

在root用户下,在/etc/security/limits.conf文件中增加如下几行

elsearch        soft    nofile          655360
elsearch        hard    nofile          655360
elsearch		soft	nproc			65536
elsearch        hard    nproc           65536

重启系统生效。

二、安装ES

切换到elsearch用户,如下操作均在该用户下执行

1、目录规划

/data
	|__ elastic
			|__ elasticsearch
							|__ config
							|__ data
							|__ logs

2、下载ES安装包

官网下载地址:https://www.elastic.co/downloads/elasticsearch
(以版本elasticsearch-6.6.1.tar.gz为示例)

3、将安装包放到/usr/local/hadoop目录,解压缩安装包

cd /usr/local/hadoop
tar zxvf elasticsearch-6.6.1.tar.gz 
mv elasticsearch-6.6.1 elasticsearch

三、配置

配置文件说明

elasticsearch.yml	#ES基本配置文件		
jvm.options  		#Jvm参数配置文件
log4j2.properties	#Log4j配置文件

3.1、配置文件分离

配置文件目录默认为:$ES_HOME/config,如果需要配置文件与软件分离(方便升级),可以通过 ES_PATH_CONF 环境变量来指定:

vi ~/.bashrc

打开后,在文档最下方添加如下配置:

export ES_HOME=/usr/local/hadoop/elasticsearch
export ES_PATH_CONF=/data/elastic/elasticsearch/config

:wq!保存退出,执行如下命令,使更改生效

source ~/.bashrc

也可以在启动命令行中通过参数指定声明

3.2、配置elasticsearch.yml

3.2.1、Cluster配置,所属的集群名,默认为 elasticsearch ,可自定义

cluster.name: ES-cluster

3.2.2、Node配置,节点名,默认为 UUID前7个字符,可自定义

node.name: ${HOSTNAME}
(以主机名作节点名)

3.2.3、Paths配置,数据目录和日志目录,生产环境下应与软件分离

path.data: /data/elastic/elasticsearch/data
path.logs: /data/elastic/elasticsearch/logs

3.2.4、Network配置

#network.host IP绑定
默认绑定的是[“127.0.0.1”, “[::1]”]回环地址,集群下要服务间通信,需绑定一个ipv4或ipv6地址
network.host: 10.62.124.25

#http.port: 9200
对外服务的http 端口, 默认 9200-9300 。可以为它指定一个值或一个区间,当为区间时会取用区间第一个可用的端口。

3.2.5、Discovery配置,Discovery Config 节点发现配置

ES中默认采用的节点发现方式是 zen(基于组播(多播)、单播)。在应用于生产前有两个重要参数需配置:
discovery.zen.ping.unicast.hosts: [“host1”,“host2:port”,“host3[portX-portY]”] 单播模式下,设置具有master资格的节点列表,新加入的节点向这个列表中的节点发送请求来加入集群
discovery.zen.minimum_master_nodes: 1 这个参数控制的是,一个节点需要看到具有master资格的节点的最小数量,然后才能在集群中做操作。官方的推荐值是(N/2)+1,其中N是具有master资格的节点的数量。
discovery.zen.ping.unicast.hosts: [“10.62.124.25”, “10.62.124.43”]
discovery.zen.minimum_master_nodes: 2

3.3、配置jvm.options

3.3.1、Jvm heap 大小设置

生产环境中一定要在jvm.options中调大它的jvm内存:
-Xms125g
-Xmx125g

:确保heap size至少是系统可用总内存的一半

3.3.2、JVM heap dump path 设置

生产环境中指定当发生OOM异常时,heap的dump path,好分析问题。在jvm.options中配置:
-XX:HeapDumpPath=/data/elastic/elasticsearch

四、启动集群

#切换到elsearch用户

su elsearch
cd /usr/local/elasticsearch-6.6.1
./bin/elasticsearch -d

五、检查ES是否安装成功

Elasticsearch直接听过了http接口,所以直接使用curl命令或者浏览器就可以查看到一些集群相关的信息。
打开浏览器,输入地址 http://10.62.124.25:9200 出现以下内容则表示安装成功

{
  "name" : "tomas1",
  "cluster_name" : "ES-cluster",
  "cluster_uuid" : "1zFScgM8RhyweQAsOGgiPQ",
  "version" : {
    "number" : "6.6.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "1fd8f69",
    "build_date" : "2019-02-13T17:10:04.160291Z",
    "build_snapshot" : false,
    "lucene_version" : "7.6.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

查看集群信息,浏览器地址栏输入地址:http://10.62.124.25:9200/_cat/nodes?pretty,回车,输出内容如下

10.62.124.43 14 98 1 0.11 0.40 0.27 mdi - hadoopSvr3
10.62.124.25 12 38 3 0.09 0.66 1.14 mdi * tomas1	#  *号表示为当前节点为主节点的意思

如果你要想查看更多有关于集群信息、当前节点统计信息等等,可以使用一下命令来获取到所有可以查看的信息。

curl -XGET 'http://0.62.124.25:9200/_cat?pretty'  

参考:
https://www.cnblogs.com/leeSmall/p/9189078.html
https://www.cnblogs.com/leeSmall/p/9220535.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值