阅读完需:约 6 分钟
ElasticSearch安装
我们需要下载和安装ElasticSearch的服务端和客户端!
ElasticSearch是使用java开发的,且本版本的es需要的jdk版本要是1.8以上,所以安装ElasticSearch 之前保证JDK1.8+安装完毕,并正确的配置好JDK环境变量,否则启动ElasticSearch失败。
下载地址:
https://www.elastic.co/cn/downloads/elasticsearch
镜像地址:
https://mirrors.huaweicloud.com/elasticsearch/7.8.0/

我们学习的话使用 window 或者 linux 都是可以的,对于我们 java 开发来说没有区别,只是连接的问题!Windows更加方便一点!所以我们前期都是用Window安装使用!后面我们再真正的安装到Linux服务器上跑项目!
window 下安装使用
解压安装包:

将下载的文件解压,解压后的目录含义如下:
目录 | 含义 |
---|---|
modules | 依赖模块目录 |
lib | 第三方依赖库 |
logs | 输出日志目录 |
plugins | 插件目录 |
bin | 可执行文件目录 |
config | 配置文件目录 log4j2.properties:日志配置文件 jvm.options:java虚拟机的配置 elasticsearch.yml:es的配置文件 |
data | 数据存储目录 |
双击ElasticSearch下的bin目录中的elasticsearch.bat启动,控制台显示的日志(等待启动完毕!)


然后在浏览器访问:http://localhost:9200 得到如下信息,说明安装成功了:

节点的名字以及集群(默认是 elasticsearch)的名字,我们都可以自定义配置。
打开 config/elasticsearch.yml 文件,可以配置集群名称以及节点名称。配置方式如下:
cluster.name: xjh-es
node.name: master
配置完成后,保存配置文件,并重启 es。重启成功后,刷新浏览器 localhost:9200 页面,就可以看到最新信息。

Es 支持矩阵:
- https://www.elastic.co/cn/support/matrix
HEAD 插件安装
Elasticsearch-head 插件,可以通过可视化的方式查看集群信息。
这里介绍两种安装思路。
1、浏览器插件安装
Chrome 直接在 App Store 搜索 Elasticsearch-head,点击安装即可。

2、下载插件安装
四个步骤
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start
启动成功,页面如下:
这将启动在端口9100上运行的本地web服务器,为elasticsearch-head服务!访问测试:

注意,此时看不到集群数据。原因在于这里通过跨域的方式请求集群数据的,默认情况下,集群不支持跨域,所以这里就看不到集群数据。
解决办法如下,修改 es 的 config/elasticsearch.yml 配置文件,添加如下内容,使之支持跨域:
http.cors.enabled: true
http.cors.allow-origin: "*"

配置完成后,重启 es,此时 head 上就有数据了。

分布式安装
假设:
- 一主二从
- master 的端口是 9200,slave 端口分别是 9201 和 9202
首先修改 master 的 config/elasticsearch.yml 配置文件:
配置完成后,重启 master。
将 es 的压缩包解压两份,分别命名为 slave01 和 slave02,代表两个从机。
分别对其进行配置。
slave01/config/elasticsearch.yml:
# 集群名称必须保持一致
cluster.name: javaboy-es
node.name: slave01
network.host: 127.0.0.1
http.port: 9201
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
slave02/config/elasticsearch.yml:
# 集群名称必须保持一致
cluster.name: javaboy-es
node.name: slave02
network.host: 127.0.0.1
http.port: 9202
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
然后分别启动 slave01 和 slave02。启动后,可以在 head 插件上查看集群信息。

了解 ELK
ELK是Elasticsearch、Logstash、Kibana三大开源框架首字母大写简称。
市面上也被成为ElasticStack。其中Elasticsearch是一个基于Lucene、分布式、通过Restful方式进行交互的近实时搜索平台框架。像类似百度、谷歌这种大数据全文搜索引擎的场景都可以使用Elasticsearch作为底层支持框架,可见Elasticsearch提供的搜索能力确实强大,市面上很多时候我们简称Elasticsearch为es。
Logstash是ELK的中央数据流引擎,用于从不同目标(文件/数据存储/MQ)收集的不同格式数据,经过过滤后支持输出到不同目的地(文件/MQ/redis/elasticsearch/kafka等)。
Kibana可以将elasticsearch的数据通过友好的页面展示出来,提供实时分析的功能。市面上很多开发只要提到ELK能够一致说出它是一个日志分析架构技术栈总称,但实际上ELK不仅仅适用于日志分析,它还可以支持其它任何数据分析和收集的场景,日志分析和收集只是更具有代表性。并非唯一性。

安装Kibana
Kibana 是一个 Elastic 公司推出的一个针对 es 的分析以及数据可视化平台,可以搜索、查看存放在 es 中的数据。
安装步骤如下:
- 下载 Kibana:https://www.elastic.co/cn/downloads/kibana
- 解压
- 配置 es 的地址信息(可选,如果 es 是默认地址以及端口,可以不用配置,具体的配置文件是 config/kibana.yml)
- 执行 ./bin/kibana 文件启动
- localhost:5601



现在是英文的,看着有些吃力,我们配置为中文的!
中文包在 kibana\x-pack\plugins\translations\translations\zh-CN.json只需要在配置文件 kibana.yml 中加入
i18n.locale: "zh-CN"

重启查看效果!成功切换为中文的了!
