mdadm event をNextcloudに通知する
OSの通知をNextcloudに送る機能を使って、実際にOSの通知を送信してみます。
今回は、Ubuntuに搭載のソフトウェアRAID機能を提供する「mdadm」で発生するイベントをNextcloudに通知します。
実装
イベント発生時に呼び出すスクリプトを準備します。
sudo vi /root/sh/mdadm.sh
#!/bin/bash
#
# mdadm RAID health check
#
# Events are being passed to xmessage via $1 (events) and $2 (device)
#
# Setting variables to readable values
event=$1
device=$2
/root/sh/nextcloud_notification.sh "mdadm event: $1 on $2"
sudo chmod +x /root/sh/mdadm.sh
mdadmから先ほど作ったスクリプトを呼び出すconfigを書きます。
sudo vi /etc/mdadm/mdadm.conf
"ARRAY"から始まる行の次に下記を追加
PROGRAM /root/sh/mdadm.sh
動作確認
"TestMessage"イベントを発生させます。
sudo mdadm --monitor --scan --test
Nextcloudに次のような通知が届けば成功。
mdadm event: TestMessage on /dev/md/0
テストコマンドで下記が表示される場合、すでにmdadm --monitorが実行済みです。(通常はこちら)
mdadm: Only one autorebuild process allowed in scan mode, aborting
後で再起動して良ければ、すでに動作しているmdadmプロセスを落として、再度テストコマンドを実行すると届きます。
sudo ps -x | grep mdadm
表示されたmdadmをkillコマンドで終了して再度テストコマンドを実行してください。
届くのを確認したら、OSを再起動してください。
再起動後、下記を確認し、mdadm --monitorプロセスが存在していることを確認してください。
参考資料
mdadmを用いたソフトウェアRAIDの管理 - Qiita #RAIDアレイのモニター
Using mdadm to send e-mail alerts for RAID failures | Support | SUSE
コメントを残す