如果 raid 1 磁盘之一出现故障,如何获得电子邮件警报?

Bla*_*zer 5 raid software-raid

我需要知道如果 raid 1 磁盘之一无法工作/崩溃,我如何获得电子邮件警报。我有 CentOS 6.4 64 位,软件raid。

我在本教程之后犯了一些错误,因为它是一个底部注释

注意:已经发现,如果 /etc/mdadm.conf 文件中不存在 DEVICE partitions 部分,则 mdadm 不会发送电子邮件。如果这些部分不存在,可以使用以下命令创建新的 /etc/mdadm.conf 文件:mdadm –detail –scan > /etc/mdadm.conf”

我执行了那行,我的 mdadm.conf 文件是空的,来自 ssh 的响应是: "mdadm: An option must be given to set the mode before a second device (–scan) is listed"

我也不明白我必须使用这个 ssh 行来启动它:mdadm –monitor –scan –daemonize 但是我得到了这个响应" mdadm: An option must be given to set the mode before a second device (–scan) is listed "

这是 'cat /proc/mdstat' :

  Personalities : [raid1]
  md0 : active raid1 sdb1[1] sda2[0]
  117153664 blocks super 1.1 [2/2] [UU]
  bitmap: 1/1 pages [4KB], 65536KB chunk

   unused devices: <none>
Run Code Online (Sandbox Code Playgroud)

 mdadm -D /dev/md0
/dev/md0:
    Version : 1.1
  Creation Time : Sat Aug 17 09:19:15 2013
 Raid Level : raid1
  Array Size : 117153664 (111.73 GiB 119.97 GB)
 Used Dev Size : 117153664 (111.73 GiB 119.97 GB)
  Raid Devices : 2
 Total Devices : 2
 Persistence : Superblock is persistent

 Intent Bitmap : Internal

  Update Time : Mon Sep 16 18:55:19 2013
      State : active
  Active Devices : 2
 Working Devices : 2
 Failed Devices : 0
 Spare Devices : 0

       Name : trader:0
       UUID : 0944131a:0513ca86:cb8ad6c5:3baca49f
     Events : 1751

Number   Major   Minor   RaidDevice State
   0       8        2        0      active sync   /dev/sda2
   1       8       17        1      active sync   /dev/sdb1
Run Code Online (Sandbox Code Playgroud)

1 分钟前使用 mdadm --examine --scan > /etc/mdadm.conf 生成的 mdadm.conf 文件:

  MAILADDR mymail@gmail.com
  ARRAY /dev/md/0 metadata=1.1 UUID=0944131a:0513ca86:cb8ad6c5:3baca49f name=trader:0
Run Code Online (Sandbox Code Playgroud)

如果我的情况下一个硬盘出现故障,这是否足以收到电子邮件通知?

Mad*_*ter 3

Blazer,看起来在改进你的问题的过程中(顺便说一句,现在这是一个很好的问题),你已经找到了自己的答案。干得好,你!但还有一些有用的话可以说。

据我所知,这mdadm.conf足以让您获得自动通知。当然,我的看起来与此没什么不同,而且我从最近的故障测试中知道我收到了通知。(我对 中的第二个斜杠有点好奇/dev/md/0,但如果这是您的系统所写的,那么它很可能是正确的。)

但对于专业的系统管理员来说,这是不言而喻的:除非​​您测试过某些东西,否则您无法真正知道它是否有效。

至少,您需要检查是否可以以 root 身份从该系统向指定的 gmail.com 地址发送邮件并接收邮件。

如果我是你,我至少会执行软故障测试。你可以用 来做到这一点mdadm /dev/md0 -f /dev/sdb1。这将使阵列中的第二个分区失败,并且应该向您生成正式通知(检查系统的邮件日志以查看它是否已消失)。检查输出,cat /proc/mdstat以便您知道半坏数组是什么样的。

您可以稍后使用 重新同步该数组mdadm /dev/md0 -a /dev/sdb1,并检查它是否已与另一个 同步cat /proc/mdstat

如果您想全力以赴,请安排一些停机时间,尝试拔出其中一个驱动器,并检查系统是否仍然可以启动。如果有问题的元设备是引导分区,人们有时会忘记在两个驱动器上都有 GRUB 引导块,因此当第二个驱动器出现故障时,他们的系统将无法引导。稍后更换并重新同步驱动器。

无论您决定进行什么测试,都将其记录下来,以便当出现真正的故障时,您知道会发生什么,并且可以最大限度地减少飞行员错误损坏第二个驱动器的可能性。