Freebsd
ZFS 報告(通過 ZoL 在 FreeBSD 和 Linux 上)
作為一個長期使用 mdadm 的使用者,剛剛遇到磁碟錯誤,並記得我為 mdadm 配置了自動郵件報告磁碟錯誤。
因此我只需要在*/etc/mdadm/mdadm.conf中插入我的郵件地址*
MAILADDR someone@exaplme.org
但我真的錯過了在 FreeBSD 上的那個。由於我的 ZFS RAID6 現在執行了半年多,我想到如果磁碟出現故障會發生什麼?
我從未配置任何外部郵件地址。有沒有簡單的方法來完成和測試這個?
就像在 mdadm 上一樣:
sudo mdadm –monitor –scan –test
我將如何使用 ZoL(Linux 上的 ZFS)在 Linux 上做到這一點?
**編輯:**對不起,我的意思是自動報告。沒有安排。
我知道我可以建構一個腳本並每分鐘解析一次 zpool status -X。但我認為這不是完成報告問題的一種非常優雅的方法。最好在磁碟故障時立即收到通知(如 mdadm)
**編輯$$ 2 $$:**謝謝您的建議,但我沒有遇到一些腳本問題,有人幫我解決 /bin/sh 中的 for 循環問題 -> PASTEBIN
**編輯$$ 3 $$:**得到了我的for循環問題。:) (在PASTEBIN中更新)
對我的腳本還有什麼建議嗎?
執行檢查
zpool status -x
輸出的正常腳本 (cron)。從長遠來看,Linux 上的 ZFS 項目正在以事件守護程序的形式實現這一目標。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