这几天部署elk服务,平常1个小时部署完成的工作,此次使用3天才完成,其中踩了不少坑,写该文章,希望各位运维人员能在遇到相同问题的时候看到该文。、
使用iptables做端口映射,经过多次排查,发现iptables nat没有收到任何报文,并在其他设备进行测试无问题,放弃iptables方案;iptables -t nat -A PREROUTING -p udp--dport 514 -j REDIRECT --to-ports 1514
使用rsyslogs方案,elk能看到网络设备的日志,但是有小瑕疵不能看到真实IP地址。
# Provides UDP syslog reception # CentOS7.2
$ModLoad imudp
$UDPServerRun 5144
# Provides UDP syslog reception # CentOS6.8
$ModLoad imudp.so
$UDPServerRun 514
* . * @@127.0.0.1:1514
使用nginx代理,网络设备发送日志到-----日志服务器的514端口,通过nginx负载到1514端口上,并且能看真实ip地址ip
stream {
upstream dns_upstreams {
server 127.0.0.1:1514;
}
server {
listen 514 udp;
proxy_pass dns_upstreams;
proxy_bind $remote_addr:$remote_port transparent;
proxy_timeout 1s;
proxy_responses 1;
}
}
三种解决方案各有优势,推荐使用nginx方式。
原文:https://blog.51cto.com/u_1194325/2737699