当前位置: 首页 > 知识库问答 >
问题:

ELK堆栈配置

马高谊
2023-03-14

我对麋鹿栈没有太多的经验,我基本上只知道基础。

  • 某些东西,即filebeat获取数据并将其发送到logstash
  • Logstash 处理它并发送它 弹性搜索
  • Kibana 使用弹性搜索来可视化数据

(我希望这是正确的)

我需要创建一个elk系统,其中来自三个不同项目的数据被传递、存储和可视化。

项目号1。使用MongoDB,我需要将1个表中的所有信息放入kibana

项目2.也使用MongoDB,我需要将1个表中的所有信息输入kibana

项目 no3。使用mysql,我需要从该数据库中获取一些表到kibana中

所有这三个项目都在同一台服务器上

问题是对于项目1和2,我需要数据流是恒定的(即如果用户注册,我可以在kabana中看到它),但对于项目no3。我只需要在需要生成报告时才需要数据(这个项目的功能是各种BI)

所以我的问题是,如何创建一个麋鹿架构,从这3个来源获取输入,并能够组合成一个麋鹿项目。

我最好的猜测是:

1号项目-

项目 No2 -

3号项目-

(这里的 logstash 是一个实例,然后馈送到 elastic 中)

这是一种现实的方法吗?

我还偶然发现了redis,从它的外观来看,它看起来像是可以将所有数据源合并为一个,然后将输出提供给logstash。

什么是更好的方法?

最后,我提到了filebeat,但据我所知,它基本上是从日志文件中读取数据。这是否意味着我必须将所有数据库条目重新写入日志文件以将它们输入logstash,或者logstash可以在没有中介的情况下访问DB。

我试着在网上寻找所有这些,但出于某种原因,互联网上对ELK堆栈初学者问题有点缺乏。

谢谢

共有1个答案

卫皓
2023-03-14

filebeat用于将日志传送到logstash,您不能将其用于从DB读取项目。但是您可以使用logstash的输入插件从DB中读取。

根据您的描述,您将需要一个具有3个管道的logstash实例(每个项目一个)

对于项目3,您可以使用Logstash JDBC输入插件连接到您的mysql数据库,并根据一些“last_updated”列读取新的/更新的行。JDBC输入插件有一个cron配置值,允许您设置它定期运行,并使用您在配置中定义的SQL查询读取更新的行。

对于项目1-2,您还可以将JDBC输入插件与mongoDB一起使用。git上还有一个mongoDB输入插件的开源实现。您可以在此处查看这篇文章以了解如何使用它。

(请参阅此处的输入插件的完整列表)

如果这对您有效,并且您成功地进行了设置,那么其余三种配置的情况大致相同。i、 e.使用过滤器插件修改数据,使用Elasticsearch输出插件将数据推送到弹性索引。

 类似资料:
  • 我正在使用logstash进行集中式日志记录。我在托运人节点上使用logstash转发器,在收集器节点上使用ELK堆栈。我想知道日志存储在elasticsearch中的位置,我没有看到日志所在位置创建的任何数据文件stored.Do有人知道吗?

  • 问题: 如何设置日志塔什ELK堆栈的多个http输入 我已经拥有的: <李>工作麋鹿码头工人形象基于:https://github.com/deviantony/docker-elk < li >工作日志存储-输入-http-插件基于:https://www . elastic . co/blog/introducing-log stash-input-http-plugin < li >我的lo

  • 问题内容: 在我们的项目中,我们使用ELK堆栈将日志存储在集中位置。但是,我注意到,ElasticSearch的最新版本支持各种聚合。此外,Kibana 4支持不错的图形方式来构建图形。现在,即使是最新版本的grafana也可以与Elastic Search 2数据源一起使用。 因此,这是否意味着ELK堆栈现在可以用于存储系统内部收集的计量信息,还是不能认为它是现有解决方案(石墨,流入db等)的重

  • 问题内容: 我目前有一个使用filebeat作为日志发送程序的体系结构,该结构将日志发送到日志存储索引器实例,然后发送到AWS中的托管elasticsearch。由于存在持续的TCP连接,因此我无法使用AWS ELB多个日志存储索引器实例进行负载平衡,因为文件信号始终会选择这些实例并将其发送到那里。所以我决定使用redis。现在,看到扩展redis并使之在ELK堆栈中具有高可用性组件是多么困难,我

  • 问题内容: 是局部变量,将其存储在堆或堆栈中的何处? 问题答案: 在堆上。每当您用来创建对象时,它都会在堆上分配。

  • 问题内容: 我正在寻找建立一个ELK堆栈,并拥有三台服务器。虽然我找到了大量有关如何实际安装和配置elasticsearch,logstash和kibana的文档和教程,但我发现有关如何在服务器上设置软件以最大限度地提高性能的信息较少。例如,最好在所有三个实例上设置elasticsearch,logstash和kibana,或者在两个实例上安装elasticsearch并在第三个实例上安装logs