1.3. 远程日志安装和配置
1.3.1. 远程日志记录简介
所有系统都会生成和更新日志文件,记录其操作及其遇到的任何问题。在包含许多系统的分布式或云计算环境中,在中央位置收集这些日志文件简化了调试。
rsyslog
服务为运行集中式日志记录服务器以及配置各个系统将其日志文件发送到集中式日志记录服务器提供工具。这称为为远程日志记录 配置系统。
1.3.2. 安装 rsyslog 服务器
rsyslog
软件包必须安装在您要用作集中式日志记录服务器的系统上,以及要将日志发送到的所有系统。要做到这一点,以 root 用户身份登录并安装 rsyslog
软件包:
# yum install rsyslog
rsyslog
软件包已安装并准备好配置。
1.3.3. 在集中式日志记录服务器上配置 rsyslog
这个过程中的步骤必须遵循您要用作集中式日志记录的系统上。此流程中的所有步骤都必须以 root 用户身份登录时运行。
配置 SELinux 以允许
rsyslog
流量。# semanage port -a -t syslogd_port_t -p udp 514
在文本编辑器中打开
/etc/rsyslog.conf
文件。在文件中添加以下行,定义位置日志将保存到:
$template TmplMsg, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log" $template TmplAuth, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log" authpriv.* ?TmplAuth *.info,mail.none,authpriv.none,cron.none ?TmplMsg
从文件中这些行的开头删除注释字符(
#
):#$ModLoad imudp #$UDPServerRun 514
-
将更改保存到
/etc/rsyslog.conf
文件。
现在,您的集中式日志服务器被配置为从您环境中的其他系统接收和存储日志文件。
1.3.4. 在单个节点上配置 rsyslog
将此流程中列出的步骤应用到您的系统,以将它们配置为将日志发送到集中式日志服务器。在以 root 用户身份登录时,必须执行此流程中列出的所有步骤。
编辑
/etc/rsyslog.conf
,并通过添加以下内容来指定集中式日志服务器的地址:*.* @YOURSERVERADDRESS:YOURSERVERPORT
将 YOURSERVERADDRESS 替换为集中式日志记录服务器的地址。将 YOURSERVERPORT 替换为 rsyslog 服务侦听的端口。例如:
*.* @192.168.20.254:514
或者:
*.* @@log-server.example.com:514
单一
@
符号指定传输的 UDP 协议。使用@@
指定 TCP 协议进行传输。重要在这些示例配置中使用通配符(
*
)字符表示,所有日志优先级的日志条目都必须发送到远程 rsyslog 服务器。有关应用更精确地过滤日志文件的信息,请参阅 rsyslog 配置文件
rsyslog.conf
的 man page。运行man rsyslog.conf
来访问手册页。- 启动或重新启动 rsyslog 服务后,系统将将所有日志消息发送到集中式日志记录服务器。
1.3.5. 启动 rsyslog 服务器
rsyslog
服务必须在集中式日志记录服务器和尝试登录的系统上运行。
此流程中的步骤必须在以 root 用户身份登录时执行。
启动 rsyslog 服务:
# service rsyslog start
确保 rsyslog 服务在以后自动启动:
# chkconfig rsyslog on
rsyslog
服务已启动。该服务将根据其本地配置启动或接收日志消息。