1、ATD支持多种给kafka推送日志的方式
针对Redhat、Centos支持如下方式(按推荐顺序排列):
(1)通过kafkacat给kafka推送日志
(2)通过filebeat给kafka推送日志
(3)通过rsyslog给kafka推送日志
(4)通过logstash给kafka推送日志
针对Ubuntu支持如下方式:
(1)通过filebeat给kafka推送日志
针对Windows系统支持如下方式:
(1)通过nxlog给kafka推送日志
2、注意:您需要将日志推送到kafka相应的TopicName中,但是,请勿将不同格式的域名日志推到同一个TopicName下,否则ATD将无法完成日志解析。
- 配置yum源,编辑
/etc/yum.repos.d/bsc-juhe.repo
文件:
[bsc-juhe]
name=juhe
baseurl=http://bsc-juhe:6WY07AXDsI=@mirrors.juhe.baishancloud.com/repo/bsc/el$releasever/$basearch/
gpgcheck=0
enabled=1
-
编辑完成后清除一下缓存:
yum clean all
-
安装:
yum install filebeat-5.6.4-1.x86_64
-
绑定kafka server,对应的主机名和ip如下,那么就需要在日志服务器上绑定这些hosts,在
/etc/hosts
文件中追加:vim /etc/hosts
{{ip}} {{hostname}}
-
例:
vim /etc/hosts
172.18.1.2 ATD1
172.18.1.3 ATD2
172.18.1.4 ATD3
- 编辑文件
/etc/filebeat/filebeat.yml
:
#=========================== Filebeat prospectors =============================
filebeat.prospectors:
# Each - is a prospector. Most options can be set at the prospector level, so
# you can use different prospectors for various configurations.
# Below are the prospector specific configurations.
- input_type: log
# Paths that should be crawled and fetched. Glob based paths.
paths:
- /tmp/1.log
- /tmp/2.log
- /tmp/*.log.b
tail_files: true
#================================ Outputs =====================================
output.kafka:
#enabled: true
hosts: ["kafka1:6667", “kafka2:6667”, “kafka3:6667”]
version: "0.10.1"
topic: "juhe-test"
partition.round_robin:
reachable_only: false
required_acks: 1
compression: gzip
max_message_bytes: 1000000
codec.format:
string: '%{[message]}'
-
注意:
1)paths为本地文件的路径,支持多个文件的导入,支持通配符,支持文件句柄释放后新的同名文件的句柄引入。
2)version为目标kafka-server的版本,ATD机器默认的kafka-server版本为0.10.0 。
3)hosts为kafka-server的地址,格式为"ATD机器hostname:kafk-server的端口号"。
4)topic为kafka-server接受相应日志的topic。 -
完成filebeat配置文件的编辑操作后,重启filebeat:
centos6:/etc/init.d/filebeat restart
centos7:
systemctl restart filebeat
(1)确认是否有新产生的日志进入到kafka中: 登陆到ATD部署机器192.168.0.89,消费对应kafka的topic数据,如果日志源有新日志产生且推送日志流程正常,使用如下命令能看到日志:
# /usr/hdp/2.6.2.0-205/kafka/bin/kafka-console-consumer.sh --bootstrap-server $(hostname):6667 --topic juhe-1710116uSh
(2)如果(1)步骤中没有消费到日志,则自查如下:
查看推送日志的机器到kafka机器的网络是否连通:
# telnet 192.168.0.89 6667
查看filebeat日志,看是否有相关报错
(3)supervisor启动失败:
在/etc/supervisord.conf
文件中查看是否有以下内容,如果没有,请添加。
[include]
files = supervisord.d/*.ini
1、参考官方文档:
https://www.elastic.co/guide/en/beats/filebeat/master/configuring-howto-filebeat.html
2、安装拦截器文档:
(1)安装拦截器文档(适于Redhat/Centos):
https://github.com/yunjuhe/atd/blob/master/%E5%AE%89%E8%A3%85%E6%8B%A6%E6%88%AA%E5%99%A8%E6%96%87%E6%A1%A3%EF%BC%88%E9%80%82%E4%BA%8ERedhat%26Centos).md
(2)安装拦截器文档(适于Ubuntu):https://github.com/yunjuhe/atd/blob/master/%E5%AE%89%E8%A3%85%E6%8B%A6%E6%88%AA%E5%99%A8%E6%96%87%E6%A1%A3%EF%BC%88%E9%80%82%E4%BA%8EUbuntu).md