Elasticsearch和Kibana安装
- Elasticsearch 版本:5.4
- Elasticsearch快速入门 第1篇:Elasticsearch入门
- Elasticsearch快速入门 第2篇:Elasticsearch和Kibana安装
- Elasticsearch快速入门 第3篇:Elasticsearch索引和文档操作
- Elasticsearch快速入门 第4篇:Elasticsearch文档查询
Elasticsearch安装
Elasticsearch 至少需要Java 8。在撰写本文时,建议你使用Oracle JDK版本1.8.0_131。Java安装因平台而异,所以在这里不再赘述。Oracle的推荐安装文档可以在Oracle的网站上找到。在安装 Elasticsearch 之前,请先检查您的Java版本,然后再运行(如果需要,请相应地进行安装/升级):
java -version
echo $JAVA_HOME
安装了Java之后,下载并运行 Elasticsearch 。这些二进制文件可以在www.elastic.co/downloads下载,
与过去所有的所有版本一起提供。对于每个版本,您可以选择一个zip
、tar
、DEB
或RPM
包。
为了简单起见,下载Elasticsearch 5.4.1 tar,方式如下(window用户下载Elasticsearch 5.4.1 zip)
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.1.tar.gz
然后解压缩如下
tar -xvf elasticsearch-5.4..tar.gz
然后进入bin目录
cd elasticsearch-5.4. / bin
现在准备启动我们的节点和单个集群(Windows用户应该运行 Elasticsearch.bat文件)
./elasticsearch
如果一切顺利,您应该会看到一堆如下所示的消息:
[2017-06-09T12:11:37,851][INFO ][o.e.n.Node ] [] initializing ...
[2017-06-09T12:11:38,117][INFO ][o.e.e.NodeEnvironment ] [9fzvF2H] using [1]data paths, mounts [[(D:)]], net usable_space [111.8gb], net total_space [123.5gb], spins? [unknown], types [NTFS]
[2017-06-09T12:11:38,117][INFO ][o.e.e.NodeEnvironment ] [9fzvF2H] heap size[1.9gb], compressed ordinary object pointers [true]
[2017-06-09T12:11:38,117][INFO ][o.e.n.Node ] node name [9fzvF2H]derived from node ID [9fzvF2HKTverLyZwFl6w0w]; set [node.name] to override
[2017-06-09T12:11:38,117][INFO ][o.e.n.Node ] version[5.4.1], pid[3964], build[2cfe0df/2017-05-29T16:05:51.443Z], OS[Windows 7/6.1/amd64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_131/25.131-b11]
[2017-06-09T12:11:38,117][INFO ][o.e.n.Node ] JVM arguments [-Xms2g, -Xmx2g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+DisableExplicitGC, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -Djdk.io.permissionsUseCanonicalPath=true, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j.skipJansi=true, -XX:+HeapDumpOnOutOfMemoryError, -Delasticsearch, -Des.path.home=D:\ProgramFiles\elasticsearch-5.4.1]
[2017-06-09T12:11:39,193][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [aggs-matrix-stats]
[2017-06-09T12:11:39,193][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [ingest-common]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [lang-expression]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [lang-groovy]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [lang-mustache]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [lang-painless]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [percolator]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [reindex]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [transport-netty3]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] loaded module [transport-netty4]
[2017-06-09T12:11:39,209][INFO ][o.e.p.PluginsService ] [9fzvF2H] no plugins loaded
[2017-06-09T12:11:41,471][INFO ][o.e.d.DiscoveryModule ] [9fzvF2H] using discovery type [zen]
[2017-06-09T12:11:42,032][INFO ][o.e.n.Node ] initialized
[2017-06-09T12:11:42,032][INFO ][o.e.n.Node ] [9fzvF2H] starting ...
[2017-06-09T12:11:43,171][INFO ][o.e.t.TransportService ] [9fzvF2H] publish_address {127.0.0.1:9300}, bound_addresses {127.0.0.1:9300}, {[::1]:9300}
[2017-06-09T12:11:46,248][INFO ][o.e.c.s.ClusterService ] [9fzvF2H] new_master{9fzvF2H}{9fzvF2HKTverLyZwFl6w0w}{yMmmD0nORKqEmQ0lrqKu3Q}{127.0.0.1}{127.0.0.1:9300}, reason: zen-disco-elected-as-master ([0] nodes joined)
[2017-06-09T12:11:46,280][INFO ][o.e.g.GatewayService ] [9fzvF2H] recovered[0] indices into cluster_state
[2017-06-09T12:11:46,919][INFO ][o.e.h.n.Netty4HttpServerTransport] [9fzvF2H] publish_address {127.0.0.1:9200}, bound_addresses {127.0.0.1:9200}, {[::1]:9200}
[2017-06-09T12:11:46,919][INFO ][o.e.n.Node ] [9fzvF2H] started
没有太多细节,我们可以看到,我们的名为"9fzvF2H"的节点(在您的情况下将是一组不同的字符)已经启动并在单个集群中将其选为 master 。此时先不用在意 master 是什么意思。最重要的是我们已经在一个集群中启动了一个节点。
如前所述,我们可以修改集群或节点名称。这可以在启动 Elasticsearch 时从命令行完成,如下所示:
./elasticsearch -Ecluster.name = my_cluster_name -Enode.name = my_node_name
比如, D:\ProgramFiles\elasticsearch-5.4.\bin\elasticsearch.bat -Ecluster.name=my_cluster -Enode.name=node_1
还要注意标有http的行,该信息提示我们的节点可以通过HTTP地址(127.0.0.1)和port(9200
)被访问。默认情况下, Elasticsearch 使用端口9200
来提供对其REST API的访问。如果需要,该端口是可配置的。
在浏览器中输入: http://127.0.0.1:9200/ ,返回如下信息,表示安装成功。
{
"name" : "9fzvF2H",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "xBoSQEYqQSaJjzzpmAj7aw",
"version" : {
"number" : "5.4.1",
"build_hash" : "2cfe0df",
"build_date" : "2017-05-29T16:05:51.443Z",
"build_snapshot" : false,
"lucene_version" : "6.5.1"
},
"tagline" : "You Know, for Search"
}
探索集群
REST API
现在我们的节点(和群集)启动并运行,接下来的步骤是了解如何与它进行通信。幸运的是, Elasticsearch 提供了一个非常全面和强大的REST API,您可以使用它来与群集进行交互。API可以完成的几件事情如下:
- 检查您的群集,节点和索引运行状况,状态和统计信息
- 管理您的集群,节点和索引数据和元数据
- 执行CRUD(创建,读取,更新和删除)并针对索引进行搜索操作
- 执行高级搜索操作,如分页,排序,过滤,脚本,聚合等等
Kibana
Kibana 是一个开源分析和可视化平台,旨在可视化操作 Elasticsearch 。Kibana可以用来搜索,查看和与存储在 Elasticsearch 索引中的数据进行交互。可以轻松地进行高级数据分析,并可在各种图表,表格和地图中显示数据。
Kibana 可以轻松理解海量数据。其简单的基于浏览器的界面使您能够快速创建和共享动态仪表板,实时显示 Elasticsearch 查询的更改。
安装Kibana简单快速。您可以安装 Kibana ,并在几分钟内开始探索您的 Elasticsearch 索引 - 不需要代码,也不需要需额外的基础架构。
安装Kibana
本节包括安装 Kinbana ,以及配置和运行
支持的平台
提供 Kibana 软件包,并针对Linux,Darwin和Windows进行测试。由于Kibana运行在Node.js上,所以我们为这些平台添加了必要的Node.js二进制文件。不支持单独维护版本的Node.js来运行Kibana。
Elasticsearch版本
应将 Kibana 配置为和 Elasticsearch 节点运行的版本相同。这是官方支持的配置。
不支持运行不同主版本的 Kibana 和 Elasticsearch (例如 Kibana 5.x 和 Elasticsearch 2.x ), Kibana 的次要版本比 Elasticsearch 的次要版本(例如 Kibana 5.1 和 Elasticsearch5.0)高也不支持。
Elasticsearch 的次要版本比kibana的次要版本高通常会起作用,不过这样只是为了满足首先升级 Elasticsearch ,然后升级kibana的需要,(例如 Kibana 5.0 和 Elasticsearch 5.1 )。在这种配置中, Kibana 服务器启动时将会记录一个警告,因此两个版本不一致的情况只是暂时的,为了不记录警告,还得将 Kibana 升级到与 Elasticsearch 相同的版本。
一般情况下,支持运行Kibana和 Elasticsearch 的不同补丁版本(例如 Kibana 5.0.0 和 Elasticsearch 5.0.1 ),尽管我们鼓励用户下载Kibana和 Elasticsearch 的相同补丁版本。
安装包
Kibana提供以下格式的安装包:
- tar.gz/zip: tar.gz 用于在Linux和Darwin上安装, zip 唯一支持window的安装包,是入门Kibana最好的选择。Install Kibana with
.tar.gz
or Install Kibana on Windows
- deb: 适用于Debian, Ubuntu, 以及其他 Debian-based系统。Install Kibana with Debian Package
- rpm:适用于 Red Hat, Centos, SLES, OpenSuSE 以及RPM-based 系统,Install Kibana with RPM
- docker:一个镜像可以用来运行kibana作为docker容器,它附带 X-Pack 预安装,可从Elastic Docker注册。(不懂docker,不知道怎么表述好)Running Kibana on Docker
如果您的Elasticsearch安装受X-Pack安全保护, 请参阅使用Kibana与X-Pack Security进行其他安装说明。
在windows上安装Kibana
最新的稳定版本的Kibana可以在下载Kibana页面找到 。其他版本可以在过去版本页面找到 。
解压缩。这将创建一个名为kibana-5.4.1-windows-x86的文件夹,我们将其称为$KIBANA_HOME
。在终端窗口中,CD
到$KIBANA_HOME
目录下的bin,例如:
D:\>cd D:\ProgramFiles\kibana-5.4.1-windows-x86\bin
从命令行运行Kibana
kibana
出现以下日志
D:\ProgramFiles\kibana-5.4.1-windows-x86\bin>kibana
log [07:29:47.631] [info][optimize] Optimizing and caching bundles for kibana, timelion and status_page. This may take a few minutes
log [07:31:43.968] [info][optimize] Optimization of bundles for kibana, timelion and status_page complete in 116.34 seconds
log [07:31:44.030] [info][status][plugin:kibana@5.4.1] Status changed from uninitialized to green - Ready
log [07:31:44.124] [info][status][plugin:elasticsearch@5.4.1] Status changed from uninitialized to yellow - Waiting for Elasticsearch
log [07:31:44.155] [info][status][plugin:console@5.4.1] Status changed from uninitialized to green - Ready
log [07:31:44.170] [info][status][plugin:metrics@5.4.1] Status changed from uninitialized to green - Ready
log [07:31:44.373] [info][status][plugin:timelion@5.4.1] Status changed from uninitialized to green - Ready
log [07:31:44.389] [info][listening] Server running at http://localhost:5601
log [07:31:44.389] [info][status][ui settings] Status changed from uninitialized to yellow - Elasticsearch plugin is yellow
log [07:31:49.435] [info][status][plugin:elasticsearch@5.4.1] Status changed from yellow to yellow - No existing Kibana index found
log [07:31:50.000] [info][status][plugin:elasticsearch@5.4.1] Status changed from yellow to green - Kibana index ready
log [07:31:50.000] [info][status][ui settings] Status changed from yellow to green - Ready
在浏览器中输入: http://localhost:5601 ,出现界面表示安装成功。
集群健康
让我们先从基础的健康检查开始,我们可以使用它去了解我的集群是如何运作的。我们将会使用上面安装的kibana控制台去做这个实验,不过你也可以使用任何一个支持HTTP/REST的工具调用接口,比如curl。假如我们继续使用刚刚启动的 Elasticsearch 节点。
为了检查集群监控,我们需要使用 _cat API。在Kibana控制台中运行命令 GET /_cat/health?v 。
返回内容如下:
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1496995261 16:01:01 elasticsearch yellow 1 1 1 1 0 0 1 0 - 50.0%
可以看到名为 elasticsearch 的集群已经处于黄色状态。 每当我们查询集群健康情况时,接口可能会返回green,yellow或red状态。green意味着一切良好(集群所有的功能都正常)。yellow意味着所有的数据都是可用的,但是一些复制分片可能没有正确分发(集群的所有功能还是正常的)。red意味着因为某些原因导致有些数据不能使用。注意,即使集群状态是red,它仍然可以运行一部分的功能。(例如,它依然可以从一些可用的分片处理搜索请求)但你应该尽快去修复它,因为这样会使搜索结果丢失一些数据。
从上面的响应中,可以看到集群名称为 elasticsearch ,只有1个节点,有1个数据,1个分片。注意,由于我们使用默认的群集名称( Elasticsearch ),并且由于 Elasticsearch 默认使用单播网络来查找同一台计算机上的其他节点,因此可能会意外启动计算机上的多个节点,并使它们都加入同一个群集。在这种情况下,您可能会在上述响应中看到超过1个节点。
也可以得到集群中节点列表,如下:
GET /_cat/nodes?v
返回内容如下:
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
127.0.0.1 8 84 4 mdi * 9fzvF2H
可以看到集群中只有一个名叫"9fzvF2H"的节点。
总结
1、什么是kibana?对于目前来说,就是一个可视化界面,方便写代码对ES进行操作。
2、ES和kibana怎么安装?在windows上,直接下载压缩包,解压后进入bin目录,运行Elasticsearch.bat和kibana.bat即可。
3、快速检查集群的健康状况, GET /_cat/health?v
4、集群的健康值理解
- green:每个索引的primary shard和replica shard都是active状态的
- yellow:每个索引的primary shard都是active状态的,但是部分replica shard不是active状态(比如单台机器上副本无法被分配),处于不可用的状态
- red:不是所有索引的primary shard都是active状态的,部分索引有数据丢失了
5、查看所有节点, GET /_cat/nodes?v
官方文档
https://www.elastic.co/guide/en/elasticsearch/reference/current/_installation.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/_exploring_your_cluster.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/_cluster_health.html
https://www.elastic.co/guide/en/kibana/5.4/introduction.html
https://www.elastic.co/guide/en/kibana/5.4/setup.html
https://www.elastic.co/guide/en/kibana/5.4/install.html
https://www.elastic.co/guide/en/kibana/5.4/windows.html
参考文档
https://github.com/13428282016/elasticsearch-CN/wiki/es-gettting-started
Elasticsearch和Kibana安装的更多相关文章
- Elasticsearch 及 Kibana 安装篇
简介 官网-安装介绍 这里记载了各个软件包的安装方法,Linux Mac Windows-- 本文记载的是在 CentOS 系统安装 Elasticsearch 7.0.0 版本的步骤. 安装 Jav ...
- elasticsearch与kibana安装过程(linux)
elasticsearch与kibana安装 下载 Elasticsearch 官网:https://www.elastic.co/,elastic search应用本质就是一个jvm进程,所以需要J ...
- ELK 架构之 Elasticsearch 和 Kibana 安装配置
阅读目录: 1. ELK Stack 简介 2. 环境准备 3. 安装 Elasticsearch 4. 安装 Kibana 5. Kibana 使用 6. Elasticsearch 命令 最近在开 ...
- elasticsearch之kibana安装
我用的elasticsearch版本是5.2.2的,kibana也要对应的版本 下载kibana 下载网址:https://artifacts.elastic.co/downloads/kibana/ ...
- ELK(Elasticsearch/Logstash/Kibana)安装时常见错误总结
问题一: [2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter: Java.lang ...
- 全文检索工具elasticsearch和kibana安装
一.安装elasticsearch 1.拷贝elasticsearch-5.6.4.rpm到/opt目录下「cenos7」 systemctl list-unit-files|grep elastic ...
- elasticsearch和kibana安装后,外网无法访问
问题描述: 现在解压elasticsearch之后,启动,通过http://localhost:9200可以访问的到,但是http://ip:9200访问不到 解决方法: 修改elasticsearc ...
- ELK 架构之 Elasticsearch、Kibana、Logstash 和 Filebeat 安装配置汇总(6.2.4 版本)
相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstash 和 Filebeat 安装配置 ELK 架构之 Logstash 和 Filebe ...
- Kibana安装(图文详解)(多节点的ELK集群安装在一个节点就好)
对于Kibana ,我们知道,是Elasticsearch/Logstash/Kibana的必不可少成员. 前提: Elasticsearch-2.4.3的下载(图文详解) Elasticsearch ...
随机推荐
- CF #April Fools Day Contest 2016 E Out of Controls
题目连接:http://codeforces.com/problemset/problem/656/E 愚人节专场的E,整个其实就是个Floyd算法,但是要求代码中不能包含 definedoforfo ...
- KMP算法学习(详解)
kmp算法又称“看毛片”算法,是一个效率非常高的字符串匹配算法.不过由于其难以理解,所以在很长的一段时间内一直没有搞懂.虽然网上有很多资料,但是鲜见好的博客能简单明了地将其讲清楚.在此,综合网上比较好 ...
- javaWeb项目(SSH框架+AJAX+百度地图API+Oracle数据库+MyEclipse+Tomcat)之一 基础Struts框架搭建篇
即将开始着手写这个项目,所以希望通过这篇博客来记录自己学习的过程 今天开学第一天,就上了软件工程实践课,自己也开始着手做这个大作业了.首先我的项目名称叫做智能班车管理系统. 项目的概况: 该软件产品是 ...
- 用Pyton玩转数据练习题---第二周
找前5个默尼森数.P是素数且M也是素数,并且满足等式M=2**P-1,则称M为默尼森数.例如,P=5,M=2**P-1=31,5和31都是素数,因此31是默尼森数. # coding:utf-8 im ...
- bzoj2125 最短路
Description 给一个N个点M条边的连通无向图,满足每条边最多属于一个环,有Q组询问,每次询问两点之间的最短路径. Input 输入的第一行包含三个整数,分别表示N和M和Q 下接M行,每行三个 ...
- <CentOS7>如何设置hostname
在CentOS/RHEL 7中,有个叫hostnamectl的命令行工具,它允许你查看或修改与主机名相关的配置: ceph@client-node ~]$ hostnamectlstatus Stat ...
- cas 代理认证配置
注:本文转自http://www.ichatter.net/2013/03/21/385/ CAS(Central Authentication Service)框架是一个开源的单点登陆框架.最近公司 ...
- margin重叠
margin重叠也就是我们常说的CSS 外边距合并,W3C给出如下定义: 外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距. 合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者 ...
- poj2785双向搜索
The SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, compute ...
- hdu1151有向图的最小顶点覆盖
有向图的最小路径覆盖=V-二分图最大匹配. Consider a town where all the streets are one-way and each street leads from o ...