ELK技术栈系列-ElasticSearch(二) Linux 安装 ElasticSearch

Linux 安装 ElasticSearch

使用的 ElasticSearch 的版本是 6.8.4。ElasticSearch6.x 要求 Linux 内核必须是 3.5+版本以上。

在 linux 操作系统中,查看内核版本的命令是: uname -a

课堂使用的 Linux 是 CentOS8。内核使用的是 4.4。

ElasticSearch6.X 版本要求 JDK 版本至少是 1.8.0_131。 提供 1.8.0_161JDK 安装包。

1 为 ElasticSearch 提供完善的系统配置

ElasticSearch 在 Linux 中安装部署的时候,需要系统为其提供若干系统配置。如:应
用可启动的线程数、应用可以在系统中划分的虚拟内存、应用可以最多创建多少文件等。

1.1 修改限制信息

vi /etc/security/limits.conf

是修改系统中允许应用最多创建多少文件等的限制权限。Linux 默认来说,一般限制应用最多创建的文件是 65535 个。但是 ElasticSearch 至少需要 65536 的文件创建权限。修改后的内容为:

* soft nofile 65536

* hard nofile 65536

1.2 修改线程开启限制

在 CentOS6.5 版本中编辑下述的配置文件

vi /etc/security/limits.d/90-nproc.conf

在 CentOS7+版本中编辑配置文件是:

vi /etc/security/limits.conf

是修改系统中允许用户启动的进程开启多少个线程。默认的 Linux 限制 root 用户开启的进程可以开启任意数量的线程,其他用户开启的进程可以开启 1024 个线程。必须修改限制数为 4096+。因为 ElasticSearch 至少需要 4096 的线程池预备。ElasticSearch 在 5.x版本之后,强制要求在 linux 中不能使用 root 用户启动 ElasticSearch 进程。所以必须使用其他用户启动 ElasticSearch 进程才可以。

* soft nproc 4096

root soft nproc unlimited

注意:Linux 低版本内核为线程分配的内存是 128K。4.x 版本的内核分配的内存更大。如果虚拟机的内存是 1G,最多只能开启 3000+个线程数。至少为虚拟机分配 1.5G 以上的内存。

1.3 修改系统控制权限

CentOS6.5 中的配置文件为:

vi /etc/sysctl.conf

CentOS8 中的配置文件为:

vi /etc/sysctl.d/99-sysctl.conf

系统控制文件是管理系统中的各种资源控制的配置文件。ElasticSearch 需要开辟一个65536 字节以上空间的虚拟内存。Linux 默认不允许任何用户和应用直接开辟虚拟内存。

新增内容为:

vm.max_map_count=655360

使用命令: sysctl -p 。 让系统控制权限配置生效。

2 安装 ElasticSearch

ElasticSearch 是 java 开发的应用。在 6.8.4 版本中,要求 JDK 至少是 1.8.0_131 版本以上。

ElasticSearch 的安装过程非常简单。解压立刻可以使用。

2.1 解压缩安装压缩包

tar -zxf elasticsearch-6.8.4.tar.gz

2.2 移动 ElasticSearch

mv elasticsearch-6.8.4 /usr/local/es/

2.3 修改 ElasticSearch 应用的所有者

因为 ElasticSearch 不允许 root 用户启动,而课堂案例中,ElasticSearch 是 root 用户解压缩的。所以解压后的 ElasticSearch 应用属于 root 用户。所以我们需要将ElasticSearch 应用的所有者修改为其他用户。当前课堂案例中虚拟机 Linux 内有 bjsxt 这个用户。

chown -R bjsxt.bjsxt /usr/local/es

2.4 切换用户

su bjsxt

2.5 修改配置

修改 config/elasticsearch 的配置文件,设置可访问的客户端。0.0.0.0 代表任意客户端访问。

vi config/elasticsearch.yml

增加下述内容:

network.host: 0.0.0.0

2.6 启动

前台启动

/usr/local/es/bin/elasticsearch

关闭: ctrl + c

后台启动

/usr/local/es/bin/elasticsearch -d

关闭:

jps 命令查看 ElasticSearch 线程的编号

kill -9 ElasticSearch 线程编号

2.7 测试连接

curl http://localhost:9200

返回如下结果:

{
	"name" : "L6WdN7y",
	"cluster_name" : "elasticsearch",
	"cluster_uuid" : "s7_GSd9YQnaH10VQBKCQ5w",
	"version" : {
		"number" : "6.3.1",
		"build_flavor" : "default",
		"build_type" : "tar",
		"build_hash" : "eb782d0",
		"build_date" : "2018-06-29T21:59:26.107521Z",
		"build_snapshot" : false,
		"lucene_version" : "7.3.1",
		"minimum_wire_compatibility_version" : "5.6.0",
		"minimum_index_compatibility_version" : "5.0.0"
	},
	"tagline" : "You Know, for Search"
}

3 搭建集群

修改配置文件$elasticsearch_home/config/elasticsearch.yml

增加配置:

# 发现的节点 IP

discovery.zen.ping.unicast.hosts: ["ip1", "ip2"]

# 最小集群数:常用计算公式 - 总数/2 + 1

discovery.zen.minimum_master_nodes: min_nodes_count

4 安装 Kibana

Kibana 是一个基于 WEB 的 ElasticSearch 管理控制台。现阶段安装 Kibana 主要是为了方便学习。

在 Linux 中安装 Kibana 很方便。解压,启动即可。Kibana 要求的环境配置是小于ElasticSearch 的要求的。

tar -zxf kibana-6.3.1-linux-x86_64.tar.gz

修改 config/kibana.yml

vi config/kibana.yml

新增内容: server.host: "0.0.0.0"

bin/kibana

访问时,使用浏览器访问 http://192.168.2.119:5601/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

plenilune-望月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值