このブログを検索

この記事の内容は、個人の見解、検証の範囲のものであり、誤りがある可能性があります。
個人の責任において情報活用をお願いします。


2024年2月29日木曜日

Prometheus で k8s 環境の監視に挑戦してみる 第5回 Grafanaで可視化

ホワイトボックス監視についてやっていこうかと思いましたが予定を変更して、Grafana での可視化をやっていきます。
まずは、Grafana のサーバーを構築します。

Grafana のインストール手順については以下から確認可能です。
https://grafana.com/docs/grafana/latest/setup-grafana/installation/redhat-rhel-fedora/

インストールのコマンドは以下から確認可能です。
今回は CentOS を使いました。
https://grafana.com/grafana/download

インストール
# yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-10.3.1-1.x86_64.rpm
インストール後の確認
# yum list installed | grep grafana
systemctl で操作ができるようなので起動します。
ちょっと時間かかるので待ちます。
# systemctl start grafana-server.service
ついでに自動起動するようにしておきます。
# systemctl enable grafana-server.service
Grafana は3000番ポートを使うので必要に応じて設定するか、ファイアウォールを停止してください。
今回は検証環境なのでファイアウォールを停止・・・しようと思ったのですが、ChatGPT先生にポート開放の方法を聞いてみました。

ポートの開放
firewall-cmd --zone=public --add-port=3000/tcp --permanent
設定の読み込み
sudo firewall-cmd --reload
これでOKなはず。
Grafana にアクセスしてみたところ無事成功しました。
初回ログイン時は、ユーザー/パスワードに admin を入れます。
新しいパスワードの入力を求められるので設定します。
ログイン出来たら、Prometheus をデータソースとして連携させます。
「≡」からメニューを開き「Connections」をクリックします。
「Data sources」をクリックします。
「Add data source」をクリックします。
「Prometheus」をクリックします。
「Prometheus server URL」に、http://<Prometheus サーバーのIPかFQDN:9090> を入力します。
「Save & test」をクリックします。
成功すると以下のようにメッセージが出ます。
これで Grafana が Prometheus を使用してデータの可視化ができるようになりました。 それでは、どのようなデータを可視化するのかを設定する Dashboard を設定していきたいと思います。 「≡」からメニューを開き「Dashboards」を表示します。
「NEW」をクリックします。
「NEW Dashborad」をクリックします。
「Add Visualization」をクリックします。
Dashboard の作成画面は3つのエリアに分かれていてそれぞれ以下の役割を持っています。
主にクエリエリアで何を表示するかクエリを設定します。
それでは設定してみましょう。
クエリエリアの「Metric」で「Select metric」をクリックし、どのメトリックでデータを収集するか指定します。
今回は、アクティブなメモリの動きを見てみようと思います。
プレビューエリアの右上にある更新ボタンで、設定したクエリのプレビューを確認します。
これで表示が可能になったため、保存して確認してみます。 右上にある「Save」をクリックします。
Dashborad の名前などを設定する画面が表示されますので必要に応じて設定を行い「Save」をクリックします。
Dashborad が作成されました。
この様に Dashboardを自作することができますがこれを一から必要なものすべて作るのは大変です。
実は、Grafana では誰かが作って公開してくれている Dashboard をインポートする機能があります。
それを使えば使いやすい Dashboard がすぐに使えるということですので、早速試してみたいと思います。

Grafana の Dashboard のページ
https://grafana.com/grafana/dashboards/

ここで利用する Dashboard を探してIDかURLをコピーして使うか、JSONをダウンロードして使います。
今回は、Node Exporter Full を使うことにしました。
URLやID、JSONファイルは右下から利用可能です。
Grafana に戻り Dashbord の作成に入ります。
先ほどと同じように「NEW」をクリックしますが、そこで「Import」を選択します。
使用する Dashboard のURLかIDの入力または、JSONファイルをアップロードします。
ここではIDを読み込ませました。
「Prometheus」で登録してある Prometheus を選択します。
「Import」をクリックします。
おお・・・カッコイイ。
というわけで今回は、Prometheus の情報を可視化してくれる Grafana の構築と連携、Dashbord を使用した Prometheus のデーター可視化方法についてやってみました。
ではまた次回