仮想マシンの監視 (仮想化されたネットワーク機能の場合)

このセクションでは、通信オペレーターが仮想化ネットワーク関数 (VNF) ワークロードを監視するために使用できるオプションのツールについて説明します。 Azure Monitoring Agent (AMA) を使用すると、VM を実行している仮想マシン (VM) からログとパフォーマンス メトリックを収集できます。 AMA の前提条件の 1 つは、Azure への Arc 接続 (Azure Arc for Servers を使用) です。

マネージド ID 認証を使用した CLI での拡張機能のオンボード

CLI を使用して VM で監視エージェントを有効にする場合は、適切なバージョンの CLI がインストールされていることを確認します。

  • azure-cli: 2.39.0 以降
  • azure-cli-core: 2.39.0 以降
  • Resource-graph: 2.1.0 以降

Azure CLI 以降のドキュメントで、複数のオペレーティング システムにインストールする方法、および CLI 拡張機能をインストールする方法について説明します。

Arc 接続

Azure Arc 対応サーバーを使用すると、Operator Nexus などのオンプレミスクラウド環境など、Azure の外部でホストされている Linux 物理サーバーと仮想マシンを管理できます。 ハイブリッド マシンとは、Azure で実行されていないマシンです。 ハイブリッド マシンが Azure に接続されると、Azure のリソースとして扱われる、接続されたマシンになります。 接続されている各マシンにはリソース ID があり、それによってマシンをリソース グループに含めることができます。

前提条件

開始する前に、前提条件確認し、サブスクリプションとリソースが要件を満たしていることを確認してください。 前提条件の一部を次に示します。

  • VNF VM は CloudServicesNetwork (VM が Operator Nexus サービスとの通信に使用するネットワーク) に接続されています。
  • VNF VM への SSH アクセス権があります。
  • プロキシと wget のインストール:
    • wget がインストールされていることを確認します。
    • プロキシを環境変数として設定するには、次のコマンドを実行します。
echo "http\_proxy=http://169.254.0.11:3128" \>\> /etc/environment
echo "https\_proxy=http://169.254.0.11:3128" \>\> /etc/environment
  • スクリプトの実行、パッケージの依存関係のインストールなどを行うことができる VNF VM に対する適切なアクセス許可があります。詳細については、リンクを参照してください。
  • Azure Arc 対応サーバーを使用するには、次の Azure リソース プロバイダーをサブスクリプションに登録する必要があります。
    • Microsoft.HybridCompute
    • Microsoft.GuestConfiguration
    • Microsoft.HybridConnectivity

これらのリソース プロバイダーがまだ登録されていない場合は、次のコマンドを使用して登録できます。

az account set --subscription "{Your Subscription Name}"

az provider register --namespace 'Microsoft.HybridCompute'

az provider register --namespace 'Microsoft.GuestConfiguration'

az provider register --namespace 'Microsoft.HybridConnectivity'

展開

手動で一連の手順を実行することで、環境内のサーバーを Arc 接続できます。 VNF VM は、デプロイ スクリプトを使用して Azure に接続できます。 または、テンプレート スクリプトを実行して自動化されたメソッドを使用することもできます。 このスクリプトを使用して、エージェントのダウンロードとインストールを自動化できます。

この方法では、エージェントをインストールおよび構成するために、マシンに対する管理者権限が必要です。 Linux マシンでは、ルート アカウントを使用して、必要なエージェントをデプロイできます。

ダウンロードとインストールを自動化し、Azure Arc との接続を確立するスクリプトは、Azure portal から入手できます。 プロセスを完了するには、次の手順を実行します。

  1. お使いのブラウザーで Azure portal に移動します。

  2. [メソッドを選択してください] ページで、[単一のサーバーを追加] タイルを選択し、[スクリプトの生成] を選択します。

  3. [前提条件] ページで、[次へ] を選択します

  4. [リソースの詳細] ページで、次の情報を指定します。

  5. [サブスクリプション] ドロップダウン リストで、マシンを管理するサブスクリプションを選択します。

  6. [リソース グループ] ドロップダウンの一覧で、マシンを管理するリソース グループを選択します。

  7. [リージョン] ドロップダウンの一覧で、サーバーのメタデータを格納する Azure リージョンを選びます。

  8. [オペレーティング システム] ドロップダウン リストで、VNF VM のオペレーティング システムを選択します。

  9. コンピューターがプロキシ サーバー経由で通信してインターネットに接続する場合は、プロキシ サーバーの IP アドレスを指定します。 名前とポート番号を使用する場合は、その情報を指定します。

  10. タグを選択します。

  11. [タグ] ページで、提案されている既定の物理的な場所のタグを確認し、値を入力するか、カスタム タグを 1 つ以上指定して標準をサポートします。

  12. [Next:Download and run script](次: スクリプトをダウンロードして実行する) を選択します。

  13. [Download and run script]\(次: スクリプトをダウンロードして実行する\) ページで概要情報を確認し、[ダウンロード] を選択します。 引き続き変更が必要な場合は、[前へ] を選択します。

:

  1. エラーフラグの終了をスクリプトの上部に設定して、失敗が速く、最後に誤った成功が得られないようにします。 たとえば、シェル スクリプトでは、スクリプトの先頭に "set -e" を使用します。
  2. エクスポート http_proxy=<PROXY_URL> を追加し、https_proxy=<PROXY_URL> を Arc 接続スクリプトのエクスポート ステートメントと共にスクリプトにエクスポートします。 (プロキシ IP - 169.254.0.11:3128)。

サーバーに azcmagent デプロイするには、ルート アクセス権を持つアカウントを使用してサーバーにサインインします。 スクリプトをコピーしたフォルダーに移動し、./OnboardingScript.sh スクリプトを実行してサーバー上で実行します。

セットアップの完了後にエージェントが起動しない場合は、詳細なエラー情報のログを確認します。 ログ ディレクトリは /var/opt/azcmagent/log です。

エージェントをインストールし、Azure Arc 対応サーバーに接続するように構成した後、サーバーが Azure portal正常に接続されていることを確認します。

Screenshot of Sample Arc-Enrolled VM.

図: Arc 登録済み VM のサンプル

トラブルシューティング

注: スクリプトの実行中にエラーが発生した場合は、次の手順に進む前に、エラーを修正してスクリプトを再実行してください。

エラーの一般的な理由:

  1. VM に必要なアクセス許可がありません。
  2. wget パッケージが VM にインストールされていません。
  3. パッケージの依存関係のインストールに失敗した場合は、プロキシに必要な doメイン が許可された URL に追加されていないためです。 たとえば、Ubuntu では、apt が ".ubuntu.com" に到達できないため、依存関係のインストールに失敗します。 必要なエグレス エンドポイントをプロキシに追加します。

Azure Monitor エージェント

Azure Monitor エージェントは、Azure VM 拡張機能 ver Arc 接続マシンとして実装されます。 また、エージェントが収集するデータを定義するデータ収集ルールとの関連付けを作成するオプションも一覧表示されます。 Azure Monitor エージェントをインストール、アップグレード、またはアンインストールする場合、サーバーを再起動する必要はありません。

データ収集規則を使用して、ログとメトリックの収集を構成してください。

Screenshot of DCR adding source.

図: ソースを追加する DCR

注: DCR で構成されたメトリックは、Azure Monitor メトリックではまだサポートされていないため、宛先が Log Analytics ワークスペースに設定されている必要があります。

Screenshot of DCR adding destination.

図: DCR の宛先の追加

前提条件

Azure Monitor エージェントをインストールする前に、次の前提条件を満たす必要があります。

  • アクセス許可 : Azure portal を使用する以外の方法の場合、エージェントをインストールするには、次のロールの割り当てが必要です。
組み込みのロール スコープ 理由
仮想マシン共同作成者Azure Connected Machine リソース管理者 Azure Arc 対応サーバー エージェントをデプロイするため
アクション Microsoft.Resources/deployments/ を含む任意のロール* サブスクリプションおよび/またはリソース グループまたは/または Azure Resource Manager テンプレートをデプロイするには

Azure Monitoring Agent のインストール

仮想マシンが Arc に接続されたら、プロキシ情報を提供するために、"settings.json" という名前のローカル ファイルを Azure Cloud Shell から作成します。

Screenshot of Settings.json file.

図: settings.json ファイル

次のコマンドを使用して、これらの Azure Arc 対応サーバーに Azure Monitoring エージェントをインストールします。

az connectedmachine extension create --name AzureMonitorLinuxAgent --publisher Microsoft.Azure.Monitor --type AzureMonitorLinuxAgent --machine-name \<arc-server-name\> --resource-group \<resource-group-name\> --location \<arc-server-location\> --type-handler-version "1.21.1" --settings settings.json

Azure Monitor エージェントを使用して仮想マシンからデータを収集するには、次の手順を実行する必要があります。

  1. Azure Monitor エージェントが送信先に送信するデータを定義するデータ収集規則 (DCR) を作成します。

  2. データ収集規則を特定の仮想マシンに関連付けます。

ポータルを使用したデータ収集規則

DCR を作成して Log Analytics ワークスペース に関連付ける手順については、こちらをご覧ください

最後に、指定された Log Analytics ワークスペースでログが取得されているかどうかを確認します。

CLI を使用したデータ収集規則

これらの Virtual Machines からのログとメトリックの収集を有効にするために、DCR を作成して関連付けるコマンドを次に示します。

DCR の作成:

az monitor data-collection rule create --name \<name-for-dcr\> --resource-group \<resource-group-name\> --location \<location-for-dcr\> --rule-file \<rules-file\> [--description] [--tags]

rules-file の例:

Screenshot of Sample DCR rule file.

DCR の関連付け:

az monitor data-collection rule association create --name \<name-for-dcr-association\> --resource \<connected-machine-resource-id\> --rule-id \<dcr-resource-id\> [--description]

その他のリソース