Elasticsearch 7.x 最详细安装及配置

一、Elasticsearch 7.x

小马哥说过,学习技术栈得看版本,那么 Elasticsearch 7.x 有什么好的特性呢?

ES 7.0 是 2019 年 4 月份发布的,底层是 Lucene 8.0。其他还有需要了解的是:

  • 废除单个索引下多 Type 的支持
  • ES Security 免费使用
  • ECK - ES Operator on K8s
  • 新功能:New Cluster coordination
  • 新功能:完整的 High Level REST Client
  • 新功能:Script Score Query
  • 性能:默认 Primary Shard 数从 5 到 1 ,避免 Over Sharding;性能优化更快的 Top K

二、Elasticsearch 7.x 安装步骤

2.1 下载 Elasticsearch 7.2.1

下载地址:https://www.elastic.co/cn/downloads/elasticsearch

如图,下载对应需要的 ES 。我这边是 MacOS ,所以直接下载了 MacOS 的本。另外 ES 支持 Docker 方式启动。另外,ES 7.x 不需要本地 JDK 环境支持:

  • ES 5,安装需要 JDK 8 以上
  • ES 6.5,安装需要 JDK 11 以上
  • ES 7.2.1,内置了 JDK 12

下载完后,ES 文件目录结构如下图所示:

Elasticsearch 7.2.1 目录结构如下:

  • bin :脚本文件,包括 ES 启动 & 安装插件等等
  • config : elasticsearch.yml(ES 配置文件)、jvm.options(JVM 配置文件)、日志配置文件等等
  • JDK : 内置的 JDK,JAVA_VERSION="12.0.1"
  • lib : 类库
  • logs : 日志文件
  • modules : ES 所有模块,包括 X-pack 等
  • plugins : ES 已经安装的插件。默认没有插件
  • data : ES 启动的时候,会有该目录,用来存储文档数据。该目录可以设置

具体看看关键的 jvm.options JVM 配置文件,默认配置如下:

-Xms1g
-Xmx1g

ES 默认安装后设置的堆内存是 1 GB,对于任何业务来说这个设置肯定是少了。那设置多少?

推荐:如果足够的内存,也尽量不要 超过 32 GB。即每个节点内存分配不超过 32 GB。 因为它浪费了内存,降低了 CPU 的性能,还要让 GC 应对大内存。如果你想保证其安全可靠,设置堆内存为 31 GB 是一个安全的选择。

上述推荐,理由来自《堆内存:大小和交换编辑》:https://www.elastic.co/guide/cn/elasticsearch/guide/current/heap-sizing.html

2.2 启动 Elasticsearch 7.2.1

启动方式很简单,在 ES 根目录下面,执行启动脚本文件:

cd elasticsearch-7.2.1
bin/elasticsearch

运行完后,会出现下面的日志:

future versions of Elasticsearch will require Java 11; your Java version from [/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre] does not meet this requirement... 省略[2019-08-16T16:29:53,069][INFO ][o.e.n.Node               ] [BYSocketdeMacBook-Pro-2.local] started
[2019-08-16T16:29:53,478][INFO ][o.e.l.LicenseService     ] [BYSocketdeMacBook-Pro-2.local] license [ef60f54d-4964-4cb6-98ac-aafdc0f2a4c0] mode [basic] - valid
[2019-08-16T16:29:53,491][INFO ][o.e.g.GatewayService     ] [BYSocketdeMacBook-Pro-2.local] recovered [0] indices into cluster_state
[2019-08-16T16:30:23,057][INFO ][o.e.c.r.a.DiskThresholdMonitor] [BYSocketdeMacBook-Pro-2.local] low disk watermark [85%] exceeded on [DRs4DZO0SzCaYz3n3vA3Fg][BYSocketdeMacBook-Pro-2.local][/javaee/es/elasticsearch-7.2.1/data/nodes/0] free: 49.2gb[10.6%], replicas will not be assigned to this node

日志中有两个信息需要注意:

  • 本机环境是 JDK 8 ,它会提醒后面版本需要 JDK 11 支持。但它是向下兼容的
  • 表示本机 ES 启动成功 [BYSocketdeMacBook-Pro-2.local] started

2.3 验证是否启动成功

打开浏览器,输入 http://localhost:9200/ 地址,然后可以得到下面的信息:

{"name": "BYSocketdeMacBook-Pro-2.local","cluster_name": "elasticsearch","cluster_uuid": "tc9h17oqSHKvGJb3qK2tPg","version": {"number": "7.2.1","build_flavor": "default","build_type": "tar","build_hash": "fe6cb20","build_date": "2019-07-24T17:58:29.979462Z","build_snapshot": false,"lucene_version": "8.0.0","minimum_wire_compatibility_version": "6.8.0","minimum_index_compatibility_version": "6.0.0-beta1"},"tagline": "You Know, for Search"
}

重点几个关注下即可:

  • name : 默认启动的时候指定了 ES 实例名称,name 为 BYSocketdeMacBook-Pro-2.local
  • cluster_name : 默认名为 elasticsearch
  • version :版本信息

同样通过 http://localhost:9200/_cat/nodes?v 地址,可以看到当前节点信息,如下:

127.0.0.1 30 100 22 2.87   mdi * BYSocketdeMacBook-Pro-2.local

2.4 单机集群多个 ES 实例安装

单机多个 ES 实例,形成一个 ES 单机伪集群,启动脚本如下:

bin/elasticsearch -E node.name=node01 -E cluster.name=bysocket_es_cluster -E path.data=node01_data -dbin/elasticsearch -E node.name=node02 -E cluster.name=bysocket_es_cluster -E path.data=node02_data -dbin/elasticsearch -E node.name=node03 -E cluster.name=bysocket_es_cluster -E path.data=node03_data -dbin/elasticsearch -E node.name=node04 -E cluster.name=bysocket_es_cluster -E path.data=node04_data -d

命令简单解释如下:

  • node.name : ES 节点名称,即实例名
  • cluster.name : ES 集群名称
  • path.data : 指定了存储文档数据目录

执行完脚本后,需要等一会 ES 启动,也可以查看 logs 看看执行情况。

打开浏览器,输入 http://localhost:9200/_cat/nodes?v 地址,可以看到启动情况:node01 为当前 master 节点

如何关闭集群中的 ES 实例,可以使用简单的命令实现:

ps | grep elasticsearch
kill -9 pid

三、Elasticsearch 7.x 插件概述

插件是用来增强 Elasticsearch 功能的方法,分为 核心插件(官方) & 社区插件。

安装 analysis-icu ICU 分析插件,命令如下:

sudo bin/elasticsearch-plugin install analysis-icu

查看已安装的插件,命令如下:

bin/elasticsearch-plugin list 

删除已安装的插件,命令如下:

sudo bin/elasticsearch-plugin remove analysis-icu

四、小结

本文介绍了两种安装以及插件安装,因为方便学习集群相关的知识点。另外注意 JVM 配置相关的优化即可。后续继续 Elasticsearch 7.x 操作学习 ~

(完)原创不易,帮转 ~

资料:

  • 极客时间课程
  • 官网资料 https://www.elastic.co
  • bysocket.com

转载于:https://www.cnblogs.com/Alandre/p/11386178.html

Elasticsearch 7.x 最详细安装及配置相关推荐

  1. 图解MySQL5.5详细安装与配置过程

    出自:http://www.dbhom.com/show.aspx?id=77&cid=9 MySQL是一个开源的关系型数据库管理系统,原由瑞典MySQL AB公司开发,目前属于Oracle公 ...

  2. MongoDB详细安装与配置

    MongoDB详细安装与配置 下载地址 MongoDB安装 1.双击安装包进行安装 2.点击I accept the tems in the license agreement,点击Next 3.选择 ...

  3. linux 安装cvs,linux下cvs详细安装和配置.docx

    Linux 下cvs详细安装和配置 2009-03-18 14:37:12 标签:[推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始岀处 作者信息和本声明.否则将追究 ...

  4. MySql的详细安装与配置步骤

    安装MySql的详细步骤 1.如果电脑没有下载mysql-5.5.13-win32.msi的,先去网上下载一下,这里提供一个连接,mysql下载点此处. 2.下载好了mysql就可以开始安装了,双击m ...

  5. 【Linux】Samba服务器超详细安装、配置(附带各种问题解决方式)

    在嵌入式系统开发应用平台中,tftp.nfs和samba服务器是最常用的文件传输工具,tftp和nfs是在嵌入式Linux开发环境中经常使用的传输工具,samba则是Linux和Windows之间的文 ...

  6. [基础服务-windows] [ELK] ElasticSearch + Kibana + Logstash 以及插件安装和配置

    步骤/详情 一:下载 注意的是下载版本为免安装版.下载地址: https://www.elastic.co/cn/downloads/elasticsearch 笔者由于当前用的是JDK8选择的是 7 ...

  7. Windows系统下MySQL8.0版详细安装及配置教程

    一. 前言 MySQL是目前最为流行的开源数据库产品,是完全网络化跨平台的关系型数据库系统.它起初是由瑞典MySQLAB公司开发,后来被Oracle公司收购,目前属于Oracle公司.因为开源,所以任 ...

  8. win10+R4.1.2语言+Rstido(2022.02.0)详细安装和配置方法

    一.安装R语言 首先下载 R语言. https://cran.r-project.org/mirrors.html 进入网页后,找到清华 如下图: 点击进入下载页面,如下图 然后会进入页面如下图,选择 ...

  9. MySQL详细安装和配置图解

    MySQL安装图解 一.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行"setup.exe". 2.选择安装类型, ...

  10. Win Server下超详细安装和配置DNS

    说明   服务器的配置是每一位计算机相关专业必备技能,本文已Win Server为平台,介绍DNS的安装和配置. 配置 系统:Win Server 2008 类别:DNS 平台:VMWare 16 以 ...

最新文章

  1. 让炼丹师不再为数据集发愁,这家公司建了一个AI公开数据集平台
  2. sql 查询嵌套数组
  3. css中的一些常用选择器
  4. 联想创投子公司国民认证,助力农行全面升级FIDO移动生物识别安全认证
  5. Eclipse is running in a JRE, but a JDK is required 解决方法(转)
  6. 强烈推荐:SiteServer CMS开源免费的企业级CMS系统!
  7. 为普及再助一把力!《2021年中国低代码/无代码市场研究报告》正式发布
  8. 如何用Vue实现一个全选指令
  9. java中set语句_数据步骤中的多个SET / MERGE语句
  10. Don't Make Me Think
  11. css字体及css文本控制
  12. 1. 喵喵宠物管理系统需求分析
  13. Excel绘制折线图--更新中。。。
  14. Netty高性能之道 1
  15. 一文读懂什么是数据产品交易
  16. java中使用Calendar日期类获得下一个月有多少天
  17. 10个可以实现高效工作与在线赚钱的 AI 工具网站
  18. Google Analytics中的 direct, organic search, referral
  19. 网络环路检测定位技术的发展过程
  20. flink 空闲窗口-withIdleness

热门文章

  1. 冒泡排序最佳情况的时间复杂度,为什么是O(n)
  2. 什么时候要用存储过程,存储过程的优点 .
  3. 克就克嘛!哪个怕哪个
  4. mice包--R中数据缺失值的处理
  5. Spring Data Rest如何暴露ID字段
  6. 【原创】修复ios输入框获取焦点时不支持fixed的bug
  7. 【转】Google Chrome浏览器调试
  8. 技术要求→物理安全→防雷击
  9. 关于 FROM tableA,tableB 和 tableA LEFT JOIN tableB on 的区别
  10. BI前端展示工具评估