次の方法で共有


Azure Arc VM 管理のトラブルシューティング

適用対象: Azure Stack HCI バージョン 23H2

この記事では、Azure Stack HCI クラスターでログを収集し、Azure Arc 仮想マシン (VM) に関する問題のトラブルシューティングを行う方法について説明します。 また、Azure Arc VM 管理に現在存在する制限事項と既知の問題の一覧も示します。

ログの収集

ログを収集して、Azure Stack HCI システムの Arc VM に関する問題を特定してトラブルシューティングできます。 Microsoft サポートに連絡して追加のヘルプを受ける前に、これらのログを使用して重要な情報を収集します。

ログ収集用の最新の PowerShell モジュールがあることを確認します。 PowerShell モジュールを更新するには、次のコマンドを実行します。

#Update the PowerShell module
Install-Module -Name ArcHci -Force -Confirm:$false -SkipPublisherCheck -AcceptLicense

Azure Stack HCI クラスター内の Arc VM のログを収集するには、次のコマンドを実行します。

$csv_path="<input-from-admin>"
$VMIP_1="<input-from-admin>"
az login --use-device-code
Get-ArcHCILogs -workDirectory $csv_path\ResourceBridge -kvaTokenPath $csv_path\ResourceBridge\kvatoken.tok -ip $VMIP_1

ここで:

  • $csv_path は、Arc Resource Bridge を作成するために提供されるクラスター共有ボリュームの完全なパスです。

  • $VMIP_1 は、Arc リソース ブリッジ VM の IP アドレスです。

  • 必要に応じて、 -logDir パラメーターを設定して、生成されたログが格納されるディレクトリへのパスを指定します。 パスまたはパラメーターを指定しない場合、既定では、ログは現在の作業ディレクトリに格納されます。

Azure Arc VM のトラブルシューティング

このセクションでは、Azure Arc VM の管理に関連するエラーと、推奨される解決策について説明します。

ゲスト管理を有効にしようとしたときに失敗する

コマンドを実行してゲスト管理を有効にしようとすると、次のエラーが表示されます。

エラー: Deployment failed. Correlation ID: 5d0c4921-78e0-4493-af16-dffee5cbf9d8. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration

上記のエラーは、この VM に対してマネージド ID が作成されなかったためです。 ゲスト管理を有効にするには、システム割り当てマネージド ID が必要です。

解決策:

この VM に対してマネージド ID が作成されていないことを確認し、システム割り当てマネージド ID を有効にするには、次の手順に従います。

  1. Azure portal で VM に移動します。 Overview ページに移動します。 Properties タブの Configuration で、Guest 管理Disabled として表示されます。 右上隅から JSON ビュー を選択します。

    JSON ビューにアクセスする方法のスクリーンショット。

  2. パラメーター IdentitytypeNoneとして表示されます。

    マネージド ID が存在しない場合を示す JSON ビューのスクリーンショット。

  3. マネージド ID を作成するには、RDP 経由で Azure Stack HCI サーバーに接続します。 次のコマンドを実行します。

    az extension add --name connectedmachine
    
  4. 接続されたマシン CLI 拡張機能がクラスターにインストールされていることを確認します。 拡張機能が正常にインストールされたサンプル出力を次に示します。 connectedmachineは、バージョン 0.7.0 がインストールされていることを示します。

    [v-hostl]: PS C:\Clusterstorage\lnfrastructure_l\ArcHci> az version
    {
    "azure-cli": "2.53.0",
    "azure-cli-core": "2.53.0",
    "azure-cli-telemetry": "1.1.0",
    "extensions": {
        "akshybrid": "0.1.1",
        "arcappliance"^ "1.0.2",
        "connectedk8s": "1.5.4",
        "connectedmachine": "0.7.0",
        "customlocation": "0.1.3",
        "hybridaks": "0.2.4",
        "k8s-extension": "1.4.5",
        "stack-hci-vm": "0.1.8"
        }
    }
    [v-hostl]: PS C:\ClusterStorage\Infrastructure_l\ArcHci>
        ```
    
  5. 次のコマンドを実行して、システム マネージド ID を VM に割り当てます。

    az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
    
  6. Azure portal に移動し、 Overview ページを参照します。 JSON ビューは、システム マネージド ID が VM に割り当てられていることを示す必要があります。

    マネージド ID が有効になっている場合の JSON ビューのスクリーンショット。

Arc VM のデプロイに失敗しました

Azure Stack HCI クラスターに Arc VM をデプロイしようとすると、次のエラーが表示されます。

エラー: {"code":"ConflictingOperation","message":"Unable to process request 'Microsoft.AzureStackHCI/virtualMachineInstances'. There is already a previous running operation for resource '/subscriptions/<subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/<VM name>/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default'. Please wait for the previous operation to complete."}

上記のエラーは、 SystemAssigned マネージド ID オブジェクトが Microsoft.HybridCompute/machines リソースの種類の下にないためです。

解決策:

デプロイ テンプレートで次のことを確認します。

SystemAssignedマネージド ID オブジェクトは、リソースの種類ではなく、Microsoft.HybridCompute/machinesリソースの種類Microsoft.AzureStackHCI/VirtualMachineInstances下にあります。

デプロイ テンプレートは、指定されたサンプル テンプレートと一致している必要があります。 詳細については、「 Azure Stack HCI 上の Arc 仮想マシンを作成するのサンプル テンプレートを参照してください。

ストレージ パスの削除に失敗しました

Azure Stack HCI クラスター上のストレージ パスを削除しようとすると、次のメッセージのようなエラーが表示されることがあります。 リソース番号とバージョンは、シナリオによって異なる場合があります。

エラー: "errorMessage" serviceClient returned an error during deletion: The storage container service returned an error during deletion: rpc error: code = Unknown desc = Container is in ACTIVE use by Resources [6:
- linux-cblmariner-0.2.0.10503
- windows-windows2019-0.2.0.10503
- windows-windows2022-0.2.0.10503
].
Remove all the Resources from this container, before trying to delete: In Use: Failed,

解決策:

エラー メッセージに示されているイメージは、Azure portal と CLI で Azure Resource Manager (ARM) オブジェクトとして表される一般的なワークロードとは異なります。 このエラーは、これらのイメージがファイル システムに直接ダウンロードされ、Azure で認識できなかったために発生します。

ストレージ パスを削除する前に、次の手順に従います。

  1. 関連付けられているワークロードと、削除するストレージ パスに存在するイメージを削除します。 イメージ名で、 linux-cblmarinerwindows-windows2019windows-windows2022windows_k8saks-image-mergedlinux-K8sのプレフィックスを探します。
  2. Azure portal で サポート チケットを提出

Azure CLI のインストールが認識されない

インストール後に環境が Azure CLI を認識できない場合は、次のコード ブロックを実行して、Azure CLI のインストール パスを環境パスに追加します。

        if ( -not( $env:PATH -like '*C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin*') ) {
            $env:PATH += "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;"
            Write-Host "Updated path $env:PATH"
        }

次のステップ