Filebeat+Kafka+ELK

架构:

部署:

bash 复制代码
#配置nginx,部署filebeat
systemctl stop firewalld
setenforce 0
systemctl restart nginx

#解压filebeat
tar -xf filebeat-6.7.2-linux-x86_64.tar.gz
mv filebeat-6.7.2-linux-x86_64 filebeat

#日志收集
cd firebeat
vim filebeat.yml

type: log
enabled: true
paths:
  - /usr/local/nginx/logs/access.log
tags: ["access"]

type: log
enabled: true
paths:
  - /usr/local/nginx/logs/error.log
tags: ["error"]

#output.elasticsearch 添加注释
output.kafka: 取消注释
  enabled: true
  hosts: ["192.168.230.21:9092","192.168.230.22:9092","192.168.230.23:9092"]
  topic: "xy102"

#开启filebeat
./filebeat -e -c filebeat.yml

#配置logstash
cd /etc/logstash/conf.d
vim kafka.conf

input {
   kafka {
     bootstrap_servers => "192.168.230.21:9092,192.168.230.22:9092,192.168.230.23:9092"
     topics => "xy102"
     type => "nginx_kafka"
     codec => "json"
     auto_offset_reset => "latest"
     #拉取最新数据,从尾部开始拉,从头开始earliest
     decorate_events => true
     #传递给es数据库时,额外的添加kafka的属性数据
   }
}
output {
   if "access" in [tags] {
    elasticsearch {
       hosts => ["192.168.230.10:9200","192.168.230.20:9200"]
       index => "nginx_access-%{+YYYY.MM.dd}"
      
    }
   }
   if "error" in [tags] {
    elasticsearch {
       hosts => ["192.168.230.10:9200","192.168.230.20:9200"]
       index => "nginx_error-%{+YYYY.MM.dd}"
    }
  }
}

#开启logstash
logstash -f kafka.conf --path.data /opt/test20 &

#浏览器访问192.168.230.30:5601登录kibana,添加索引,查看日志信息
相关推荐
Nano叶落20 小时前
Kafka 消费积压排查入门:Docker 搭环境亲手制造一次 ‘消息堵死‘,10 分钟看懂 Lag
kafka
吉甫作诵2 天前
Kafka 集群安装与运维实战:消费组排查、Offset 重置与副本重分配
大数据·运维·分布式·kafka·消息队列
imDwAaY2 天前
消息队列四大核心问题:顺序性、幂等性、可靠性与一致性
学习·kafka·rabbitmq
wno7042 天前
Spring Boot整合Kafka
spring boot·kafka
音符犹如代码3 天前
Kafka 接入 AI 的三条路线:MCP 提案、会话记忆与实时上下文
java·大数据·ai·kafka
happy_king_zi3 天前
kafka两种部署模式的区别
kafka·消息队列·sre
happy_king_zi3 天前
Kafka 3.9.2 KRaft 模式三节点集群完整部署指南
kafka·消息队列
明快de玄米613 天前
Kafka 可靠消息投递:核心机制总结
kafka
明快de玄米613 天前
Kafka:基于 Outbox 的可靠消息投递完整方案
kafka
szephyr4 天前
消息队列入门:RabbitMQ 和 Kafka 到底怎么选,什么时候不该用
后端·架构·kafka·消息队列·rabbitmq