Kibana 是用于在 Elasticsearch 中可视化数据的强大工具。 这是开始探索你的 Elasticsearch 数据的方法。Kibana 是一种免费及开放的分析和可视化工具,可通过基于浏览器的界面轻松搜索,可视化和探索大量数据。 除了 Elasticsearch,Logstash 和 Beats 之外,Kibana 是 Elastic Stack(以前称为 ELK Stack)的核心部分。

Elasticsearch 是 Elastic Stack 的核心搜索引擎,是用于搜索和分析的最受欢迎的免费及开放的项目之一。 Elasticsearch 是搜索,存储和分析你在 Kibana 中探索的数据的工具,它实际上是一个搜索引擎,数据存储区和分析引擎,它们是一体的。

Elasticsearch 允许用户对其数据执行 Google 风格的搜索,或询问诸如 “我的网站的访问者来自哪个国家?”之类的问题,它的速度也非常快且分布广泛,可以使用户扩展到更大的数据集。 现在,利用此功能并将其与 Kibana 提供的丰富的用户界面相结合,你将拥有一个实时解决方案来浏览数据。

借助 Elasticsearch 和 Kibana,你几乎可以浏览任何类型的数据,从文本文档到机器日志,应用程序指标,电子商务流量,传感器遥测或公司的业务 KPI。 一旦数据进入 Elasticsearch,你就可以在 Kibana 中进行探索并与之交互。 你可以使用 Kibana 搜索栏搜索数据,使用各种图表类型可视化数据,并使用实时仪表板进行可视化处理。 你还可以在大屏幕上显示仪表板,以提供整个公司或办公室的可见性。

在本文中,我将引导你完成所有需要了解的知识,以便开始在 Kibana 中浏览数据并创建有用的可视化效果。 我们将研究如何将数据导入 Kibana,如何使用 Kibana 探索数据以及如何使用 Kibana 创建可视化效果和仪表板。

哪些人会使用 Kibana?

事实上,任何人都可以使用 Kibana 来使用 Elasticsearch 所提供的强大的搜索及分析功能提前所需要的洞察。Elastic 也有一个关于认证分析师的认证。事实上,在你使用 Kibana 时,你并不需要了解如何使用 Elasticsearch。特别地,Kibana 适合如下的用户:

  • 业务分析师
  • 数据科学家
  • 日志,指标分析师
  • 安全分析师
  • 数据服务提供商

Kibana 的发展史

有关 Kibana 的很多功能都已经在我的 “Kibana 专栏” 里做了介绍。请大家详细阅读。

Kibana 的功能

简单的一句话:Kibana 是 Elastic Stack 的窗口:

随着 Kibana 的发展,它的功能已经不满足于之前的一些功能。它的功能大体可以分为如下的几个:

可视化及探索

运用 Elasticsearch 的搜索及聚合能力来探索及分析你的数据。通过 Kibana 这个窗口,我们可以充分利用 Elasticsearch 的快速搜索,相关性及可扩展性,对数据进行各种可视化呈现,并深钻数据以得到有意义的洞察。搜索隐藏的见解,编制包含图表、仪表、地图和其他可视化的仪表板来显示您的发现,并与他人分享。

搜索,观察及保护数据

向你的应用或网站添加搜索框,分析日志指标并查找安全漏洞。

管理及监督

集中管理及监督你的 Elasticsearch 的索引, Beats, Logstash 的 pipeline 以及集群的运行状况。我们甚至使用 Kibana 完成各种告警。控制哪些用户可以访问哪些功能和数据。

方案

Kibana 集成了 Elastic Stack 的三大解决方案:企业搜索,可观察性及安全。它提供了对你关心数据的一流的搜索体验。它涵盖了基础架构的监督及地理空间的分析等等。

将数据添加到 Kibana

你需要做的第一件事是将一些数据输入 Kibana 中进行处理。 选择部署并运行 Elasticsearch 后,你可以首次登录 Kibana。

要探索 Kibana,你可以使用 Kibana 示例数据或你自己的数据。 如果选择后者,则 Kibana 提供了多种方法来提取数据。 例如,如果你使用 Beats(专用于 Elastic 的数据采集代理),则只需选择 Beats 应该从哪个系统收集数据,然后让 Beats 连续为你收集数据。

或者,如果你具有 JSON 或 CSV 数据,只需上传文件即可。

在本文中,我将使用 Kibana 附带的示例数据来向你展示 Kibana 的核心功能。

添加样本数据时,Kibana 会创建索引模式(Index pattern ),样本可视化效果和仪表板。 如果要添加自己的数据,则需要自己创建一个 Kibana 索引模式。

什么是 Kibana 索引模式(Index Pattern)?

在最新的 Elastic Stack 中,它也被称之为 Data View。Elasticsearch 将数据存储在索引中-如果你更熟悉关系数据库,则它们在某种程度上类似于表。 索引模式告诉 Kibana 你想探索哪些Elasticsearch 索引。 你可以在 Elasticsearch 中为特定索引创建索引模式,也可以使用通配符*同时查询多个索引。 在 Kibana 中可以有多个索引模式(就像数据库中有很多表一样)。 在创建可视化或搜索数据时,你将需要选择要在其上进行搜索的索引模式。

在 Kibana 中导航

你会在 Kibana 的左侧菜单中看到许多应用程序。 在本文中,我们将介绍前三个,重点是查找数据有用的东西:发现(discover),可视化 (Visualize) 和仪表板 (Dashboard)。

发现(discover)

发现是你可以搜索和过滤原始文档的地方。

每个记录都表示为一行。 你可以展开各行以查看每个记录中的所有字段及其值。

在左侧,你会看到一个列出所有字段的侧边菜单。 发现是搜索特定记录的好地方。 你可以通过多种方式搜索数据。

你可以执行自由文本搜索,例如 Google 搜索。 通过自由文本搜索,Elasticsearch 将在你的文档中进行搜索,并将返回包含你要搜索的关键字的所有文档。 例如,只需在搜索栏中输入单词 “error”。 或者,你可以使用自动完成功能根据特定字段进行搜索。

Discover 还可以以表格格式显示数据。 通过从左侧菜单中选择字段,你将看到与表的列相同的字段。 表格上方的直方图是查看文档随时间分布的快速方法。 如果单击特定时间范围,“发现(discover)” 将放大到该时间范围,并且页面将刷新以仅显示该时间范围内的文档。

可视化(Visualize)

他们说一张图片值一千个字,当试图传达复杂的想法时通常是这样。

可视化是你可以使用许多现成的图表创建可视化并研究数据的地方。

Kibana 支持许多图表类型。根据你所想到的问题以及如何探索数据,你将想要选择适当的图表类型-无论是用于时间序列数据,重要术语,甚至是地理地图。所有这些都是实时可视化,可以使用实时数据进行浏览。

如果你需要在 Kibana 中找不到开箱即用的特定可视化效果,也可以使用 Vega(开放式可视化源代码库)。

通常,在 Kibana 中可视化数据时,有两个核心定义值得理解。

  • 存储桶聚合:存储桶聚合将文档分为多个存储桶,每个存储桶可以包含多个文档,一个文档或根本不包含任何文档。
  • 指标聚合:创建存储桶后,指标聚合将为每个存储桶计算一个值。

例如,如果我们要可视化每日的平均字节数,则可以在x轴上创建每日存储区,然后计算每个存储区(即每天)中的平均字节数。

现在,如果需要,我们可以添加更多指标甚至更多的存储桶来显示,例如,基于前三个响应的平均字节数。

现在我们已经创建了该可视化,你可以将其保存并添加到仪表板中。

仪表盘(Dashboards)

为什么要添加一些东西到仪表板? 在 Kibana 中,仪表板是一个非常强大的概念。 它们是一种实时的实时方法,可以从多个角度查看数据并在同一视图中与数据进行交互。Kibana 仪表板是收集在一起的图表、图形、指标、搜索和地图的集合。 仪表板从多个角度提供对数据的一目了然的见解,并使你能够深入了解细节。

开始可视化数据的最简单方法是从空仪表板开始,然后使用 Kibana Lens 添加面板。如果你对如何使用 Lens 来构建可视化,请参阅我的另外一篇文章 “Kibana Lens 入门”。你也可以观看我的一个视频 “如何在 Kibana 中的 Lens 创建仪表盘及可视化”。

仪表板也非常互动:

  • 选择图表的区域以放大特定的时间范围。
  • 单击饼图中的一个切片以过滤该值。

你将立即看到仪表板中的所有面板将如何集中于你所做的选择,并根据你的选择快速提供新的视图。

当然,你始终可以使用搜索栏简单地输入搜索词并查看所有具有最相关数据的图表。

现在,我们已经涵盖了基础知识,你可以创建多个可视化,将它们添加到第一个仪表板,然后开始从数据中获取见解。

如果你准备好自己尝试一下,最简单的上手方法是利用 Elastic Cloud 上 Elasticsearch Service  的14天免费试用版- Elastic 的官方托管 Elasticsearch 产品,其中包括 Kibana。如果愿意,你还可以下载 Elasticsearch 和 Kibana 以在笔记本电脑上运行或部署在数据中心中。

更多学习 Kibana 的资料,请阅读专栏 Kibana

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐