Linux系统
存储交换机日志
日志记录是为系统设备在运行过程中报告其运行情况而设的,
为了保证系统正常运行,
解决每一天可能遇到的各种各样的问题,
网络管理员必须认真地读取日志记录。目前公司
系统路由器共有5
0
台左右,
均为
Cisco
路由器,
使用
show log
命令来查看日志,
但将所有的路由器逐个查看是非常费时费力的。由于
Cisco
路由器存储日志记录的缓存很小
(
默认是
4 KB)
,
一条记录的保存时间一般只有几分钟,
缓存器以先进先出的队列模式处理日志记录,
最早的记录将被刷新,
一些重要的日志记录有可能被覆盖。因此应该建立日志管理服务器,
将所有路由器的日志记录汇总,
便于管理和查询,
及时发现路由器在运行过程中出现的问题,
以保证
MIS
系统正常运行。
1
建立过程
Syslog
是一种运行在
UNIX
和
LINUX
操作系统上的日志工具。它能够接收远程系统的日志记录,
在一个日志中按时间顺序处理包含多个系统的记录,
并以文件形式存盘。同时不需要连接多个系统,
就可以在一个位置查看所有的记录。
Syslog
使用
UDP
作为传输协议,
通过目的端口
514
,
将所有路由器的日志管理配置发送到安装了
Syslog
软件系统的服务器,
Syslog
服务器自动接收日志数据并写到日志文件中,
存储外部路由器日志的日志文件通常存放在该服务器“
/ var/ log
”目录下的
messages
文件中。为了查看日志文件的内容,
必须要有“
Root
”权限。日志文件中的信息很重要,
只能允许超级用户访问这些文件。
2
日志文件
日志文件是纯文本文件,
每
1
行就是
1
个消息。
1
个消息是由下述
4
个域的固定格式组成,
只要是在
Linux
下,
能够处理纯文本的工具都可用来查看日志文件。
2.1
时间标签( Timestamp)
。表示消息发出的日期和时间,
即使用服务器的时间。在创建日志时路由器的时间被忽略,
使用服务器的时间可以作为一个单一标准,
而不必检查所有路由器的时间是否一样。
2.2
主机名(Hostname)
和日志ID
。主机名是路由器发送日志的端口
IP
地址,
表示生成消息的设备名字。如果只有
1
台计算机,主机名就可以忽
略,
但是在网络环境中,
使用
Syslog
就可以区分不同主机发送的消息。在
IP
地址后面的数字表示日志
ID
号,
Cisco
路由器每生成一个日志记录就将日志
ID
号加
1
。
3
系统配置
3.1
服务器配置
硬件配置
:
采用奔腾
4 2.8GHz CPU
、内存
1G
或更高配置的
PC
机。
操作系统
: Redhat Linux As 5 Updata 2
将服务器连接网络,
设置
IP
地址。例如
:10.32.2.1
。
Syslog
服务器的启动程序是
Syslogd
。正常启动时,
它并不接收来自网络的消息,必须使用
-r
的参数初始化
Syslog
服务器,
启动步骤如下。
1.
首先打开服务器用“
root
”用户登陆
;
2.
点击开始菜单“运行命令”项,
在命令框输入“
syslogd -r
”命令,
点击运行
;
3.
查看
/ var/ log/ messages
文件内是否产生了一条启动消息
Sep 25 14 : 44 : 05 localhost syslogd 1.4.1 :restart ;
4.
运行“终端”程序,即在
(root@localhost root)#
提示符后,键入“
netstat -a more
”,回车后查看是否有“
udp 0 0 *
∶
syslog *
∶
*
”行,如果有,
Syslog
服务器就启动成功。
3.2
路由器配置
在全局模式下输入下列命令。
router (config) # logging .
router (config) # logging 10.32.2.1
然后,使用“
CTRL^Z
”退出全局模式,路由器就开始转发其日志记录。
(
注
:Cisco
路由器可以向
5
台日志服务器同时发送日志消息
)
3.3
配置测试
在路由器上输入
2
条命令
( router # config t
,
router (config) # exit )
,即可在服务器
/ var/ log/ messages
文件内产生
1
条消息
: Sep 25 14:47:22 10.32.2.1 66:4w0d:%SYS-5-CONFIG I:Configured from console by vty0 (172.16.2.1)
这说明日志服务器已经开始接收路由器的日志记录,系统配置成功。
4
查看日志文件
在“终端”程序窗口内,用像
More
或
Less
一样的分页显示程序,或者用
Grep
命令查找特定的消息。绝对不要使用文本编辑器打开文件,否则易降低系统性能,而且不允许更改日志文件。以下提供几种查询方式。
方式1
:
分页显示日志文件。可以使用以下命令
:
(
root@localhost root
)
#more /var/log/messages
(root@localhost root)#less /var/log/messages
其中
less
命令可以上下滚动文件,并可按字符串查找记录。
方式2 :
从日志文件中提取单个设备日志记录。例如
:
查找
10.32.2.1
路由器的记录是否保存到
router.txt
文件中时,就输入
(root@localhost root)# grep '10.32.2.1' /var/log/messages>router.txt
5
应用
通过查看日志记录中的各种信息,可以及时了解各个路由器的状态及各种突发事件,并且还能跟踪线路故障,例如以下这一条记录
:
Sep 28 01:25:32 10.32.2.1 410:3w1d:%LINEPRO TO-5 UPDOWN:Line protocol . Interface Serial0
,
changed state to down
这条记录指
28
日
01:25;32
,
位于
10.32.2.1
的路由器的串行接口
0
的协议级中断,这反映了线路上的所有通信协议都失败了,虽然不能准确地知道故障原因,但可以分析出串行接口和相连的路由器之间的线路有问题。
本文出自 “李晨光原创技术博客” 博客,谢绝转载!