ELK+KAFKA

ELK+KAFKA

数据流向

在这里nginx是生产者 logstash是消费者

filebeat就是小型的收集日志工具

1、通过nginx安装filebeat

1.1、修改filebeat的配置文件 filebeat.yml添加源码 安装的收集日志的路径和错误日志的路径

bash 复制代码
/usr/local/nginx/logs/access.log
/usr/local/nginx/logs/error.log

1.2、添加启动kafka输出并指向kafka的集群

2、在logstash设置脚本用于监控kafka集群

2.1在将kafka集群收集到的日志文件转发到logstash的两个实例当中 然后通过kabana页面展示

步骤

先查看页面是否可以正常访问

重启一下logstash

查看 KAFKA 9092 端口

nginx安装 filebeat

修改配置文件

这是二进制源码包安装的路径

注释

指向KAFKA集群

回到logstash

创建一个脚本 指向KAFKA集群 KAFKA

topics

指向两台实例手机的机器

第二个为error

bash 复制代码
input {
    kafka {
        bootstrap_servers => "20.0.0.40:9092,20.0.0.41:9092,20.0.0.42:9092"
                #kafka集群地址
        topics  => "nginx"
                #拉取的kafka的指定topic
        type => "nginx_kafka"
                #指定 type 字段
        codec => "json"
                #解析json格式的日志数据
                auto_offset_reset => "latest"
                #拉取最近数据,earliest为从头开始拉取
                decorate_events => true
                #传递给elasticsearch的数据额外增加kafka的属性数据
    }
}
output {
  if "access" in [tags] {
    elasticsearch {
      hosts => ["20.0.0.13:9200","20.0.0.14:9200"]
      index => "nginx_access-%{+YYYY.MM.dd}"
    }
  }

  if "error" in [tags] {
    elasticsearch {
      hosts => ["20.0.0.13:9200","20.0.0.14:9200"]
      index => "nginx_error-%{+YYYY.MM.dd}"
    }
  }

}

在后台启动 Logstash,并使用 kafka.conf 作为配置文件,同时设置了一个特定的路径来处理日期相关的文件或数据

bash 复制代码
logstash -f kafka.conf --path.date /opt/test10 &
bash 复制代码
./filebeat -e -c filebeat.yml

页面访问nginx 返回刷新即可看到

相关推荐
涛哥开发笔记14 小时前
Kakfa核心概念和架构
kafka
深圳蔓延科技2 天前
Kafka的高性能之路
后端·kafka
努力的小郑2 天前
从一次分表实践谈起:我们真的需要复杂的分布式ID吗?
分布式·后端·面试
AAA修煤气灶刘哥2 天前
别让Redis「歪脖子」!一次搞定数据倾斜与请求倾斜的捉妖记
redis·分布式·后端
阿里云云原生3 天前
嘉银科技基于阿里云 Kafka Serverless 提升业务弹性能力,节省成本超过 20%
kafka·serverless
Aomnitrix3 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
程序消消乐3 天前
Kafka 入门指南:从 0 到 1 构建你的 Kafka 知识基础入门体系
分布式·kafka
智能化咨询3 天前
Kafka架构:构建高吞吐量分布式消息系统的艺术——进阶优化与行业实践
分布式·架构·kafka
Chasing__Dreams3 天前
kafka--基础知识点--5.2--最多一次、至少一次、精确一次
分布式·kafka