邮件服务器出错

08年的8月5号,我在电信担任数据通信事业部IDC的项目经理,这一天对我来说是记忆深刻的一天,集团邮件服务器DOWN掉了,而且很难RECOVER,无法忘记这一段历史。 下面是我当年写的报告原文: 8月5日早上8点接到客户的EMAIL报障,报障内容为企业邮箱无法使用,

08年的8月5号,我在电信担任数据通信事业部IDC的项目经理,这一天对我来说是记忆深刻的一天,集团邮件服务器DOWN掉了,而且很难RECOVER,无法忘记这一段历史。

下面是我当年写的报告原文:

     8月5日早上8点接到客户的EMAIL报障,报障内容为企业邮箱无法使用,随后立即进入机房检查发现COREMAIL邮件系统(IP地址为61.142.15.58)已经宕机。

机器不断产生如下提示:

XFS mounting filesystem sda1

Starting XFS recovery on filesystem: sda1 (dev: sda1)

3w-9xxx: scsi0: ERROR: (0x03:0x0202): Data ECC error:.

scsi0: ERROR on channel 0, id 4, lun 0, CDB: Read (10) 00 65 db d7 3f 00 00

08 00

Current sda: sense key Medium Error

Additional sense: Unrecovered read error

end_request: I/O error, dev sda, sector 1708906303

3w-9xxx: scsi0: ERROR: (0x03:0x0202): Data ECC error:.

scsi0: ERROR on channel 0, id 4, lun 0, CDB: Read (10) 00 65 db d7 40 00 00

07 00

Current sda: sense key Medium Error

Additional sense: Unrecovered read error

end_request: I/O error, dev sda, sector 1708906304

3w-9xxx: scsi0: ERROR: (0x03:0x0202): Data ECC error:.

scsi0: ERROR on channel 0, id 4, lun 0, CDB: Read (10) 00 65 db d7 41 00 00

06 00

Current sda: sense key Medium Error

Additional sense: Unrecovered read error

end_request: I/O error, dev sda, sector 1708906305

3w-9xxx: scsi0: ERROR: (0x03:0x0202): Data ECC error:.

scsi0: ERROR on channel 0, id 4, lun 0, CDB: Read (10) 00 65 db d7 42 00 00

05 00

      根据这些数据可以初步判定硬盘出现问题。由于硬盘为RAID1镜像阵列,进入系统BIOS的RAID控制程序,查看到系统检测出了RAID阵列是正常的,查看两块硬盘,均能检查出硬盘容量及型号。因此故障原因非单个硬盘硬件损坏,而是硬盘数据出现问题和分区表损坏。

于是运行fdisk指令,查看系统能找到的分区:

Disk /dev/hda: GB,bytes

16 heads, 63 sectors/track, 79656 cylinders

Units = cylinders of 1008 * 512 = 516096 bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 1 4161 2097112+ 83 Linux

/dev/hda2 4162 8328 2100168 82 Linux swap

/dev/hda3 8329 12489 2097144 83 Linux

/dev/hda4 12490 79656 33852168 f W95 Ext'd (LBA)

/dev/hda5 12490 16650 2097112+ 83 Linux

/dev/hda6 16651 79656 31754992+ 83 Linux

发现目前硬盘分区只挂载了一个,其余都不能正常挂载。其他硬盘分区均有可能存在坏扇区。

之后运行磁盘检查指令 chkdsk 检查磁盘分区数据并试图修复分区,均告无效。且系统随着重新启动次数的增加,坏的分区越来越多,多数分区都无法正常挂载。

      在无法恢复硬盘分区并正常启动的情况下,我们立即找了了替代方案,在9点左右为另外一台服务器安装Redhat Adavnced Server 4,并于10点通知COREMAIL供应商广州安岭公司做好重装和恢复COREMAIL数据的准备工作。

     在为另 外一台服务器安装Redhat Adavnced Server 4的过程中,原有的DVD版的Redhat Adavnced Server 4无法在该服务器的普通CDROM上安装,后找到CD版的Redhat Adavnced Server 4,安装第三张盘时又提示光盘无法读取,只能重刻第三张光盘。在整个安装系统的过程中耽误了不少时间。

     系统安装完毕后,通知COREMAIL供应商广州安岭公司,又遇到无故拖延。为了尽快为客户提供基本的收发邮件的服务,我们请他们先行恢复用户数据。但 他们告诉我们原先备份的用户数据库里没有INDEX数据表,就此问题我们跟他们做了严正交涉,指出此INDEX表在我们运行的系统数据库中根本不存在。此后广州安岭公司采取了手工建立INDEX表的方式,最终于下午15:00之前帮我们恢复了用户数据库。用户至此可以正常收发邮件。

     总结以上的检查过程,分析出现此种宕机问题的原因如下:

1:此服务器使用4年多,且服务器硬盘每天读取写入邮件数据多且频繁,因此硬盘可靠性急剧降低。

2:机房该机柜内服务器表面温度平时都在40度以上,服务器机箱内温度更高,工作温度明显过高,硬盘在这个温度区间工作的比较不稳定,易产生读写错误。

3:我们对出现这种故障的风险估计不足,没有做好备份系统,并将数据及时备份保存。在这中间耽误了不少宝贵的抢修时间。

4:和供应商沟通中出现不少问题。

     综上所述,IDC网管在这个故障的过程中存在比较多不足的地方。而且此次故障之前,邮件系统在升级后有比较多的一些小故障,可能都预示着系统发生问题的方向,结果我们没有在意,导致出了这么大事故。

     经过痛定思痛,我们针对目前的状况做如下的总结和改进:

1:对于COREMAIL邮件系统我们要加深一步理解,此次恢复系统过程中出现的INDEX索引导致只能手工恢复数据的问题,我们以后必须深刻重视。做到对邮件系统的了解万无一失。

2:防患于未然,备份机器和备份系统要时刻准备好。以免在这个问题上耽误恢复系统的时间。

3:做好所有用户的每日备份工作,争取备份到每天的数据。在出现问题时,将用户的损失降低到最小。

4:定期巡检系统,针对系统可能出现的异常情况做好准备工作,做好安全生产工作。

在全公司安全生产的大前提下,IDC网管组应当严格遵守安全生产的规章制度,并结合实际情况,总结经验教训,以保障系统的稳定运行。

 

2008-8-7

知秋君
上一篇 2024-07-07 12:36
下一篇 2024-07-07 12:02

相关推荐