prometheusでやりたかったことの1つとしてアラート通知制御があります。
今回はalertmanagerを使ってアラート通知の制御設定をしていきます。
alertmanagerの準備
以下からalertmanagerをダウンロードしてきます。
prometheus公式
ダウンロードしたものを展開して/homeの下に配置しました。
「./alertmanager --config.file=simple.yml」で実行できるんですが、
設定を変更する必要があるのでsimple.ymlをベースにalert.ymlを用意しました。
※cp simple.yml alert.ymlという感じで用意した。
通知方法
今回はメールにしたのでglobalでは以下のように設定しました。
実際の通知設定
routeディレクティブで設定した内容で通知されるようです。
アラートのまとめ
warnとcriticalが同時になった場合、criticalだけを通知するようなことが可能なようです。
通知に関する設定
ここまでやったら「./alertmanager --config.file=alert.yml」で実行します。
prometheus側の設定
alertmanagerはprometheusから通知されるアラートの扱いを管理するもののようで、
通知自体はprometheus側で行う必要があります。
準備
alertのルールを用意していきます。
「/home/promethues」配下に移動してから作業
- 格納場所を用意
2. mkdir alert_rules - system.ymlをalert_rules配下に設置
次にprometheus.ymlのalertingとrule_filesを変更
これで準備ができた。
アラート通知
prometheusを起動して、node_exporterを停止するとアラートメールが通知されるはずです。
ちなみにalertmanagerも「グローバルIP:9093」にブラウザでアクセスすると以下のような確認ができます。
ここでは確認してないですがrepeatで指定した1h(1時間ごと)に再通知されると思います。
まとめ
ここまでで、簡単ではありますが、以下を行って来たので
一通りは完了かなと思ってます。
- prometheusの設定
- grafanaの設定
- このアラートの設定
あとは監視対象を増やしたりアラートメールの種類を増やしていければなと思います。