ELK 收集网络设备日志-----引入 redis进行缓存

Posted 飞刀问情

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ELK 收集网络设备日志-----引入 redis进行缓存相关的知识,希望对你有一定的参考价值。

准备两个linux宿主机-

linux-node1:  Elasticsearch + Logstash + Kibana

linux-node2:   Logstash + redis
linux-node1 安装 ELK 配置logstash将redis数据送给ES
[root@linux-node1 conf.d]# cat redis-to-es.conf 
input {
  redis {
    host => "192.168.200.4"   #指向linux-node2的redis的ip地址
    port => "6379"
    password => "123456"
    db => "0"
    data_type => "list"
    key => "logstash"
  }
}

output {
  elasticsearch {
  hosts => ["192.168.200.99:9200"]  
  index => "logstash_syslog-%{+YYYY.MM.dd}"
  }
}

利用supervisor自启 redis-to-es.conf

linux-node1 安装logstash和redis,并且配置logstash将数通网络设备syslog日志导入到redis里去
[root@linux-node2 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@linux-node2 ~]# yum install -y redis
[root@linux-node2 ~]# vim /etc/redis.conf 
bind 0.0.0.0
requirepass 123456

[root@linux-node2 ~]# systemctl start redis && systemctl enable redis

安装logstash步骤省略
[root@cobbler-200 ~]# cat /etc/logstash/conf.d/syslog-to-redis.conf 
input {
  udp {
    port => "514"
    type => "syslog"
  }
}
output {
  redis {
    host => ["192.168.200.4:6379"]     #linux-node2的redis的ip地址
    password => "123456"
    db => "0"
    data_type => "list"
    key => "logstash"
  }
}
利用supervisor自启 syslog-to-redis.conf

华为网络设备侧配置如下
clock timezone UTC add 08:00:00
ntp-service unicast-server 120.25.115.20
info-center source default channel 2 trap state off
info-center loghost source Vlanif100
info-center loghost 192.168.200.4    # ip 写redis的ip地址
info-center timestamp log format-date

以上是关于ELK 收集网络设备日志-----引入 redis进行缓存的主要内容,如果未能解决你的问题,请参考以下文章

elk日志收集到redis中

6.3.1版本elk+redis+filebeat收集docker+swarm日志分析

ELK+kafka构建日志收集系统

ELK日志收集分析系统配置

ELK之六-----logstash结合redis收集系统日志和nginx访问日志

ELK+Redis+Nginx服务数据存储以及Nginx日志的收集