Résolution des problèmes de gestion des machines virtuelles Azure Arc

S’applique à : Azure Stack HCI, version 23H2

Cet article fournit des conseils sur la collecte des journaux et la résolution des problèmes liés aux machines virtuelles Azure Arc dans votre cluster Azure Stack HCI. Il répertorie également les limitations et les problèmes connus qui existent actuellement avec la gestion des machines virtuelles Azure Arc.

Résoudre les problèmes liés aux machines virtuelles Azure Arc

Cette section décrit les erreurs liées à la gestion des machines virtuelles Azure Arc et à leurs résolutions recommandées.

Échec lors de la tentative d’activation de la gestion des invités

Lorsque vous essayez d’exécuter la commande pour activer la gestion des invités, vous voyez l’erreur suivante :

Erreur : Deployment failed. Correlation ID: aaaa0000-bb11-2222-33cc-444444dddddd. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration

Cet échec est dû au fait que l’identité managée n’a pas été créée pour cette machine virtuelle. L’identité managée affectée par le système est nécessaire pour activer la gestion des invités.

Résolution :

Suivez ces étapes pour vérifier que l’identité managée n’est pas créée pour cette machine virtuelle, puis activez l’identité managée affectée par le système.

  1. Dans la Portail Azure, accédez à la machine virtuelle. Accédez à la page Vue d’ensemble. Sous l’onglet Propriétés , sous Configuration, la gestion des invités doit s’afficher comme désactivée. Sélectionnez l’affichage JSON dans le coin supérieur droit.

    Capture d’écran montrant comment accéder à la vue JSON.

  2. Sous Identity paramètre, la type valeur doit s’afficher sous None.

    Capture d’écran de la vue JSON indiquant que l’identité managée est absente.

  3. Pour créer une identité managée, connectez-vous au serveur Azure Stack HCI via RDP. Exécutez la commande suivante :

    az extension add --name connectedmachine
    
  4. Vérifiez que l’extension CLI de l’ordinateur connecté est installée sur le cluster. Voici un exemple de sortie avec l’extension correctement installée. Indique connectedmachine que la version 0.7.0 est installée.

    [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. Exécutez la commande suivante pour affecter une identité managée système à la machine virtuelle.

    az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
    
  6. Accédez au Portail Azure et accédez à la page Vue d’ensemble. La vue JSON doit indiquer que l’identité managée système est maintenant affectée à la machine virtuelle.

    Capture d’écran de la vue JSON lorsque l’identité managée est activée.

Échec du déploiement d’une image de machine virtuelle à partir d’un compte de stockage

Vous voyez l’erreur suivante lors de la tentative de déploiement d’une image de machine virtuelle à partir d’un compte de stockage sur votre cluster Azure Stack HCI :

Erreur : {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n"}

Vous voyez également cette erreur :

Erreur : {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n"}

L’échec se produit parce que l’utilisateur qui crée l’image n’a pas les autorisations appropriées pour accéder à l’image à partir du compte de stockage. L’utilisateur doit avoir le rôle Contributeur aux données Blob de stockage sur le compte de stockage que vous utilisez pour l’image. Pour plus d’informations, consultez Affecter des rôles Azure pour accéder aux données d’objet blob.

Résolution :

Ajoutez le rôle Contributeur aux données blob de stockage à l’utilisateur qui doit créer une image à partir de ce compte de stockage. Une fois le rôle ajouté, réessayez de déployer l’image.

Vous pouvez également voir l’erreur suivante lors de la tentative de déploiement d’une image de machine virtuelle à partir d’un compte de stockage :

Erreur : {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","additionalInfo":[{"type":"ErrorInfo","info":{"category":"Uncategorized","recommendedAction":"","troubleshootingURL":""}}]}

Cet échec est dû au fait que le type d’objet blob n’est pas correct dans le compte de stockage. L’image doit être de page blob type.

Résolution :

Chargez l’image dans votre compte page blob format de stockage et réessayez de déployer l’image.

Vérifiez que l’utilisateur dispose des autorisations appropriées et que l’objet blob est au format correct. Pour plus d’informations, consultez Ajouter une image de machine virtuelle à partir de Stockage Azure compte.

Échec du déploiement d’une machine virtuelle Arc

Vous voyez l’erreur suivante lors de la tentative de déploiement d’une machine virtuelle Arc sur votre cluster Azure Stack HCI :

Erreur : {"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."}

Cet échec est dû au fait que l’objet SystemAssigned d’identité managée n’est pas sous le Microsoft.HybridCompute/machines type de ressource.

Résolution :

Vérifiez dans votre modèle de déploiement que :

L’objet SystemAssigned d’identité managée est sous Microsoft.HybridCompute/machines le type de ressource et non sous Microsoft.AzureStackHCI/VirtualMachineInstances le type de ressource.

Le modèle de déploiement doit correspondre à l’exemple de modèle fourni. Pour plus d’informations, consultez l’exemple de modèle dans Créer des machines virtuelles Arc sur Azure Stack HCI.

Échec de suppression du chemin de stockage

Lorsque vous essayez de supprimer un chemin de stockage sur votre cluster Azure Stack HCI, une erreur similaire au message suivant peut s’afficher. Les numéros de ressources et les versions peuvent varier dans votre scénario.

Erreur : "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,

Résolution :

Les images répertoriées dans le message d’erreur diffèrent des charges de travail classiques, qui sont représentées en tant qu’objets Azure Resource Manager (ARM) sur le Portail Azure et l’interface CLI. Cette erreur se produit parce que ces images sont directement téléchargées sur le système de fichiers, qu’Azure n’a pas pu reconnaître.

Suivez ces étapes avant d’essayer de supprimer un chemin d’accès de stockage :

  1. Supprimez les charges de travail associées et les images présentes sur le chemin de stockage que vous souhaitez supprimer. Recherchez les préfixes suivants sur les noms d’image : linux-cblmariner, , windows-windows2019windows_k8swindows-windows2022, , aks-image-merged, . linux-K8s
  2. Déposez un ticket de support dans le Portail Azure.

L’installation d’Azure CLI n’est pas reconnue

Si votre environnement ne parvient pas à reconnaître Azure CLI après l’avoir installé, exécutez le bloc de code suivant pour ajouter le chemin d’installation d’Azure CLI au chemin d’accès de l’environnement.

        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"
        }

Étapes suivantes