仮想マシンの状況を監視!Azure Monitor for VMsを試してみた

 

はじめ
今期から本格的にAzureのプリセールス担当になった小笠原です。3月にAzureの仮想マシン用監視機能(Azure Monitor for VMs)が一般公開になりました。この機能を知っておくと仮想マシンの詳細なパフォーマンスがPortalで確認できるためご紹介していきたいと思います。


 

1.Azure Monitorとは

Azureで構築したクラウドとオンプレミスに関わる情報を収集する様々なサービス・機能がAzureには存在しています。それを統合して1つの監視ツールとしたのがAzure Monitorです。複数のツールで構成され、仮想マシンをはじめとしたインフラ、アプリケーション、ネットワークの状況を監視し、問題点の発見や現状の改善に役立ちます。

1-1 メトリックとログ

Azure で収集される情報は大きく2種類に分類することができます。

メトリック
特定の時点におけるシステムの状況を表す数値で、定期的に収集されます。これらは頻繁にサンプリングでき、パフォーマンスの表示や比較的単純なロジックですばやくアラートを生成できるため、アラートを発行するときに役立ちます。

 

ログ

ログはメトリックより詳細で説明付きのテキストデータが含まれます。 メトリックと大きな違いはその構造とデータが定期的に収集されないことです。 ログによって収集されたデータはLog Analyticsワークスペースに格納されます。Log Analyticsと組み合わせて分析を行えるので、管理ソリューションを利用する際に役立ちます。

比較

こちらはメトリックとログの主な違いについての比較となります。

メトリックとログそれぞれの活用方法はMicrosoft Docsでも詳しい紹介があります。

https://docs.microsoft.com/ja-jp/azure/azure-monitor/platform/data-platform

1-2 一般公開機能

Azure Monitorでは現在以下の6種類の重要な機能があります。

アプリケーション、仮想マシン、コンテナーの3種類が一般公開されています。今回は一般公開されている3種類を紹介します。

 

アプリケーション(Application Insights)

Webアプリケーションに特化した監視モニターです。実行中のアプリケーションを監視することができます。 パフォーマンスの異常を自動的に検出し、組み込まれている分析ツールを使用して、問題を診断し、ユーザーがアプリから実行している操作を把握できます。

仮想マシン(Azure Monitor for VMs)

仮想マシンやネットワーク状態の監視モニターです。Azure上のWindows やLinuxの仮想マシンのパフォーマンスだけでなく、オンプレミスやクラウドの大規模な監視が可能です。パフォーマンスと可用性を予測する機能から障害の早期発見や障害が仮想マシン以外のオンプレミスや他のクラウドサービスに関係しているかどうかの確認も行うことができます。

コンテナー(Azure Monitor for Containers)

コンテナー化したアプリケーションの監視モニターです。コンテナーの監視は、複数のアプリケーションを含む大規模な運用クラスターを実行するときに利用します。KubernetesからメトリックスAPI経由でメモリやメトリックを収集することにより、パフォーマンスを把握できます。

 

※今回の記事ではこの中の仮想マシン用モニター(Azure Monitor for VMs)のみで利用手順を紹介しています。

1-3 Azure Portalでの確認方法

PortalからのAzure Monitorは検索することで表示することが可能です。
Portalの[検索欄]にて[モニター]と検索し、表示された[モニター]をクリックします。

次のような形で監視サービス・機能の窓口となっている状態が確認できます。

より詳しいAzure Monitorの使い方におきましてはMicrosoft Docsより確認も可能です。
https://docs.microsoft.com/ja-jp/azure/azure-monitor/overview

 

 

2.Azure Monitor for VMs利用手順

それでは、仮想マシンの左メニューの監視項目から利用手順について紹介していきます。
最初に仮想マシンの[分析情報]をクリックし、[有効]をクリックします。

有効化が完了すると[パフォーマンス]と[マップ]の項目が表示されます。


[パフォーマンス]

こちらではディスクやCPU、メモリなどの情報が確認可能です。

 

[マップ]

こちらでは仮想マシンの公開ポートやほかのリソースとの関連性の可視化やプロパティなど仮想マシン性能の確認がマップ式で可能です。また、右端にある[ログイベント]項目をクリックいただくとLog Analyticsの利用も可能です。

次に[パフォーマンス]と[マップ]の上に表示される[リソースグループの監視]、[Azure Monitor]、[診断の実行]についてもご紹介していきます。

[リソースグループの監視]

こちらでは先ほどの仮想マシンが含まれているリソースグループの状況が確認できます。リソースの合計数やアクティブな警告の数が可視化され、リソース項目を開くとそれぞれのリソースが表示されます。クリックすることでストレージや仮想マシンなどの概要を確認することが可能となっています。

[Azure Monitor]

こちらではAzure Monitor側に移動しサブスクリプションを選択してリソースグループやリソース単位での[パフォーマンス]や[Map]を表示できます。ワークスペースの構成やオンボードオプションを設定することも可能です。

こちらの[パフォーマンス]では対象のリソースすべての状況が可視化されています。ここでは2台の仮想マシンの状態を表示しています。

[マップ]においても2台の関連性を表示したため先ほどの1台の時より公開ポートの数が増加している様子が[マップ]で確認できます。

[診断の実行]

こちらは現在プレビューではありますが、Performance Diagnostics拡張機能をインストールすることで利用が可能です。WindowsまたはLinux仮想マシンに影響を与える可能性のあるパフォーマンスの問題を解決することができます。

[レポート]

今回のレポートではテスト用の仮想マシンで行ったため問題が検出されていませんが、日常的な仮想マシンではパフォーマンス状態の影響度や推奨事項が検出されます。問題とベストプラクティスや、パフォーマンス低下、CPU、ディスク空間、メモリの高使用率を伴う複雑な問題がすぐに確認可能です。

3.Azure Monitorの費用

最後にAzure Monitorでは利用方法により発生する費用が異なります。実際にデータの取り込みを行うときやデータの保持、カスタムの際に課金が発生するので料金を一部ご紹介したいと思います。

3-1 メトリックとログの基本費用

メトリック

カスタム時のデータ量とクエリでの呼び出しに対して課金されます。

Freeの標準メトリックの一覧についてはこちらをご確認ください。
https://docs.microsoft.com/ja-jp/azure/azure-monitor/platform/metrics-supported

ログ

データ取り込みとデータ保持に対してデータ量で課金されていきます。容量をあらかじめ予約して使用する容量予約形式の利用も可能です。

その他の詳細費用はMicrosoftの価格一覧に記載があるためご確認ください。

https://azure.microsoft.com/ja-jp/pricing/details/monitor/

 

終わりに

Azure Monitor for VMsを用いることで仮想マシンのコストや問題を的確に分析して対応が行えることが分かりました。Azure Monitorは仮想マシン用だけでなくほかにも5種類の重要機能がありますので、1つ1つ理解していくことでより適切なAzureの監視と問題解決が行えるようになります。ほかの機能についても機会があればぜひお試しください。

この記事を書いた人

小笠原寛太
小笠原寛太
令和入社のAzureエンジニア兼ハンズオントレーナー。インフラとセキュリティ、AIサービスを中心にAzure最新情報を発信しています。トレーナーとして一人一人に最適な技術レクチャーも実施していますので、Azureの使い方でお困りの際は是非ご相談ください