Elastic search介绍和安装

「这是我参与11月更文挑战的第4天,活动详情查看:2021最后一次更文挑战

简介

Elasticsearch是一个需要安装配置的软件。

ELK技术栈说明

Elastic有一条完整的产品线:Elasticsearch、Logstash、Kibana等,前面说的三个就是大家常说的ELK技术栈(开源实时日志分析平台)。

Logstash 的作用就是一个数据收集器,将各种格式各种渠道的数据通过它收集解析之后格式化输出到Elasticsearch ,最后再由Kibana 提供的比较友好的 Web 界面进行汇总、分析、搜索。

ELK 内部实际就是个管道结构,数据从 Logstash 到 Elasticsearch 再到 Kibana 做可视化展示。这三个组件各自也可以单独使用,比如 Logstash 不仅可以将数据输出到Elasticsearch ,也可以到数据库、缓存等

Elastic

Elastic官网:www.elastic.co/cn/

image.png

Elastic有一条完整的产品线:Elasticsearch、Logstash、Kibana等,前面说的三个就是大家常说的ELK技术栈。

image.png

Elasticsearch

Elasticsearch官网:www.elastic.co/cn/products…

image.png

功能:

分布式的搜索引擎:百度、Google、站内搜索

全文检索:提供模糊搜索等自动度很高的查询方式,并进行相关性排名,高亮等功能

数据分析引擎(分组聚合):电商网站—一周内手机销量Top10

对海量数据进行近乎实时处理:水平扩展,每秒钟可处理海量事件,同时能够自动管理索引和查询在集群中的分布方式,以实现极其流畅的操作。

如上所述,Elasticsearch具备以下特点:

高速、扩展性、最相关的搜索结果

  • 分布式:节点对外表现对等,每个节点都可以作为入门,加入节点自动负载均衡
  • JSON:输入输出格式是JSON
  • Restful风格,一切API都遵循Rest原则,容易上手
  • 近实时搜索,数据更新在Elasticsearch中几乎是完全同步的,数据检索近乎实时
  • 安装方便:没有其它依赖,下载后安装很方便,简单修改几个参数就可以搭建集群
  • 支持超大数据:可以扩展到PB级别的结构化和非结构化数据

版本

目前Elasticsearch最新的版本是7.x,企业内目前用的比较多是6.x,我们以6.2.4进行讲解,需要JDK1.8及以上。

image.png

安装和配置

为了快速看到效果我直接在本地macOS下安装Elasticsearch。环境要求:JDK8及以上版本

第一步:把今天资料文件夹中准备好的软件放到一个没有中文没有空格的位置,解压即可

image.png

第二步:修改配置文件

1、修改索引数据和日志数据存储的路径

image.png

第33行和37行,修改完记得把注释打开

1
2
3
4
5
perl复制代码path.data: /Users/xxx/Documents/class/es/data
#
# Path to log files:
#
path.logs: /Users/xxx/Documents/class/es/log

第三步:进入bin目录中直接双击 图下的命令文件

image.png

如果启动失败,需要修改虚拟机内存的大小找到jvm.options文件 如图修改

  • Xms 是指设定程序启动时占用内存大小。一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时间变慢。
  • Xmx 是指设定程序运行期间最大可占用的内存大小。如果程序运行需要占用更多的内存,超出了这个设置值,就会抛出OutOfMemory异常。

image.png

访问

启动后台输出如下

image.png

可以看到绑定了两个端口:

9300:集群节点间通讯接口,接收tcp协议

9200:客户端访问接口,接收Http协议

我们在浏览器中访问:http://127.0.0.1:9200

image.png

安装kibana

什么是Kibana

image.png

Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。

而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。

安装

因为Kibana依赖于node,需要先安装Node.js

查看到node版本

1
复制代码node -v

然后安装kibana,与elasticsearch保持一致,也是6.2.4

image.png

配置运行

配置

进入安装目录下的confifig目录,修改kibana.yml文件的第21行(注释放开即可):

image.png

运行

进入安装目录下的bin目录:

image.png

发现kibana的监听端口是5601

我们访问:http://127.0.0.1:5601

控制台

选择左侧的DevTools菜单,即可进入控制台页面

image.png

在页面右侧,我们就可以输入请求,访问Elasticsearch了

image.png

安装ik分词器

Lucene的IK分词器早在2012年已经没有维护了,现在我们要使用的是在其基础上维护升级的版本,并且开发为Elasticsearch的集成插件了,与Elasticsearch一起维护升级,版本也保持一致
github.com/medcl/elast…

安装

  1. 解压elasticsearch-analysis-ik-6.2.4.zip后,将解压后的文件夹拷贝到elasticsearch-6.2.4\plugins下,并重命名文件夹为ik

image.png

  1. 重新启动ElasticSearch,即可加载IK分词器

安装Head插件

elasticsearch-head 简介

elasticsearch-head是一个界面化的集群操作和管理工具,可以对集群进行傻瓜式操作。你可以通过插件把它集成到es(首选方式),也可以安装成一个独立webapp。

es-head主要有三个方面的操作:

  1. 显示集群的拓扑,并且能够执行索引和节点级别操作
  2. 搜索接口能够查询集群中原始json或表格格式的检索数据
  3. 能够快速访问并显示集群的状态

官方的文档:github.com/mobz/elasti…

elasticsearch-head安装(基于谷歌浏览器)

  1. 直接下载压缩包,地址:fifiles.cnblogs.com/fifiles/san…
  2. 解压
  3. 在谷歌浏览器中点击“加载已解压的压缩程序”,找到elasticsearch-head文件夹,点击打开即可进行安装。

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%