Отчеты ZFS (во FreeBSD и Linux через ZoL)
Как давний пользователь mdadm только что столкнулся с ошибкой диска и вспомнил, что я настроил автоматическую отправку отчетов для mdadm по ошибкам диска.
Поэтому мне просто нужно было вставить свой почтовый адрес в /etc/mdadm/mdadm.conf
MAILADDR someone@exaplme.org
Но я действительно пропустил это во FreeBSD. И поскольку мой ZFS RAID6 теперь работает более полугода, я подумал о том, что произойдет, если диск выйдет из строя?
Я никогда не настраивал внешний почтовый адрес. Есть ли простой способ выполнить и проверить это?
Как на mdadm:
sudo mdadm –monitor –scan –test
И как бы я сделал это на Linux с ZoL (ZFS на Linux)?
РЕДАКТИРОВАТЬ: Извините, я имел в виду автоматизированные отчеты. не планируется.
Я знаю, что мог бы создать скрипт и анализировать состояние zpool -X каждую минуту. но я думаю, что это не очень элегантный подход к решению проблемы отчетности. Было бы лучше получать уведомления сразу о сбое диска (например, mdadm)
РЕДАКТИРОВАТЬ [2]: Спасибо за ваши советы, но не зацикливайтесь на некоторых проблемах со сценариями, если кто-нибудь поможет мне с моей проблемой цикла for в /bin/sh здесь -> PASTEBIN
РЕДАКТИРОВАТЬ [3]: Есть проблема с петлей.:) (обновление в PASTEBIN)
Еще какие-нибудь советы для моего сценария?
2 ответа
Запустите обычный скрипт (cron), который проверяет zpool status -x
выход. В долгосрочной перспективе проект ZFS на Linux работает над этим в форме демона событий. Производные от Solaris системы имели доступ к архитектуре управления ошибками.
Что касается автоматизированных отчетов, даже коммерческие решения, такие как NexentaStor, используют плановые проверки. В этом нет ничего плохого.
Что-то вроде этого:
[root@mdmarra ~]# zpool status -x
all pools are healthy
По сравнению с чем-то ужасным, как:
[root@mdmarra ~]# zpool status -x
pool: vol1
state: UNAVAIL
status: One or more devices are faulted in response to IO failures.
action: Make sure the affected devices are connected, then run 'zpool clear'.
see: http://www.sun.com/msg/ZFS-8000-JQ
scan: scrub repaired 0 in 1h15m with 0 errors on Sun Jul 28 21:15:10 2013
config:
NAME STATE READ WRITE CKSUM
vol1 UNAVAIL 0 0 0 insufficient replicas
mirror-0 DEGRADED 0 0 0
c1t0d0 UNAVAIL 0 0 0 cannot open
c2t0d0 ONLINE 0 0 0
mirror-1 DEGRADED 0 0 0
c1t1d0 UNAVAIL 0 0 0 cannot open
c2t1d0 ONLINE 0 0 0
mirror-2 DEGRADED 0 0 0
spare-0 UNAVAIL 0 0 0 insufficient replicas
c1t2d0 UNAVAIL 0 0 0 cannot open
c2t8d0 UNAVAIL 0 0 0 cannot open
c2t2d0 ONLINE 0 0 0
mirror-3 DEGRADED 0 0 0
c1t3d0 UNAVAIL 0 0 0 cannot open
c2t3d0 ONLINE 0 0 0
mirror-4 DEGRADED 0 0 0
c1t4d0 UNAVAIL 0 0 0 cannot open
c2t4d0 ONLINE 0 0 0
mirror-5 UNAVAIL 0 0 0 insufficient replicas
c1t5d0 UNAVAIL 0 0 0 cannot open
c2t5d0 FAULTED 0 0 0 too many errors
cache
c3t5d0 ONLINE 0 0 0
spares
c2t8d0 UNAVAIL cannot open
errors: No known data errors
Попробуйте zfswatcher, он действительно хорошо работает для меня.