一、filebeat安装
# 下载
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.10.1-x86_64.rpm
# 解压
rpm -ivh filebeat-7.10.1-x86_64.rpm
其中版本号(7.10.1字段)可以依据需要更改
二、文件配置
1.filebeat.yml配置
我们需要告诉 Filebeat要监控哪些日志文件以及将日志发送到哪里去,因此我们需要修改一下 Filebeat 的配置
vim /etc/filebeat/filebeat.yml
我们想要让logstah将文件传输到logstash,其默认端口为5044,因此需要修改几个部分:
①filebeat.input中的enabled改为true
②将output.elasticsearch内容全注释
③输出到logstash的5044端口
2.logstash-sample文件配置(logstash)【如已复制或移动则直接修改conf文件内容】
①找到logstash-sample配置文件,在/etc/logstash/文件夹下,将其复制到/etc/logstash/conf.d/文件夹下【在之前一篇博客中,这个操作其实已经做过,就不用再复制一次】
# 转到目录
# cd /etc/logstash/
# 查看
# ls
# 复制
cp /etc/logstash/logstash-sample.conf /etc/logstash/conf.d/logstash-sample.conf
②接着修改conf文件的内容
vim /etc/logstash/conf.d/logstash-sample.conf
在其中修改内容为
input {
beats {
port => 5044
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "filebeat-log-test"
}
}
即logstash监听5044端口,并将内容输出到elasticsearch
三、filebeat+logstash启动
1.启动logstash(可直接运行②)
①检查logstash配置语法是否正确
/usr/share/logstash/bin/logstash -e 'input { stdin {} } output { stdout {} }'
如果正确将会显示
在控制台输入Hello World,返回信息
②运行logstash
方法一:
# 启动logstash(我一般使用这个,可以比较清晰地看到运行结果)
/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash-sample.conf
# 终止logstash
# systemctl stop logstash
出现成功连接到端口后进行下一步——启动filebeat
方法二:
或者使用
bin/logstash -f logstash-simple.conf --config.reload.automatic
bin/logstash -f logstash-simple.conf --auto-reload
--config.reload.automatic选项的意思是启用自动配置加载,以至于每次你修改完配置文件以后无需停止然后重启Logstash
方法三:
或者系统运行
systemctl start logstash
2.启动filebeat
systemctl start filebeat
或者
systemctl restart filebeat
如果成功,在head可以看到出现了一个新的索引
四、问题小结
1.[LogStash::Runner] runner - Logstash shut down
2.logstash运行失败
参考博客