prometheus
監視ツール
AlertManager

Prometheusへmuninから移行を検討③ 〜アラート〜

prometheusでやりたかったことの1つとしてアラート通知制御があります。
今回はalertmanagerを使ってアラート通知の制御設定をしていきます。

alertmanagerの準備

以下からalertmanagerをダウンロードしてきます。
prometheus公式

ダウンロードしたものを展開して/homeの下に配置しました。
スクリーンショット 2018-05-01 13.11.32.png

「./alertmanager --config.file=simple.yml」で実行できるんですが、
設定を変更する必要があるのでsimple.ymlをベースにalert.ymlを用意しました。
※cp simple.yml alert.ymlという感じで用意した。

通知方法

今回はメールにしたのでglobalでは以下のように設定しました。
スクリーンショット 2018-05-01 13.18.28.png

実際の通知設定

routeディレクティブで設定した内容で通知されるようです。
スクリーンショット 2018-05-01 13.21.40.png

アラートのまとめ

warnとcriticalが同時になった場合、criticalだけを通知するようなことが可能なようです。
スクリーンショット 2018-05-01 13.23.44.png

通知に関する設定

今回はメールなので以下のような設定にしました。
スクリーンショット 2018-05-01 13.24.30.png

ここまでやったら「./alertmanager --config.file=alert.yml」で実行します。

prometheus側の設定

alertmanagerはprometheusから通知されるアラートの扱いを管理するもののようで、
通知自体はprometheus側で行う必要があります。

準備

alertのルールを用意していきます。
「/home/promethues」配下に移動してから作業

  1. 格納場所を用意
    1. mkdir alert_rules
  2. system.ymlをalert_rules配下に設置

中身はシンプルにInstanceDownだけにした。
スクリーンショット 2018-05-01 13.37.30.png

次にprometheus.ymlのalertingとrule_filesを変更
スクリーンショット 2018-05-01 13.39.21.png

これで準備ができた。

アラート通知

prometheusを起動して、node_exporterを停止するとアラートメールが通知されるはずです。
ちなみにalertmanagerも「グローバルIP:9093」にブラウザでアクセスすると以下のような確認ができます。
スクリーンショット 2018-05-02 17.29.17.png

ここでは確認してないですがrepeatで指定した1h(1時間ごと)に再通知されると思います。

まとめ

ここまでで、簡単ではありますが、以下を行って来たので
一通りは完了かなと思ってます。
- prometheusの設定
- grafanaの設定
- このアラートの設定

あとは監視対象を増やしたりアラートメールの種類を増やしていければなと思います。