博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
filebeat-2-通过kafka队列链接logstash
阅读量:5929 次
发布时间:2019-06-19

本文共 2838 字,大约阅读时间需要 9 分钟。

filebeat 直接到logstash, 由于logstash的设计问题, 可能会出现阻塞问题, 因为中间使用消息队列分开

可以使用redis, 或者kafka, 这儿使用的是kafka

1, 安装

kafka的安装, 解压可用, 但需要zookeeper, 内置了一个zookeeper, 直接使用即可

1), 启动内置zookeeper

./bin/zookeeper-server-start.sh ./config/zookeeper.properties &

2), 修改kafka的配置文件

vim ./conf/server.properties

############################# Server Basics #############################broker.id=0delete.topic.enable=true ############################# Socket Server Settings #############################listeners=PLAINTEXT://0.0.0.0:9092num.network.threads=3num.io.threads=8socket.send.buffer.bytes=102400socket.receive.buffer.bytes=102400socket.request.max.bytes=104857600 ############################# Log Basics #############################log.dirs=/tmp/kafka-logsnum.partitions=1num.recovery.threads.per.data.dir=1 ############################# Log Flush Policy #############################log.flush.interval.messages=10000log.flush.interval.ms=1000 ############################# Log Retention Policy #############################log.retention.hours=168log.segment.bytes=1073741824log.retention.check.interval.ms=300000 ############################# Zookeeper #############################zookeeper.connect=localhost:2181zookeeper.connection.timeout.ms=6000

3), 启动kafkaserver

/bin/kafka-server-start.sh ./config/server.properties &

4),修改filebeat文件, 最终形态

cat ./elk/filebeat-5.5.2-linux-x86_64/filebeat.yml | grep -v '#' | grep -v '^$'

 

filebeat.prospectors:- input_type: log  paths:    - /var/log/nginx/*.log  encoding: utf-8  document_type: my-nginx-log  scan_frequency: 5s  harvester_buffer_size: 16384  max_bytes: 10485760  tail_files: trueoutput.kafka:  enabled: true  hosts: ["www.wenbronk.com:9092"]  topic: elk-%{[type]}  worker: 2  max_retries: 3  bulk_max_size: 2048  timeout: 30s  broker_timeout: 10s  channel_buffer_size: 256  keep_alive: 60  compression: gzip  max_message_bytes: 1000000  required_acks: 0  client_id: beats

5), 重新启动filebeat

./filebeat -c ./filebeat.yml &

6), 修改 logstash的input

input {    kafka  {      #codec => "json"      topics_pattern => "elk-.*"      bootstrap_servers => "127.0.0.1:9092"      auto_offset_reset => "latest"      group_id => "logstash-g1"    }}output {    elasticsearch {                                  #Logstash输出到elasticsearch;      hosts => ["localhost:9200"]                    #elasticsearch为本地;      index => "logstash-nginx-%{+YYYY.MM.dd}"       #创建索引;      document_type => "nginx"                       #文档类型;      workers => 1                                   #进程数量;      user => elastic                                #elasticsearch的用户;      password => changeme                           #elasticsearch的密码;      flush_size => 20000      idle_flush_time => 10 }}

7), 重启logstash

8 ), 页面访问 nginx, 可以查看消息队列中的消息

./bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic elk-log -m-beginning

 

 

 参考: 

转载地址:http://qbevx.baihongyu.com/

你可能感兴趣的文章
做移动互联网App,你的测试用例足够吗?
查看>>
cmd.exe启动参数说明
查看>>
视图加载时自动执行铵钮事件
查看>>
私活利器,docker快速部署node.js应用
查看>>
《随笔记录》20170310
查看>>
网站分析系统
查看>>
一站式解决,Android 拍照 图库的各种问题
查看>>
JavaScript匿名函数以及在循环中的匿名函数
查看>>
中国HBase技术社区第五届MeetUp ——HBase技术解析及应用实践(深圳站)
查看>>
javascript高程3 学习笔记(三)
查看>>
lsof命令
查看>>
阿里云云计算ACP考试知识点(标红为重点)
查看>>
Unhandled event loop exception PermGen space
查看>>
从零开始来看一下Java泛型的设计
查看>>
嵌入式WiFi芯片价格战已经打响 MCU企业该醒悟了
查看>>
JavaScript格式化数字显示格式
查看>>
linux视频教程之vsftp_B
查看>>
Shell编程基础
查看>>
Android获取设备已安装的应用
查看>>
google code for xbmc addons2
查看>>