Logstash有input、output、filter、codec 四种插件类型,支持的种类也很丰富,功能特别强大。选对正确的插件可以节省很多的资源占用和开发效率。 生产环境一般都无法连接到公网,所以本篇就带大家如何在线安装,以及打包离线安装包,然后使用离线安装包进行离线安装。
ELK系列(一)、安装ElasticSearch+Logstash+Kibana+Filebeat-v7.7.0
ELK系列(二)、在Kibana中使用RESTful操作ES库
--------------------------------------Logstash插件安装及离线打包------------------------------------------------------------
Logstash数据处理流程:
input-->decode-->filter-->encode-->output
输入-->解码-->过滤-->编码-->输出
在线安装logstash插件
查看
插件介绍: https://www.elastic.co/guide/en/logstash/7.7/index.html
插件列表: https://github.com/logstash-plugins
查看当前已安装的插件:
cat $LS_HOME/Gemfile
配置
安装ruby
yum install ruby
下载rubygem2.6.12 : https://rubygems.org/rubygems/rubygems-2.6.12.zip
解压并安装rubygems
unzip rubygems-2.6.12.zip
ruby rubygems-2.6.12/setup.rb
查看版本
gem -v
修改gem源为国内源
国内的gem源:https://gems.ruby-china.com/
#修改源
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
#查看
gem sources -l
配置 gemrc 文件
vim ~/.gemrc
#增加下面内容,忽略 SSL 证书错误
:ssl_verify_mode: 0
安装
在线安装github的插件,插件名称在上面的github里找即可或者在下面的中国的gem源网页内搜关键字查找
bin/logstash-plugin install logstash-output-mongodb
使用命令cat Gemfile |grep xxx 或使用bin/logstash-plugin list 命令即可查看插件是否安装成功,若在Gemfile内即表示插件已安装成功 :
打包logstash插件的离线安装包
在上一步在线安装好了插件之后,我们也可以将该插件打包成zip包,在生产环境使用离线安装,使用下面的命令打包离线安装包,这里使用上面在线安装好的 logstash-output-mongodb
bin/logstash-plugin prepare-offline-pack --overwrite --output logstash-output-mongodb.zip logstash-output-mongodb
可以看到打包之后的插件的zip包里以logstash命名的文件夹,下面有一个dependencies目录和插件的gem文件,打开dependencies里面还是几个gem文件。
因此我们其实也可以直接打开国内的gem源:https://gems.ruby-china.com/
搜索logstash-output-mongodb并下载gem文件,然后按照上面的格式打成zip包,效果与上面的prepare-offline-pack打包的离线安装包一样。
使用离线安装包安装Logstash插件
上面一步我们已经成功的打包了logstash插件的离线安装包,使用下面的命令即可离线安装Logstash插件:
bin/logstash-plugin install file:///opt/app/logstash-7.7.0/logstash-output-mongodb.zip
如果对你有帮助,点个赞鼓励一下作者吧~ 谢谢!