标签:ast list 由来 nes res heap log started contents
Elasticsearch 7.x 最详细安装及配置
小马哥说过,学习技术栈得看版本,那么 Elasticsearch 7.x 有什么好的特性呢?
ES 7.0 是 2019 年 4 月份发布的,底层是 Lucene 8.0。其他还有需要了解的是:
下载地址:https://www.elastic.co/cn/downloads/elasticsearch
如图,下载对应需要的 ES 。我这边是 MacOS ,所以直接下载了 MacOS 的本。另外 ES 支持 Docker 方式启动。另外,ES 7.x 不需要本地 JDK 环境支持:
下载完后,ES 文件目录结构如下图所示:
Elasticsearch 7.2.1 目录结构如下:
具体看看关键的 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
启动方式很简单,在 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
日志中有两个信息需要注意:
打开浏览器,输入 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"
}
重点几个关注下即可:
同样通过 http://localhost:9200/_cat/nodes?v 地址,可以看到当前节点信息,如下:
127.0.0.1 30 100 22 2.87 mdi * BYSocketdeMacBook-Pro-2.local
单机多个 ES 实例,形成一个 ES 单机伪集群,启动脚本如下:
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
命令简单解释如下:
执行完脚本后,需要等一会 ES 启动,也可以查看 logs 看看执行情况。
打开浏览器,输入 http://localhost:9200/_cat/nodes?v 地址,可以看到启动情况:node01 为当前 master 节点
如何关闭集群中的 ES 实例,可以使用简单的命令实现:
ps | grep elasticsearch
kill -9 pid
插件是用来增强 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 操作学习 ~
(完)原创不易,帮转 ~
资料:
标签:ast list 由来 nes res heap log started contents
原文地址:https://www.cnblogs.com/Alandre/p/11386178.html