VM insights(分析情報)の設定/表示/確認をAzure VMでやってみた

Azure,Log Analytics,Monitor,Virtual Machine

Azure VM Insights(分析情報)を使うとAzure VM(仮想マシン)等のリソース情報や接続に関するデータを取得出来ます。
取得されたデータはLog Analyticsワークスペースでログとして集積されます。
収集されたログはLog Analyticsでクエリ検索して利用する事も出来ます。

VM insights(分析情報)の設定からLog AnalyticsでのKQLを利用したログクエリ検索までの手順を纏めてみました。

スポンサーリンク

VM insights(分析情報)って何?

概要

Azure Portalを日本語表記にした場合は分析情報と表示されます。
Azure VMを中心とした仮想マシンの情報を収集、表示する機能になります。

Azure VM(仮想マシン)やAzure VMSS(仮想マシンスケールセット)が対象になります。
エージェントを導入する事でオンプレ機器や他パブリッククラウドの仮想マシンも対象にすることが出来ます。

VM insightsのデータはログとしてLog Analyticsワークスペースで収集されます。
Log Analyticsで検索利用する事が出来ます。
Azure Monitorのアラートルールにも利用する事が出来ます。

収集されるデータ

VM insightsを使うと様々なデータを収集する事が出来ます。

    • VM insightsで収集されるデータ
      • パフォーマンス
        • CPU使用率、メモリ使用率、ディスク使用率などのリソース情報
      • マップ
        • Azure VMと外部との接続情報をグラフィカルに表示
          • Properties:Azure VMの情報(サイズやIP等)、OSのバージョン情報
          • Log Events:Log Analyticsワークスペースへ出力されたログ件数
          • Alerts:Azure Monitorで検出されたアラート件数
          • Connections:接続に関する情報
          • Changes:Azure VM(仮想マシン)リソースの変更情報

一方でVM insightsではOSのSyslogやイベントログは収集されません。
別途Log AnalyticsワークスペースとAzure VM(仮想マシン)を接続する設定が必要になります。

※Azure VMSS(仮想マシンスケールセット)などでも同様の情報が確認出来ます。

VM insights(分析情報)の設定

VM insights(分析情報)の有効化とデータ収集ルール設定

VM insightsを設定します。
転送先のLog Analyticsワークスペースや転送内容はログ収集ルールで設定します。

※VM insightsのサポートOS状況はこちらを参照ください。
※画面サンプルやエージェントはLinux OSの場合の例になります。

VM insights(分析情報)設定

仮想マシンの分析情報がVM insightsに対応します。分析情報で有効を選択します。

監視の構成画面です。
データ収集ルールでLog Analyticsワークスペース、収集内容を設定出来ます。
設定変更は新規作成でデータ収集ルールを作成します。

データ収集ルール名を設定します。
マップでプロセス情報を取得する場合は、プロセスと依存関係を有効にするにチェックを入れます。

今回Log Analyticsワークスペースは事前に作成していたものを指定しています。

※作成したデータ収集ルールは他のAzure VM(仮想マシン)でも利用可能です。

Azure VM(仮想マシン)へインストールするエージェントを選択します。
構成を選択するとVM Inshightの設定が開始します。

※エージェントのインストールは、Azure VM(仮想マシン)を起動しておく必要があります。
※インストールされるエージェントの詳細はこちらを参照ください。

Azure VM(仮想マシン)へのンストールが終わると拡張機能にエージェントが表示されます。

  • AzureMonitorLinuxAgent
  • DependencyAgentLinux

Dependency Agentはマップ作成の為にインストールされます。(詳細はリンク先を確認願います。)

Azure VM(仮想マシン)のメニューで確認

仮想マシンで分析情報を選択するとパフォーマンスデータが収集されている事が分かります。
設定してから表示されるまで数10分かかります。

VM insights設定後の確認
パフォーマンス情報が収集されている事が確認出来ます。

マップで各プロセスの接続情報が確認出来ます。

※マップが表示されない場合は、Azure VM(仮想マシン)の拡張機能でDependencyAgentLinuxが入っているかを確認します。入ってない場合はVM Insightsを再設定します。

Log Analyticsワークスペースで確認

Log AnalyticsワークスペースでもVM insights(分析情報)の収集状況が確認出来ます。

VM insights設定後の確認

分析情報を選択すると接続されているAzure VM(仮想マシン)の一覧が表示されます。

最後のハートビート取得までの時間が表示されます。Azure VM(仮想マシン)とLog Analyticsワークスペース接続が正常か確認出来ます。

Log AnalyticsワークスペースでVMinsightsで収集されたログが確認出来ます。

VM insights(分析情報)で収集されるデータを確認

Azure VM(仮想マシン)の場合、VM Insightsで取得されたログはこちらのメニューから確認が出来ます。

      • Azure VM(仮想マシン)のVM Insights(分析情報)
      • Azure Monitorの分析情報のAzure VM(仮想マシン)
      • VM Insights取得先として指定したLog Analyticsワークスペース

※Log Analyticsワークスペースの場合は直接ログ検索を行う形になります。
※今回はAzure VM(仮想マシン)の例になります。

Azure VM(仮想マシン)で確認

Azure VM(仮想マシン)のリソースメニューでVM insights(分析情報)を選択し確認してみます。

項目 説明  
パフォーマンス Azure VM(仮想マシン)のリソース情報を表示します。
CPU使用率、メモリ利用量、ディスク使用率、ネットワークトラフィック量等が確認出来ます。
Map サーバー間のアクティブなネットワーク接続がグラフィカルに表示されます。
接続先、ポート番号、プロセスの情報などが確認出来ます。
Properties

対象Azure VM(仮想マシン)自体の情報を表示します。
OSのバージョン情報、Azure VMのサイズ等のプロパティ、IPアドレス情報などを表示します。 

  • 主な表示項目
    •  Health
      • リソース正常性
    • Machine Properties
      • Default IPv4 Gateway、DNS名、CPUクロックやメモリサイズ
    • Azure VM Properties
      • リソースグループ、Location、マシンサイズ、OSイメージ情報

Log Events Azure VM(仮想マシン)からLog Analyticsワークスペースに送信されたログ情報の一覧を表示します。

EVENT TYPEを選択するとLog Analyticsワークスペースでクエリが実行されます。
クエリの実行結果が表示され、ログの内容が確認出来ます。

Alerts

現在のAzure VM(仮想マシン)のアラートが表示されます。
アラートルールでターゲットリソースとして対象のAzure VM(仮想マシン)を指定したものが対象として表示されます。

Investigate Alertsを選択するとすべてのアラート画面に遷移しアラート内容を確認出来ます。

Connections Azure VM(仮想マシン)接続に関する情報が表示されます。接続状況などが確認出来ます。
Connection detailsを選択するとConnections Overviewが表示されます。
Connections Overviewでは応答速度やデータ転送、受信量などが確認出来ます。
Changes

Azure VMのリソースに対する変更があった場合に表示されます。
リソースに対する変更はOSのバージョンや拡張機能のバージョンアップなどが対象になります。詳細はデータ ソースを参照願います。

変更分析機能の詳細はこちらを参照願います。

Azure Monitor で変更分析を使用する

※OS内のモジュールアップデートなどは対象となっていません。

Azure Monitorで確認

Azure Monitorの分析情報になる仮想マシンのリソースメニューで確認出来ます。
Azure VM(仮想マシン)と同じくパフォーマンスとマップを確認出来ます。
同じLog Analyticsワークスペースに接続されたAzure VM(仮想マシン)の情報が確認出来ます。

※VM Insightsで接続されているLog Analyticsワークスペースが同じ必要があります。

項目 説明  
パフォーマンス Azure VM(仮想マシン)の場合と同様にのリソース情報が確認出来ます。
Map Azure VM(仮想マシン)の場合と同様にの接続情報が確認出来ます。

Log Analyticsで確認

Log AnalyticsでVM insights(分析情報)で収集されたログを検索して確認出来ます。
ログはKQLクエリを使って検索出来ます。

項目 説明  
InsightsMetrics

パフォーマンスに関するログが収集されています。
CPU使用率、メモリ利用量、ディスク使用率、ネットワークトラフィック量等のログが確認出来ます。

VMBoundPort 監視対象Azure VM(仮想マシン)のポートやトラフィック情報が確認出来ます。
VMComputer

Azure VM(仮想マシン)の情報が確認出来ます。OSのバージョン詳細、OSイメージ、マシンサイズ等が確認出来ます。

VMConnection Azure VM(仮想マシン)のトラフィックに関する情報が確認出来ます。
VMProcess サーバが外部と通信しているプロセス情報が確認出来ます。

分析情報(Azure VM Insights)を使った監視も出来ます。
ネットワーク接続情報(VMConnection)を使った監視について纏めています。

Log Analyticsでの検索

Log Analyticsでの検索についてはこちらで纏めています。

クライアントIPからロケーション情報を取得する事が出来ます。
アプリケーションゲートウェイのアクセスログの例にはなりますが手順についてはこちらに纏めています。

最後に

VM Insights(分析情報)について纏めてみました。
設定する事によりパフォーマンス情報や接続に関する情報を取得出来る事が分かりました。
Log Analyticsワークスペースを利用しているのでクエリによる検索も出来てとても便利でした。
今回は実施していませんが、Azure Monitorのアラートルールなどにも利用できます。
プロセス監視(外部と通信するものに限られますが)等にも使えそうです。

今後も色々試してみたいと思います。

Log AnalyticsワークスペースへのWindows Serverのイベントログ収集手順ついてはこちらに纏めています。

スポンサーリンク