Beats:为 Beats => Logstash => Elasticsearch 架构创建 template 及 Dashboard
文章转载自:https://elasticstack.blog.csdn.net/article/details/115341977
前一段时间有一个开发者私信我说自己的 Beats 连接到 Logstash,然后连接到 Elasticsearch。等数据在 Elasticsearch 中收集完后,发现 Kibana 中的 Dashboard 不能被使用。数据类型不匹配。这个到底是什么原因呢?
我们可以通过如下的三种路径把数据导入到 Elasticsearch 中:
- Beats ==> Elasticsearch
- Beats ==> Logstash ==> Elasticsearch
- Beats ==> Kafka ==> Logstash ==> Elasticsearch
在 Beats 的模块启动中,我们通常采用 setup 来进行导入index template, ingest pipeline,ILM policy 及 Dashboard。非常需要注意的一点是:如果你没有一个 index template,那么等 Elasticsearch 收集第一个数据,它就会按照自己默认的方式为你的数据创建一个 mapping。这个也就是在 Elasticsearch 中常说的 schemaless,但是在很多的情况下这个并不是最优的 mapping。当我们使用 Beats 导入的 Dashboard,它适合于使用 setup 命令而导入的 index template 所定义的数据类型。当我们使用 Beats 时,我们最重要的一点就是先执行 setup,而后再导入数据。
然而对于如下的两种输入方式:
- Beats ==> Logstash ==> Elasticsearch
- Beats ==> Kafka ==> Logstash ==> Elasticsearch
由于我们的 Beats 并不是直接连接到 Elasticsearch。在执行 setup 时,它并不能起到作用。那么我们该怎么办呢?
对上面的两种情况,我们需要首先按照如下的方式配置 Beats:
也就是:
- Beats ==> Elasticsearch
当我们执行完 setup 命令之后,我们就创建好了相应的 index template,index pattern, ILM policy 以及 Dashboard 等。这个过程我们可以称之为 Bootstrap。然后,当我们导入数据的时候,我们按照之前的连接方式导入数据,也就是:
- Beats ==> Logstash ==> Elasticsearch
- Beats ==> Kafka ==> Logstash ==> Elasticsearch
值得注意的是:setup 针对任何的 Beats,只需要运行一次就可以了。这样导入的数据,它完全可以使用之前的 Dashboard 进行展示。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2020-06-29 使用Kuboard界面在k8s上部署SpringCloud项目
2020-06-29 在Kuboard上安装 Ingress Controller