linux yum yum gem,CentOS 7 gem 安装fluentd

由于ELK中的logstash 太过臃肿,CPU和内存使用过大,

我们需要一个性能更好,资源消耗低的替代品。fluentd就是我们想要的。

测试表明,在相同负载情况下,fluentd的性能数倍于logstash。

原日志收集架构

filebeat >kafka > logstash > elasticsearch > kibana

新日志收集架构

filebeat > kafka > fluentd > elasticsearch > kibana

由于CentOS7 自带ruby版本过低,本文使用ruby 2.4.1 安装fluentd .

1、卸载自带的rubyyum remove ruby -y

2、安装ruby2.4.1yum install http://120.24.7.75:8000/centos/7/x86_64/ruby2.4-2.4.1-1.el7.centos.x86_64.rpm

3、调整gem源gem sources  #列出默认源

gem sources --remove https://rubygems.org/  #移除默认源

gem sources -a https://mirrors.ustc.edu.cn/rubygems/  #添加科大源

4、安装编译环境和软件包依赖yum install gcc gcc-c++ make automake autoconf libtool openssl-devel jemalloc-devel gmp-devel -y

5、安装fluentdgem install fluentd --no-ri --no-rdoc

6、安装fluent插件gem install fluent-plugin-kafka --no-ri --no-rdoc

gem install fluent-plugin-elasticsearch --no-ri --no-rdoc

7、初始化fluentdfluentd --setup /etc/fluentd

前台debug 测试,用于检查配置文件fluentd -c /etc/fluentd/fluentd/fluent.conf -vv

8、创建启动脚本/usr/lib/systemd/system/fluentd.service[Unit]

Description=Fluentd

Documentation=http://www.fluentd.org/

After=network.target

[Service]

Type=simple

ExecStart=/usr/bin/fluentd -c /etc/fluentd/fluent.conf

Restart=on-failure

User=fluentd

Group=fluentd

[Install]

WantedBy=multi-user.target

9、启动fluentdsystemctl daemon-reload

systemctl enable fluentd

systemctl start fluentd

fluentd 是cruby写的,受限于GIL,无法利用多核CPU,已知每个CPU可处理5000个并发,

如果性能不能满足需求,可以进程多开。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值