Syslog-ng RHEL 的安装和配置
Posted huyuchengus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Syslog-ng RHEL 的安装和配置相关的知识,希望对你有一定的参考价值。
syslog-ng 作为 syslog 的替代工具,可以完全替代 syslog 的服务,并且通过定义规则,实现更好的过滤功能。
作为运维来说一个好的日志工具比什么都重要。
通常我们会管理不同的服务器,因此我们需要把日志集中一下以便于快速查找。
这个时候就需要在每个服务器上部署一个日志收集工具了 syslog-ng 是你的不二选择。
RHEL 安装
因为 CentOS 已经不再提供更新和支持了,所以我们可能会安装 RHEL 或者 Fedora 的版本。
在控制台上运行:
dnf install syslog-ng
就可以进行安装了。
配置日志收集
配置的日志收集文件位置为:
nano /etc/syslog-ng/conf.d/ldp.conf
上面是我们配置的一个日志收集配置文件。
我们把日志发布到远程服务器上了
远程查看
如果配置正确,运行下面的命令来启动日志收集服务器
systemctl restart syslog-ng
开机自动启动,运行命令:
systemctl enable syslog-ng
能确保开机能够自动启动。
日志管理
syslog-ng是另外一种流行的日志管理的解决方案,它是一个商业软件,包括收费版和开源版。
步骤一:启用EPEL源(略);
步骤二:删除系统自带的rsyslog并yum安装syslog-ng
yum remove rsyslog
yum install syslog-ng
步骤三:
syslog-ng服务端配置:/etc/syslog-ng/syslog-ng.conf
全局配置:options
options {
flush_lines (0); #设置一次发送多少条日志,默认为0即收到日志就发送
time_reopen (10);
log_fifo_size (1000); #单条日志大小
long_hostnames (off);
use_dns (no); #不依赖DNS服务器
use_fqdn (no);
create_dirs (yes);#存储日志的位置
keep_hostname (yes);
};
设置日志来源、端口、协议、最大连接数,以及存储的位置。
source demo_source {
tcp(ip(0.0.0.0) port(514) max-connections(1000));
};
destination d_central { file("/var/log/central/$HOST/$PROGRAM"); };
设置过滤器filter(可选):
filter f_loadbalance { host(lb.example.com) and match("Deny"value( "MESSAHE" )); };
#将负载均衡器中含有Deny字样的日志过滤出来。
设置规则,将demo_source中的日志存储到d_central中:
log { source(demo_source); destination(d_central); };
保存并重启syslog-ng服务
/etc/init.d/syslog-ng restart
syslog-ng客户端配置:
destination d_syslog { tcp("syslog-ng",port(514)); };
log { source(s_sys); destination(d_syslog); };
重启syslog-ng服务
/etc/init.d/syslog-ng restart
常见的syslog程序不止rsyslog和syslog-ng,还有老牌的syslog、facebook开源的scribe等。但是在性能和开发进度上,rsyslog和syslog-ng优势明显。而且rsyslog作为centos默认的日志程序,配置简单,故为首选。
以上是关于Syslog-ng RHEL 的安装和配置的主要内容,如果未能解决你的问题,请参考以下文章