Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

一.实验环境

主机1:localcast.localdomain         172.25.254.10

主机2:westcp.localdomain            172.25.254.20

systemctl stop firewalld                       

systemd-journald查看       rsyslog   采集

二.systemd-journald(查看日志)

服务名称:systemctl-journal.service
journalctl
默认日志存放路径:/run/log

journalctl命令的用法

journalctl 

    -n 3            日志的最新三条

 --since "2020-05-01 11:00:00"    显示11:00以后的日志

 --until "2020-02-13 11:05:00"    显示日志到11:05

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
    --o             设置日志的显示方式

 short    经典模式显示日志

verbose  显示日志的全部字节  

export   适合传出和备份的二进制格式

 json     js格式显示输出

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
    -p                       显示制定级别的日志

 0      emerg    系统的严重问题日志

1       alert    系统中立即要更改的信息

2      crit     严重级别会导致系统软件不能工作

3      err      程序报错

 4      warning  程序警告

 5      notice   重要信息的普通日志

 6      info     普通信息

7      debug    程序排错信息

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
    -F      PRIORITY         查看可控日志级别

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
    -u      sshd                     指定查看服务

    --disk-usage                   查看日志大小

--vacuum-size=1G         设定日志存放大小(1G)

--vacuum-time=1W         日志在系统中最长存放时间

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
    -f                                     监控日志

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

journalctl 特定条目      查看指定条目的日志

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

直接更改日志大小:编辑文件/etc/systemd/journald.conf 

vim /etc/systemd/journald.conf 

systemctl restart systemd-journald.service

保存日志

mkdir /var/log/journal

chgrp systemd.journal /var/log/journal

chmod 2775         /var/log/journal

systemctl restart systemd-journald.service

当服务重启日志存放路径会被指定到:/var/log/journal

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

三.rsyslog(日志采集)

服务名称:rsyslog.service

日志存放:

/var/log/messages     系统服务日志,常规信息,服务报错

/var/log/secure       系统认证信息日志

/var/log/maillog      系统邮件日志信息

/var/log/cron         系统定时任务日志

/var/log/boot.log     系统启动日志信息

配置文件:/etc/rsyslog.conf

实验一  更改日志采集路径

日志类型.日志级别      日志存放路径
*.*                    /var/log/westos      把系统中所有级别的日志存放到westos中Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

*.*;authpriv.none      /var/log/westos      把系统中所有级别的日志存放到westos中,但是authpriv不存放到westos中

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

在另一台主机登入,未显示日志信息

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
日志类型

auth        用户认证

authpriv    服务认证

cron        时间任务

kern        内核类型

mail        邮件

news        系统更新信息

user        用户

日志级别

emerg    系统的严重问题日志

alert    系统中立即要更改的信息

crit     严重级别会导致系统软件不能工作

err      程序报错

warning  程序警告

notice   重要信息的普通日志

info     普通信息

debug    程序排错信息

none     不采集

实验二 如何更改日志采集格式

1.定义日志采集格式

$template WESTOS_FORMAT, "%FROMHOST-IP% %timegenerated% %syslogtag% %msg%\n"

%WESTOS_FORMAT%    样式名称

%FROMHOST-IP%      日志来源主机ip

%timegenerated%    日志生成时间

%syslogtag%        日志生成服务

%msg%            日志内容

\n               换行

2.设定日志采集格式应用

*.*;authpriv.none             /var/log/westos;WESTOS_FORMAT      设定westos文件为WESTOS_FORMAT格式

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
 

实验三 日志的远程同步

关闭防火墙

编辑配置文件 vim /etc/rsyslog.conf 19,20行

1.接收日志

19:module(load=“imudp”)        打开日志接收插件

20:input(type="imudp" port="514")  指定插件使用接口

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

systemctl restart rsyslog 

查询端口:

netstat -antlupe | grep rsyslog

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)
2.另一台主机设定发送日志

vim /etc/rsyslog.conf

*.*                @172.25.254.20

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

systemctl restart rsyslog

@         表示使用udp传输日志

@@        表示使用tcp传输日志

@172.25.254.20     把本机日志用udp的传输方式发送到172.25.254.20主机

在两台主机中测试

> /var/log/messages      清空日志

172.25.254.10主机中输入logger  test message

可以看到在另一台主机中生成的日志

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

四.timedatectl

timedatectl set-time              设定系统时间

timedatectl list-timezones         显示系统的所有时区

timedatectl set-timezone          设定系统时区

timedatectl set-local-rtc 0|1     设定系统时间计算方式
                                               0表示使用utc时间计算方式

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

五.时间同步

/etc/chrony.conf

谁共享谁打开

打开23 allow 172.25.254.0/24

26行 local stratum 10

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

重启服务

时间接收方修改该文件

pool 172.25.254.10 iburst

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)

重启服务

证明时间同步在被同步方chroync sources -v

Linux系统日志管理(systemd-journald,rsyslog,timedatectl,时间同步)