文章目录

  • 新特性
  • 安装步骤
  • 下载 Elasticsearch 7.2.1
  • ES版本和JDK的兼容性
  • ES目录结构
  • 配置文件
  • 启动
  • 验证是否启动成功
  • 节点信息
  • 单机集群部署
  • 查看节点启动日志
  • Elasticsearch 7.x 插件


新特性

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

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

安装步骤

下载 Elasticsearch 7.2.1

下载地址

es forcemerge 处理速度慢_配置文件


注意:

根据部署的系统来选择对应的安装包,我安装是mac系统,选择MACOS。window和linux选择对应系统。

ES版本和JDK的兼容性

ES7 内置了JDK12,不需要单独安装了。

  1. ES 5,安装需要 JDK 8 以上
  2. ES 6.5,安装需要 JDK 11 以上
  3. ES 7.2.1,内置了 JDK 12

ES目录结构

es forcemerge 处理速度慢_es forcemerge 处理速度慢_02

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

配置文件

jvm.options 默认配置
-Xms1g
-Xmx1g

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

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

启动

在 ES 根目录下面,执行启动脚本文件:

cd elasticsearch-7.14.0
./bin/elasticsearch

启动日志

es forcemerge 处理速度慢_es forcemerge 处理速度慢_03


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

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

验证是否启动成功

http://localhost:9200/

es forcemerge 处理速度慢_es forcemerge 处理速度慢_04


name : 默认启动的时候指定了 ES 实例名称,name 为 bogon

cluster_name : 默认名为 elasticsearch

version :版本信息

节点信息

http://localhost:9200/_cat/nodes?v

es forcemerge 处理速度慢_配置文件_05

单机集群部署

bin/elasticsearch -E node.name=node01 -E cluster.name=bysocket_es_cluster -E path.data=node01_data -d 
bin/elasticsearch -E node.name=node02 -E cluster.name=bysocket_es_cluster -E path.data=node02_data -d
bin/elasticsearch -E node.name=node03 -E cluster.name=bysocket_es_cluster -E path.data=node03_data -d
bin/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 : 指定了存储文档数据目录

查看节点启动日志

http://localhost:9200/_cat/nodes?v

Elasticsearch 7.x 插件

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

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

sudo bin/elasticsearch-plugin install analysis-icu

es forcemerge 处理速度慢_elasticsearch_06

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

bin/elasticsearch-plugin list

es forcemerge 处理速度慢_es forcemerge 处理速度慢_07

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

sudo bin/elasticsearch-plugin remove analysis-icu