ZED è un demone che si occupa di verificare lo stato di ZFS e nel caso mandare allarmi. Purtroppo ZED non è integrato (ad oggi, PVE versione 8) dentro gli allarmi e le notifiche di PVE, quindi va impostato a mano.
ZED è installato di default e manda le mail a "root" (che poi è l'indirizzo email dell'utente root configurato durante l'installazione di PVE).
Se vogliamo mandare a un altro utente, possiamo farlo come segue:
/etc/zfs/zed.d/zed.rc
ZED_EMAIL_ADDR
ZED_NOTIFY_VERBOSE=1
systemct restart zed
Per fare un test di ZED possiamo usare un trucco: creiamo un pool ZFS di test, causiamo un evento, e poi cancelliamo il pool di test. Questo test richiede di avere impostato ZED_NOTIFY_VERBOSE=1
Questo è l'elenco dei comandi per creare il "finto" pool ZFS di test usando un file in /tmp, causare un evento, e poi cancellare tutto quanto.
# creo un pool di nome test cd /tmp dd if=/dev/zero of=sparse_file bs=1 count=0 seek=512M zpool create test /tmp/sparse_file # causo un evento di tipo non critico (serve VERBOSE=1 altrimenti non mi manda nulla) zpool scrub test # cancello tutto quanto ho creato prima zpool export test rm sparse_file
ZED è bello, ma preferisco avere anche un altro sistema di avviso più banale, che posso creare con due righe di crontab:
# allarme se si rompe zfs. MAILTO=la vostra email 00 6,12,20 * * * root zpool status | grep DEGRADED