Installer les agents Arc à grande échelle pour vos machines virtuelles VMware

Dans cet article, vous allez apprendre à installer des agents Arc à grande échelle pour les machines virtuelles VMware et à utiliser les fonctionnalités de gestion Azure.

Prérequis

Vérifiez les éléments suivants avant d’installer des agents Arc à grande échelle pour les machines virtuelles VMware :

  • Le pont de ressources doit être dans un état d’exécution.

  • Le vCenter doit être à l’état connecté.

  • Le compte d’utilisateur doit disposer d’autorisations répertoriées dans le rôle Administrateur Azure Arc VMware.

  • Toutes les machines cibles sont :

    • Activées et le pont de ressources dispose d’une connectivité réseau à l’hôte exécutant la machine virtuelle.
    • Exécutent un système d’exploitation pris en charge.
    • Les outils VMware sont installés sur les machines. Si les outils VMware ne sont pas installés, l’opération de gestion des invités est grisée dans le portail.

      Remarque

      Vous pouvez utiliser la méthode hors bande pour installer des agents Arc si les outils VMware ne sont pas installés.

    • A la possibilité de se connecter via le pare-feu pour communiquer sur Internet et ces URL ne sont pas bloquées.

    Remarque

    Si vous utilisez une machine virtuelle Linux, le compte ne doit pas demander de connexion sur les commandes sudo. Pour remplacer l’invite, à partir d’un terminal, exécutez sudo visudoet ajoutez <username> ALL=(ALL) NOPASSWD:ALL à la fin du fichier. Veillez à remplacer <username>.

    Si ces modifications sont incorporées à votre modèle de machine virtuelle, vous n’avez pas besoin de le faire pour la machine virtuelle créée à partir de ce modèle.

Approche A : Installer des agents Arc à grande échelle à partir du portail

Un administrateur peut installer des agents pour plusieurs machines à partir du portail Azure si les machines partagent les mêmes informations d’identification administrateur.

  1. Accédez au Centre Azure Arc, puis sélectionnez Ressource vCenter.

  2. Sélectionnez toutes les machines et choisissez l’option Activer dans Azure.

  3. Activez la case à cocher Activer la gestion des invités pour installer des agents Arc sur la machine sélectionnée.

  4. Si vous souhaitez connecter l’agent Arc via proxy, fournissez les détails du serveur proxy.

  5. Si vous souhaitez connecter l’agent Arc via un point de terminaison privé, suivez ces étapes pour configurer une liaison privée Azure.

    Remarque

    La connectivité des points de terminaison privés est uniquement disponible pour les communications entre l’agent Arc et Azure. La liaison privée Azure n’est pas prise en charge pour la connectivité entre le pont de ressources Arc et Azure.

  6. Fournissez le nom d’utilisateur et le mot de passe de l’administrateur de la machine.

Remarque

Pour les machines virtuelles Windows, le compte doit faire partie du groupe d’administrateurs locaux, tandis que pour les machines virtuelles Linux, il doit s’agir d’un compte racine.

Approche B : Installer des agents Arc à l’aide de commandes AzCLI

Les commandes Azure CLI suivantes peuvent être utilisées pour installer des agents Arc.

az connectedvmware vm guest-agent enable --password 

                                         --resource-group 

                                         --username 

                                         --vm-name 

                                         [--https-proxy] 

                                         [--no-wait]

Approche C : Installer des agents Arc à grande échelle à l’aide d’un script d’assistance

L’installation de l’agent Arc peut être automatisée à l’aide d’un script d’assistance créé avec la commande AzCLI fournie ici. Téléchargez ce script d’assistance pour activer des machines virtuelles et installer des agents Arc à grande échelle. Dans un déploiement ARM unique, le script d’assistance peut activer et installer des agents Arc sur 200 machines virtuelles.

Fonctionnalités du script

  • Crée un fichier journal (vmware-batch.log) pour le suivi de ses opérations.

  • Génère une liste de liens du portail Azure vers tous les déploiements créés (all-deployments-<timestamp>.txt).

  • Crée des fichiers de déploiement ARM (vmw-dep-<timestamp>-<batch>.json).

  • Peut activer jusqu’à 200 machines virtuelles dans un déploiement ARM unique si la gestion des invités est activée (sinon, active 400 machines virtuelles).

  • Prend en charge l’exécution en tant que travail cron pour activer toutes les machines virtuelles dans un vCenter.

  • Autorise l’authentification du principal de service auprès d’Azure pour l’automatisation.

Avant d’exécuter ce script, installez az cli et l’extension connectedvmware.

Prérequis

Avant d’exécuter ce script, installez :

  • Azure CLI à partir de cette page.

  • L’extension connectedvmware pour Azure CLI : installez-la en exécutant az extension add --name connectedvmware.

Utilisation

  1. Téléchargez le script sur votre machine locale.

  2. Ouvrez un terminal PowerShell et accédez au répertoire contenant le script.

  3. Exécutez la commande suivante pour autoriser l’exécution du script, car il s’agit d’un script non signé (si vous fermez la session avant d’avoir effectué toutes les étapes, réexécutez cette commande pour la nouvelle session) : Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass.

  4. Exécutez le script avec les paramètres requis. Par exemple : .\arcvmware-batch-enablement.ps1 -VCenterId "<vCenterId>" -EnableGuestManagement -VMCountPerDeployment 3 -DryRun. Remplacez <vCenterId> par l’ID ARM de votre vCenter.

Paramètres

  • VCenterId : ID ARM du vCenter où se trouvent les machines virtuelles.

  • EnableGuestManagement : si ce commutateur est spécifié, le script active la gestion des invités sur les machines virtuelles.

  • VMCountPerDeployment : nombre de machines virtuelles à activer par déploiement ARM. La valeur maximale est 200 si la gestion des invités est activée (sinon, elle est de 400).

  • DryRun : si ce commutateur est spécifié, le script crée uniquement les fichiers de déploiement ARM. Sinon, le script déploie également les déploiements ARM.

Exécution en tant que travail Cron

Vous pouvez configurer ce script pour qu’il s’exécute en tant que travail cron à l’aide du Planificateur de tâches Windows. Voici un exemple de script pour créer une tâche planifiée :

$action = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument '-File "C:\Path\To\vmware-batch-enable.ps1" -VCenterId "<vCenterId>" -EnableGuestManagement -VMCountPerDeployment 3 -DryRun' 
$trigger = New-ScheduledTaskTrigger -Daily -At 3am 
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "EnableVMs" 

Remplacez <vCenterId> par l’ID ARM de votre vCenter.

Pour annuler l’inscription de la tâche, exécutez la commande suivante :

Unregister-ScheduledTask -TaskName "EnableVMs"

Approche D : Installer des agents Arc à grande échelle à l’aide d’une approche hors bande

Les agents Arc peuvent être installés directement sur des machines sans se fier à des outils ou API VMware. Lors de l’adoption de l’approche hors bande, intégrez d’abord les machines en tant que ressources de serveur avec Arc avec Microsoft.HybridCompute/machines comme type de ressource. Ensuite, effectuez l’opération Lier à vCenter pour mettre à jour la propriété de type de la machine sur la valeur VMware, ce qui permet d’effectuer des opérations de cycle de vie virtuel.

  1. Connecter les machines en tant que ressources de serveur avec Arc : installez des agents Arc à l’aide de scripts de serveur avec Arc.

    Vous pouvez adopter n’importe laquelle des approches d’automatisation suivantes pour installer des agents Arc à grande échelle :

  2. Lier les ressources de serveur avec Arc au vCenter : les commandes suivantes mettent à jour la propriété de type des machines de calcul hybride sur la valeur VMware. La liaison des machines à vCenter permet d’effectuer des opérations de cycle de vie virtuel et des opérations de cycle d’alimentation (démarrage, arrêt, etc.) sur les machines.

    • La commande suivante analyse toutes les machines Azure Arc pour serveurs qui appartiennent au vCenter dans l’abonnement spécifié, et lie les machines avec ce vCenter.

      az connectedvmware vm create-from-machines --subscription contoso-sub --vcenter-id /subscriptions/fedcba98-7654-3210-0123-456789abcdef/resourceGroups/contoso-rg-2/providers/Microsoft.HybridCompute/vcenters/contoso-vcenter
      
    • La commande suivante analyse toutes les machines Azure Arc pour serveurs qui appartiennent au vCenter dans le groupe de ressources spécifié, et lie les machines avec ce vCenter.

      az connectedvmware vm create-from-machines --resource-group contoso-rg --vcenter-id /subscriptions/fedcba98-7654-3210-0123-456789abcdef/resourceGroups/contoso-rg-2/providers/Microsoft.HybridCompute/vcenters/contoso-vcenter.
      
    • La commande suivante peut être utilisée pour lier une ressource Azure Arc pour serveurs spécifique à vCenter.

      az connectedvmware vm create-from-machines --resource-group contoso-rg --name contoso-vm --vcenter-id /subscriptions/fedcba98-7654-3210-0123-456789abcdef/resourceGroups/contoso-rg-2/providers/Microsoft.HybridCompute/vcenters/contoso-vcenter
      

Étapes suivantes

Configurez et gérez l’accès en libre-service aux ressources VMware via Azure RBAC.