logstash是一个非常灵活好用的数据采集框架工具,可以通过简单的配置满足绝大多数数据采集场景的需求。
采集数据一个非常典型的场景就是将数据先放到kafka队列里削峰,然后从kafka队列里读取数据到mysql或其他存储系统中进行保存。

本文通过一个简单的示例来演示从syslog采集日志到kafka然后在从kafka写到mysql数据库中。
默认已经安装好了kafka、mysql、logstash,并已经经过简单的验证。
准备logstash的环境
一、下载mysql的jdbc驱动包
下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.15
下载后放到logstash的安装目录的/vendor/jar/目录下
二、安装logstash插件
logstash默认安装了kafka插件,但是mysql插件没有默认安装需要自己安装。
具体安装方法 /bin/logstash-plugin install logstash-output-jdbc ,这里应为要用到logstash写入mysql数据库,所以安装的插件是logstash-output-jdbc,如果要用到从mysql读数据,那么就要安装logstash-input-jdbc。安装方法类似。
因为安装时需要访问国外的源,安装进度很慢很慢,还经常安装不成功,所以需要更改国内的源。
也就是给 Ruby 换成国内的镜像站:https://gems.ruby-china.com/,替代https://rubygems.org。请注意:国内的镜像站从https://gems.ruby-china.org 换成了 https://gems.ruby-china.com !!! 现在很多网上的资料就都是写的https://gems.ruby-china.org,导致很多人换了镜像源也装不上。
具体方法如下:
1. 安装Gem并更新
# yum install -y gem
# gem -v
2.0.14.1
# gem update --system
# gem -v
2.7.7
2. 检查并修改镜像源
# gem sources -l
*** CURRENT SOURCES ***
https://rubygems.org/
# gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
https://gems.ruby-china.org/ added to sources
https://rubygems.org/ removed from sources
# cat ~/.gemrc
---
:backtrace: false
:bulk_threshold: 1000
:sources:
- https://gems.ru

本文介绍如何使用Logstash从Syslog收集日志,通过Kafka作为中间件,最终存储到MySQL数据库。涵盖环境搭建、插件安装、配置文件编写及运行效果展示。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



