Java 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 内有 dqcgm这个用户
  • chown -R dqcgm.dqcgm /usr/local/es

2.4 切换用户

  • su dqcgm

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/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

地球村公民

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

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

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

打赏作者

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

抵扣说明:

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

余额充值