说明:由于工作原因,用到了elasticsearch,趁有时间学习下。
学习环境:Mac OS 10.15.2
0. Elasticsearch介绍
-
主要功能
- 分布式搜索引擎。
- 大数据近实时分析引擎。
-
产品特性
- 高性能
- 易扩展
1. Java环境配置
-
运行Elasticsearch,需要安装并配置JDK。
- 配置
$JAVA_HOME
- 配置
-
Elastisearch各版本对Java的依赖
- Elasticsearch 5需要Java 8以上的版本
- Elasticsearch 6.5开始支持Java 11
- 在这里查看Elasticsearch产品和JVM的对应关系:Matrix
-
Elasticsearch 7.0开始内置了Java环境。
Elasticsearch is built using Java, and includes a bundled version of OpenJDK from the JDK maintainers (GPLv2+CE) within each distribution. The bundled JVM is the recommended JVM and is located within the jdk directory of the Elasticsearch home directory.
2. 获取Elasticsearch安装包
- 当前最新的安装包为7.5.2
- 下载地址:https://www.elastic.co/cn/pro...
- 点击下载压缩包,elasticsearch-7.5.2-darwin-x86_64.tar.gz
3. 安装并运行Elasticsearch
-
解压缩下载的压缩包。
tar -xvf elasticsearch-7.5.2-darwin-x86_64.tar.gz
-
运行Elasticsearch
$ cd elasticsearch-7.5.2 $ cd bin $ ./elasticsearch
-
浏览器访问
localhost:9200
{ "name": "local", "cluster_name": "elasticsearch", "cluster_uuid": "SJ9K2h-4RvyhoX8VvEgO8w", "version": { "number": "7.5.2", "build_flavor": "default", "build_type": "tar", "build_hash": "8bec50e1e0ad29dad5653712cf3bb580cd1afcdf", "build_date": "2020-01-15T12:11:52.313576Z", "build_snapshot": false, "lucene_version": "8.3.0", "minimum_wire_compatibility_version": "6.8.0", "minimum_index_compatibility_version": "6.0.0-beta1" }, "tagline": "You Know, for Search" }
4. Elasticsearch文件目录介绍
elasticsearch-7.5.2
- bin:脚本文件目录
-
config:配置文件目录(elasticsearch、log、jvm、role、user)
-
jvm配置建议(config/jvm.options)
- 默认配置1g:
-Xms1g -Xmx1g
- Xms和Xmx配置成一样
- Xmx不要超过机器内存的50%
- 不要超过30GB
- 默认配置1g:
-
- data:数据文件,配置项path.data
- jdk.app:Java运行环境,es从7.0开始包含独立的Java运行环境
- lib:Java类库
- logs:日志文件,配置项path.log
- modules:所有es模块
- plugins:所有已安装的es插件
- LICENSE.txt:证书
- NOTICE.txt:通知
- README.asciidoc:readme文档
5. Elasticsearch 插件安装
-
查看本机安装的插件
$ cd elasticsearch-7.5.2 $ cd bin # 查看已安装的es插件 $ ./elasticsearch-plugin list
-
安装插件
$ cd elasticsearch-7.5.2 $ cd bin # 查看已安装的es插件 $ ./elasticsearch-plugin install plugin-name
-
浏览器查看本机已安装插件
http://localhost:9200/_cat/plugins
6. 本机运行多个Es实例
- 切换到elasticsearch的bin目录
-
启动多个elasticsearch实例
$ ./elasticsearch -E node.name=node1 -E cluster.name=learn_es -E path.data=node1_data -d $ ./elasticsearch -E node.name=node2 -E cluster.name=learn_es -E path.data=node2_data -d $ ./elasticsearch -E node.name=node3 -E cluster.name=learn_es -E path.data=node3_data -d
-
node.name
:指定实例节点的名称。 -
cluster.name
:指定集群的名称 -
path.data
: 指定节点存放数据的名称。 -
-d
: 后台启动
-
-
查看elasticsearch实例进程
$ ps aux | grep elasticsearch
-
浏览器查看节点名称
http://localhost:9200/_cat/nodes?v ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name 127.0.0.1 27 97 5 2.31 dilm * node1 127.0.0.1 26 97 5 2.31 dilm - node2 127.0.0.1 10 97 5 2.31 dilm - node3
-
端口说明
-
9200
:默认用于HTTP的通信,REST API使用。 -
9300
:用于节点之间的通信,Transport API使用。
-
7. 安装并运行Kibana
Kibana提供了可视化的平台,与Elasticsearch一起工作,可以方便的对Elasticsearch中存储的数据进行搜索、分析。通过Kibana的Dev Tools简化浏览器的查询操作。
-
下载与Elasticsearch对应的Kibana版本
-
解压缩Kibana
$ tar -xvf kibana-7.5.2-darwin-x86_64.tar.gz
-
运行Kibana
$ cd kibana-7.5.2-darwin-x86_64 $ cd bin $ ./kibana
-
访问Kibana
- 打开浏览器,访问
http://localhost:5601
- 打开浏览器,访问
-
快捷键
-
Command + /
:打开API帮助文档。
-
-
插件管理
- 插件安装:
./kibana-plugin install plugin/url
- 插件列表:
./kibana-plugin list
- 插件删除:
./kibana-plugin remove plugin
- 插件安装:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。