linux - 女士监视器缺少事件,并显示其他多个

标签 linux events monitor raid mdadm

我对MDADM监视有问题,我无法正确处理这些事件。我在干净的ubuntu虚拟机上尝试了2种方案。让我解释。

我有一个简单的脚本来捕获事件并将其保存到日志文件中。如果我让监视文件向我发送邮件,结果是完全相同的,但是日志文件更容易解释

所以我在MDADM.conf中执行日志文件

# instruct the monitoring daemon where to send mail alerts
MAILADDR root
PROGRAM /root/scripts/monitor_array.sh


第一种情况:
Raid5中的4 HD

md0 : active raid5 sdb1[5] sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]


(1)我要添加一个备用文件:mdadm --manage / dev / md0 --add / dev / sdf1

有备用

md0 : active raid5 sdf1[6](S) sdb1[5] sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]


(2)我将一个驱动器设置为有故障:mdadm --manage / dev / md0 --set-faulty / dev / sdb1
团队突袭会自动取得剩余并恢复

Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]
md0 : active raid5 sdf1[6] sdb1[5](F) sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [_UUU]
      [====>................]  recovery = 24.6% (4807680/19513344) finish=1.2min speed=200320K/sec


在这种情况下的日志是

***************************
05-02-18 / 00:04:52
Fail
/dev/md0
/dev/sdb1
***************************
***************************
05-02-18 / 00:04:55
RebuildStarted
/dev/md0

***************************
***************************
05-02-18 / 00:06:30
RebuildFinished
/dev/md0

***************************
***************************
05-02-18 / 00:06:30
SpareActive
/dev/md0
/dev/sdf1
***************************


所有步骤都可见,但是我没有看到“ Rebuild20、40、60、80”事件,但是可以接受

场景(2)

我在这里做同样的事,但没有多余的余地
我从以下配置开始

md0 : active raid5 sdb1[5] sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]


(1)我将一个驱动器设置为故障:mdadm --manage / dev / md0 --set-faulty / dev / sdb1

磁盘在mdstat和日志中显示为失败

md0 : active raid5 sdb1[5](F) sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [_UUU]


并在日志中

***************************
05-02-18 / 00:17:36
Fail
/dev/md0
/dev/sdb1
***************************


(2)现在出现问题,我正在添加驱动器:mdadm --manage / dev / md0 --add / dev / sdf1

md0 : active raid5 sdf1[6] sdb1[5](F) sde1[4] sdd1[2] sdc1[1]
      58540032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [_UUU]
      [=>...................]  recovery =  7.1% (1398332/19513344) finish=1.5min speed=199761K/sec


日志同时显示3个事件

***************************
05-02-18 / 00:20:52
RebuildStarted
/dev/md0

***************************
***************************
05-02-18 / 00:20:52
RebuildFinished
/dev/md0

***************************
***************************
05-02-18 / 00:20:52
RebuildStarted
/dev/md0

***************************


过了一段时间

***************************
05-02-18 / 00:22:30
RebuildFinished
/dev/md0

***************************
***************************
05-02-18 / 00:22:30
SpareActive
/dev/md0
/dev/sdf1
***************************


因此,基本上为什么监控会同时显示多个Rebuild / Start / Finish
为什么系统未显示rebuild20 / 40/60/80事件?

最佳答案

我想您只是对mdadm Monitor期望过高,但是对于中间报告,您是否了解选项-r

-r, --increment
       Give a percentage  increment.   mdadm  will  generate  RebuildNN
       events with the given percentage increment.


我只能猜测添加驱动器后的两次重建来自重建RAID上的元数据(第一次重建,有一个新磁盘),以及重建实际数据。

关于linux - 女士监视器缺少事件,并显示其他多个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48618402/

相关文章:

linux - pgpgin 和 pgpgout -/proc/vmstat 中的 Linux 计数器

linux - 将目录下所有文件的第5列除以3?

c# - 犀牛模拟。如何添加订阅事件处理程序的期望

javascript - 将多个 addEventListener 添加到特定函数

c# - 测试事件是否分配了 EventHandler

java - 如何通过 API 查看线程正在等待哪个监视器?

python - 在 linux 中使用 python 更改日期/时间

c - 程序卡在管道上(exec ls grep sort)

database - 在 SQL SERVER 中监视 SQL 查询的进度

process - 句柄信息 :DOWN is not called after monitored process dies