网站首页 > 技术文章 正文
序言
由于Elasticsearch的功能强大和使用简单,维基百科、卫报、Stack Overflow、GitHub等都纷纷采用它来做搜索。现在,Elasticsearch已成为全文搜索领域的主流软件之一。
下面将介绍Elasticsearch和Kibana的安装与简单使用。
版本选择
在决定使用 Elasticsearch 的时候首先要考虑的是版本问题,Elasticsearch 目前有三个常用的稳定的主版本:2.x,5.x,6.x(排除 0.x 和 1.x)。
Elasticsearch 可以在这里查看所有历史版本,博主写这篇博文的时候最新的是 Elasticsearch 6.4.2。你可能会发现没有 3.x 和 4.x,ES 从 2.4.6 直接跳到了 5.0.0。这是为什么?
其实是为了ELK(ElasticSearch, logstash, kibana)技术栈的版本统一,免的给用户带来混乱。
我们知道 elasticsearch,kibana,logstash 都是 Elastic Stack 成员, 而且很多时候都是配合使用,那么为了协同开发,避免造成版本困惑,所以需要统一版本,至少保持在一个主版本号下。
在 Elasticsearch 是 2.x (2.x 的最后一版 2.4.6 的发布时间是 July 25, 2017) 的情况下,kibana 已经是 4.x(Kibana 4.6.5 的发布时间是 July 25, 2017),那么在 kibana 的下一主版本肯定是 5.x 了,所以 Elasticsearch 直接将自己的主版本发布为 5.0.0 了。统一之后,我们选版本就不会犹豫困惑了,我们选定 elasticsearch 的版本后再选择相同版本的 kibana 就行了,不用担忧版本不兼容的问题。
版本选择可以从以下几个方面考虑:
- 版本问题
2.x 版本较老,无法体验新功能,且性能不如 5.x。
6.x 版本有点新,网上资料相对比较少(开发时间充足的可以研究)。
- 数据迁移
2.x 版本数据可以直接迁移到 5.x;
5.X 版本的数据可以直接迁移到 6.x; 但是 2.x 版本数据无法直接迁移到 6.x。
- 周边工具
2.x 版本周边工具版本比较混乱;Kibana 等工具的对应版本需要自己查,不好匹配。
5.x 之后 Kibana 等工具的主版本号进行了统一。
- Sql 语法支持
2.x,5.x,6.x 都可以安装 Elasticsearch-sql 插件,使用熟悉的SQL语法查询 Elasticsearch。
6.3.0 以后内置支持 SQL 模块,这个 SQL 模块是属于 X-Pack 的一部分。
通过以上的版本号了解之后,综合考虑,我起始选择了 elasticsearch 6.4.0版本,其实主要是因为它新,kibana 也选择了 kibana 6.4.0。但是等本地开发完成准备部署的时候,运维通知切换到5.6.0,因为公司其他部门的是5.6.0,方便统一维护,还好 API 变化不大。
环境搭建
本地安装 Elasticsearch
Elasticsearch5.0之后的版本至少需要Java 8。可通过如下命令检查Java版本,然后根据需要进行相应的安装/升级。
java -versionecho $ JAVA_HOME
你可以从 elastic.co/download 下载你需要的版本的Elasticsearch,解压之后即可使用。
如果是集群形式的,可在 ...\elasticsearch-5.6.0\config\elasticsearch.yml中配置一些你的集群信息:
cluster.name: my-application # 集群名称path.data: /path/to/data # ES数据存储路径path.logs: /path/to/logs # ES日志存储路径node.name: node-1 # 当前节点的名称network.host: 192.168.0.1 # 配置当前结点绑定的IP地址,可设置为0.0.0.0http.port: 9200 # 设置对外服务的HTTP端口,默认为9200
运行 Elasticsearch
elasticsearch 准备好之后,在安装目录中执行以下命令可以启动运行:
Linux
./bin/elasticsearch
Windows
D:\...\elasticsearch-6.4.0\bin\elasticsearch.bat
运行成功之后(启动日志里面会有.. started标志),浏览器访问http://localhost:9200/?pretty,你能看到类似以下返回信息(各版本稍微不同):
{ "name" : "AGXQ3qy", "cluster_name" : "elasticsearch", "cluster_uuid" : "mg9t4Yi2TRud1JNwRY0bPA", "version" : { "number" : "6.4.0", "build_flavor" : "default", "build_type" : "zip", "build_hash" : "595516e", "build_date" : "2018-08-17T23:18:47.308994Z", "build_snapshot" : false, "lucene_version" : "7.4.0", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search"}
或者检查Elasticsearch是否正在运行:
curl http://localhost:9200/
这说明你的 Elasticsearch 集群已经启动成功并且正常运行,接下来我们可以开始使用了。
Docker安装
docker search elasticsearch
docker pull elasticsearch:6.4.0
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:6.4.0
可视化 web 界面
由于 Elasticsearch 的交互方式是 Rest 形式的,这种不是很直观方便,我们先安装图视化界面,方便我们操作。可选择的目前主要有 elasticsearch-head 和 kibana。
elasticsearch-head
elasticsearch-head 是一个用于浏览和与 elasticsearch 集群交互的Web前端。elasticsearch-head 是 elasticsearch 集群管理、数据可视化、增删查改、查询语句可视化工具。elasticsearch head 是托管的,可以在 github 下载或 fork。
有两种运行和安装elasticsearch-head的方法:
作为ElasticSearch的插件运行(这是首选方法)
- elasticsearch/bin/elasticsearch-plugin -install mobz/elasticsearch-head。
- open http://localhost:9200/_plugin/head/。
注意:
插件的安装方法,5.0之前为 plugin -install …,而在 5.0 以后为 elasticsearch-plugin -install …。
作为独立的webapp运行
- git clone git://github.com/mobz/elasticsearch-head.git。
- 在浏览器中打开 index.html。现代浏览器需要使用 es-head。
- 默认情况下,es-head 将尝试连接到http:// localhost:9200 /的集群节点。
在连接框中输入不同的节点地址,如果需要,单击“连接”。
成功后的界面如下,可以看到集群的状态信息
由于 Head 安装起来比较麻烦( 需要安装 node.js ),网上资料也很多,所以我就不详细说了,更多信息可参考:elasticsearch-head
kibana
Kibana 和 elasticsearch 同属于 elastic 公司。 Kibana是一个开源分析和可视化平台,旨在与Elasticsearch协同工作。您使用Kibana搜索,查看和与存储在 Elasticsearch 索引中的数据进行交互。您可以轻松地执行高级数据分析,并在各种图表,表格和地图中可视化您的数据。
Kibana 提供搜索、查看和与存储在 Elasticsearch 索引中的数据进行交互的功能。开发者或运维人员可以轻松地执行高级数据分析,并在各种图表、表格和地图中可视化数据。 ??
本地安装
你可以从 elastic 的官网 https://www.elastic.co/downloads/kibana 获取最新版本的Kibana。解压文档后,按照下面的操作,即可在前台(foregroud)启动Kibana:
cd kibana-<version>
./bin/kabana
Kibana 使您可以轻松理解大量数据。其简单的基于浏览器的界面使您能够快速创建和共享动态仪表板,实时显示 Elasticsearch 查询的更改。
设置 Kibana 非常容易。您可以安装 Kibana 并在几分钟内开始探索您的 Elasticsearch 索引 - 无需代码,无需额外的基础架构。
同样可在 kibana 选择需要的对应版本(与 elasticsearch 版本对应),然后下载解压即可使用,具体步骤如下:
- 下载并解压缩 Kibana。
- 在编辑器中打开 config / kibana.yml。
- 设置 elasticsearch.url 为您的Elasticsearch实例,如本地:elasticsearch.url: "http://localhost:9200"。
- 运行 bin/kibana(或binkibana.bat在Windows上)。
- 浏览器输入 http:// localhost:5601。
如果运行成功,但是无法访问,可以关闭防火墙再试试。
Docker安装Kibana
docker search kibana
docker pull kibana:6.4.0
docker run --name kibana -e ELASTICSEARCH_URL=http://{你的host}:9200 -p 5601:5601 -d kibana:6.4.0
结束语
到此Elasticsearch和kibana都已经安装完毕了,大家有什么疑问或者安装遇到的问题可以关注私信我,我会抽出时间来给你一一解答,喜欢的可以收藏并转发啊。下面会分享一些ES的使用等。
猜你喜欢
- 2024-10-19 Skywalking环境搭建 skywalking client js
- 2024-10-19 Docker部署各种服务 docker部署项目的两种方式
- 2024-10-19 技术学习1:elasticsearch elasticsearch基础教程
- 2024-10-19 Kafka与容器化:Docker与Kubernetes集成
- 2024-10-19 (Elasticsearch+Filebeat+Kibana)K8s集群日志平台EFK搭建Demo
- 2024-10-19 Filebeat on k8s 日志采集实战操作
- 2024-10-19 Docker部署SkyWalking+ElasticSearch+Agent
- 2024-10-19 搭建EFK(elasticsearch + fluentd + kibana)日志系统
- 2024-10-19 Docker部署单点ElasticSearch docker build 点
- 2024-10-19 kubernetes-4:阿里云上创建容器镜像服务
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)