🎼

Azure Monitor managed service for Prometheus を試してみた

2023/09/07に公開

Azure では、マネージドサービスで Prometheus および Grafana を利用することができます。

今回、ちょっと触ってみました。ようやく重い腰を上げました😅

やってみた

AKS クラスターとの接続も簡単に行うことができます。AKS クラスターの新規作成時に Managed Prometheus 等と接続した状態で作成することもできますが、AKS クラスター自体は既存のものがあったので、それを接続してみることにしました。

Container Insights の利用など、いくつか手段はありますが、今回は「Container Insights を使用せずに AKS クラスターから Prometheus メトリックを収集する」方向で実施してみました。

Azure Monitor ワークスペースの作成

まず、下記の手順に従って Azure Monitor ワークスペースを作成します。

設定箇所は少ないので、特に迷うことは無いかなぁと思います。

AKS クラスターと Azure Monitor ワークスペースの接続

Azure Portal からは、下記の手順で実施することができます。AKS クラスターを選んで「構成」ボタンをポチっとするだけ。楽ですね~。今回は Grafana も有効にしてみました。

参考までに、Azure Managed Grafana のドキュメントはこちらです。

動作確認

デプロイ処理が完了したら、Grafana のダッシュボードを見てみます。Grafana のダッシュボードでクラスターの情報が見られれば、Managed Prometheus に AKS クラスターが情報を送付できているということと同義かなと。

Grafana のダッシュボードは、Managed Grafana リソースの概要画面の「エンドポイント」からアクセスすることができます。

もし、Azure AD アカウントを利用していない場合 (Microsoft Account の場合) は、ユーザーがいないというエラーが発生します。

Managed Grafana では Microsoft アカウントがサポートされません。 Azure AD アカウントを使用してサインインしてください。

この場合は、改めて Grafana 用の Azure AD アカウントを作成し、Grafana 関連のロール (Grafana 閲覧者など) を付与する必要があります。手順については、下記を参照してくださいませ。

無事接続できると、下記のような画面になると思います。

既定では特にダッシュボードは作成されていないようですので、ハンバーガーメニューから「Dashboards」をクリックします。

「Managed Prometheus」という項目があるので、今回は「Kubernetes Compute Resources / Pod」を選択してみました。フィルタの namespace で「kube-system」を選択。少し下にいくと…ちゃんと取得できてそうですね!

まとめ

ということで、無事、AKS クラスターを Azure Managed な Prometheus / Grafana で監視することができました。

ちなみに、これらの構成を事前に行ったものを Bicep で実施する記事が Microsoft Blog にて公開されましたので、合わせて紹介しておきます。

Datadog などのサードパーティソリューションを除けば、コンテナ基盤の監視ではデファクトスタンダートになっている感はありますので、しっかりと触っていきたいですね!

Discussion