Fedora CoreOS + Podman + Prometheus + Blackbox Exporter + GrafanaでWebサーバ(IPv6)を監視してみた。(その2)
Web Server(IPv6)を監視するために、Fedora CoreOS に Podman で監視コンテナ(Prometheus+Blackbox Exporter+Grafana)を作成してみました。今回は Grafana の設定です。
前回の設定で Prometheus で自宅サーバと Netlify の Web Server を外形監視することができましたので今回は Grafana を導入していきます。
Grafana コンテナの作成
Grafana のコンテナを作成していきます。
ビルド用フォルダ
grafana Dockerfile
grafana/grafana イメージを利用します。設定ファイルは grafana.ini に記載して/etc/grafana にコピーします。またこちらも prothemeus と同様に USER 0(root)としてホスト側の rootless ユーザからマッピングしたボリュームをアクセスできるようにします。
grafana.ini の設定
grafana.ini は、まずは動作することを優先に考えポート番号とメールの設定のみ変更してその他はディフォルトのままとしました。後でじっくりチューニングしていきたいと思います。
Grafana の.gitlab-ci.yml
他のコンテナとほとんど同じで、ビルド判断するフォルダとコンテナ名、ボリュームマッピングが違うのみです。
ダッシュボードの作成
Grafana のコンテナが作成できましたので、Grafan にログインしてみます。 標準であれば http://grafana サーバ:3000 にアクセスすると Grafana の初期画面が表示できると思います。私の環境は FrontEnd Server の Proxy1 の設定も行い https://●●●●.akiboi.net/でアクセスしてみます。最初にログインするときはユーザ ID adminで行います。パスワードを設定してログインできるようになると思います。
Data Source の設定
ログインしたらサイドメニューの Configuration-Data Sources を選択して Prometheus と接続してみます。Prometheus は同じ Pod 内で動作していますので、URL にhttp://localhost:52103(標準のポートを利用している場合は 9090)と入力して Save&Test ボタンをクリックして接続ができたら完了です。
ダッシュボードの設定
最初から設定するのもいいですが、既に公開されているダッシュボードの設定をダウンロードして利用させていただきました。今回利用したのはBlackbox Exporter Overviewで JSON ファイルをダウンロードして Grafana のサイドメニューの Create-Import を選択してダウンロードしたファイルを Upload JSON file ボタンをクリックしてアップロードします。あとはデータソースを登録した Prometheus を選択すると Blackbox Exporter で取得したメトリックスを表示することができると思います。登録したサーバの Duration 全体と個々のサーバの情報が見れると思います。これだけで十分な気がしました。
以上で自宅サーバと Netlify の Web サーバの監視ができるようになりました。