Linux大神进阶九:优化系统中的日志管理

Linux大神进阶九:优化系统中的日志管理

1.日志的理解

日志:日志里面记录的是服务器的状态;日志的存在可以使管理员提前知道服务器的各种状态,如果服务器出现什么问题可以提前处理。进程和操作系统内核需要能够为发生的事件记录日志,这些日志可用于系统审核和问题的排出,一般永久保存在/var/log目录中。

2.系统文件记录信息表

文件记录信息表内的路径即为日志的采集路径;日志采集规则在/var/log/file(文件名)中设置

路径 注释
/var/log/messages ##服务信息日志
/var/log/secure ##系统登陆日志
/var/log/cron ##定时任务日志
/var/log/maillog ##邮件日志
/var/log/boot.log ##系统启动日志

3.系统文件日志类型表

日志类型 注释
auth pam ##产生的日志
authpriv ##ssh,ftp等登陆信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark ##(syslog)-rsyslog 服务内部的信息,时间标识
news ##新闻组
user ##用户程序产生的相关信息
uucp ##unix to unix copy,unix主机之间相关的通讯
local 1~7 ##自定义的日志设备

4.系统文件日志级别表

注:下表中,级别递增,级别从低到高,记录的信息越来越少,详细的可以查看手册:man 3 syslog;

日志级别 注释
debug ## 有调试信息的,日志信息最多
info ##一般信息的日志,最常用的
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ## 错误级别,阻止某个功能或者模块不能正常工作的信息
crit ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录

4.系统文件日志管理

4.1理解

***日志管理方式(rsyslog)*:开源软件,被广泛用于Linux系统以TCP/UDP协议转发和接受日志。
(1)主配置文件: /etc/rsyslog.conf(指定日志保存的位置修改配置文件,修改后重启rsyslog服务生效)
(2)修改方式: * .
/var/log/westos.log

利用 tail -f 日志文件名 (输出文件的后10行,实时更新)

4.2日志的定向采集

4.2.1理解
日志的定向采集:将什么类型、什么级别的日志放在哪个路径下。
这样做也有利于日志的管理和查看,因此应该设计采集规则。
4.2.2实验环境的配置
①首先我们将两个虚拟机进行重置;
②重新配置网络;
③用真机的两个图形界面代替两个虚拟机;
可以将虚拟机退出图形化界面的形式;(init 3)
Linux大神进阶九:优化系统中的日志管理
4.2.3 实验-日志的定向采集
:**实际在企业当中,我们要将日志分类管理,可以参考第三项系统日志管理里面的类型和级别,将 .改为日志类型.日志级别,然后存放在指定的文件当中即可。

步骤 命令 注释
(1) vim /etc/rsyslog.conf ##打开设定日志采集规则的文件
(2) ##在日志采集文件里面设置将任意类型、任何级别的日志都存放在/var/log/westos下;如果westos文件不存在,会自动生成该文件 命令格式为*.* /var/log/westos
(3) systemctl restart rsyslog ##重启日志管理服务
(4) systemctl restart sshd ##重启远程服务
(5) cat /var/log/westos ##查看日志记录的结果

4.2.4 结果
Linux大神进阶九:优化系统中的日志管理

4.3日志的远程同步

4.3.1理解
日志的远程同步:为了查看多台主机日志,方便管理多台主机;
4.3.2实验步骤

步骤 命令 注释
1. 发送方(server)设置
vim /etc/rsyslog.conf ##打开日志管理文件
②(/etc/rsyslog.conf RULES 下的55行) * .* @172.25.254.219 ##添加接收方的ip,保存退出(udp)
②(/etc/rsyslog.conf RULES 下的55行) * .* @@172.25.254.219 ##添加接收方的ip,保存退出(tcp)
systemctl restart rsyslog ##重启日志管理服务
2. 接收方(client)设置
vim /etc/rsyslog.conf ##打开日志管理文件
②udp (15行) #$ModLoad imudp 改为$ModLoad imudp ##日志接收模块,udp
udp (16行)#$UDPServerRun 514 ##开启接收模块,保存退出
tcp (19行) #$ModLoad imtcp改为$ModLoad imtcp ##日志接收模块,tcp
tcp (20行)#$TCPServerRun 514 ##开启接收模块,保存退出
systemctl restart rsyslog ##重启日志管理服务
systemctl stop firewalld ##关闭防火墙
systemctl disable firewalld ## 关闭防火墙
3…测试设置
①(server) > /var/log/messages ##清空日志文件
(client) > /var/log/messages ##清空日志文件
②(server) logger test ##产生日志
(server) cat /var/log/messages ##查看日志已经生成
③ (client) cat /var/log/messages ##在日志接受方查看远程主机发送过来的同步日志
4. 清除 /etc/rc.d/rc.local文件产生的日志
①(server) > /etc/rc.d/rc.local ## 清除 /etc/rc.d/rc.local文件产生的日志
(server) reboot ##重启发送端;
②(client) systemctl restart rsyslog ## 重启日志管理
systemctl stop firewalld ## 关闭防火墙
systemctl disable firewalld ## 关闭防火墙
5…重新测试设置
①(server) > /var/log/messages ##清空日志文件
(client) > /var/log/messages ##清空日志文件
②(server) logger test ##产生日志
(server) cat /var/log/messages ##查看日志已经生成
③ (client) cat /var/log/messages ##在日志接受方查看远程主机发送过来的同步日志

4.3.3实验结果
Result1 发送方(server)设置
Linux大神进阶九:优化系统中的日志管理Result2 接收方(client)设置
Linux大神进阶九:优化系统中的日志管理Result3 测试设置 Linux大神进阶九:优化系统中的日志管理****Result4 清除 /etc/rc.d/rc.local文件产生的日志 ****

Linux大神进阶九:优化系统中的日志管理

Result5 重新测试
Linux大神进阶九:优化系统中的日志管理4.3.4 系统排错
注意:按照先后顺序进行排错,案例操作最好按部就班。

错误 命令 注释
1.网络是否配置正确 (server) ifconfig eth0 ## #查看当前网络
(server) ping 172.25.254.32 ##和真机网络区域是否一致
(server) ping 172.25.254.132 #当前网络是否配置正确
(server) ping 172.25.254.232 #在server查看desktop是否连通
(desktop) ping 172.25.254.32 ##和真机网络区域是否一致
(desktop) ping 172.25.254.232 #当前网络是否配置正确
(desktop) ping 172.25.254.132 ##在desktopr查看server是否连通
2.网络连接硬件的错误 ①(真机)virt-manager ##打开虚拟机管理
②( 虚拟机管理)打开对应的虚拟机(server/desktop) ##在 虚拟机管理中进行操作;
③(真机)ifconfig eth0 ##查看对应的网口(04:0b);
④( 虚拟机管理)ifconfig eth0 ##查看对应的网口(04:0b);
⑤( 虚拟机管理)remove 出错的网口 ##(04:0b);
⑥(Add new Virtual Hardware)点击NIC:21????????d5 ##添加其他网口;
⑦(Add new Virtual Hardware)Network>>>Device model>>>virtl0>>>storge>>finish ##修改配置并保存
3. /etc/rsyslog.conf配置文件出错 注意:server的修改,仅仅修改接收方ip;client的修改,仅仅修改udp方式
①udp (server) * .* @ip (client) udp修改去掉注释(15.16行)
②tcp (server) * .* @ip (client) tcp修改去掉注释(19,20行)
4. 注意客户端关闭防火墙
systemctl stop firewalld ## 关闭防火墙
systemctl disable firewalld ## 关闭防火墙

2.硬件错误的排错result
Linux大神进阶九:优化系统中的日志管理Linux大神进阶九:优化系统中的日志管理