Share via


Utiliser un plan Terraform pour déployer une machine virtuelle Windows VMware et connectez-la à Azure Arc

Cet article donne des conseils sur l’utilisation du plan Terraform fourni pour déployer une machine virtuelle VMware vSphere de Windows Server et la connecter en tant que ressource de serveur avec Azure Arc.

Prérequis

  1. Clonez le référentiel Azure Arc Jumpstart.

    git clone https://github.com/microsoft/azure_arc.git
    
  2. Installez ou mettez à jour Azure CLI vers la version 2.7 ou une version ultérieure. Utilisez la commande suivante pour vérifier la version installée actuellement.

    az --version
    
  3. Installer Terraform >= 0.12

  4. Vérifiez que l’utilisateur de vCenter Server dispose des autorisations nécessaires pour déployer une machine virtuelle à partir d’un modèle dans le client web vSphere.

  5. Créez un principal de service Azure.

    Pour connecter la machine virtuelle VMware vSphere à Azure Arc, un principal de service Azure auquel est attribué le rôle Contributeur est requis. Pour le créer, connectez-vous à votre compte Azure et exécutez la commande suivante. Vous pouvez également exécuter cette commande dans Azure Cloud Shell.

    az login
    az account set -s <Your Subscription ID>
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
    

    Par exemple :

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
    

    La sortie doit ressembler à ceci :

    {
      "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "displayName": "http://AzureArcServers",
      "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

    Remarque

    Nous vous recommandons vivement d’étendre le principal de service à un abonnement et groupe de ressources Azure spécifique.

Préparer un modèle de machine virtuelle vSphere Windows Server VMware

Avant d’utiliser ce guide pour déployer une machine virtuelle Windows Server et la connecter à Azure Arc, vous devez disposer d’un modèle VMware vSphere. Vous pouvez facilement créer un modèle de ce type à l’aide de VMware vSphere 6.5 et versions ultérieures.

Le plan Terraform a utilisé le fournisseur remote-exec qui utilise le protocole WinRM pour copier et exécuter le script Azure Arc nécessaire. Pour permettre la connectivité WinRM à la machine virtuelle, exécutez le script PowerShell allow_winrm sur votre machine virtuelle avant de la convertir en modèle.

Remarque

Si vous disposez déjà d’un modèle de machine virtuelle pour Windows Server, vous devez toujours utiliser le guide comme référence.

Déploiement

Avant d’exécuter le plan Terraform, vous devez définir les variables d’environnement qui seront utilisées par le plan. Ces variables sont basées sur le principal de service Azure que vous venez de créer, votre abonnement Azure et votre locataire, ainsi que vos informations d’identification VMware vSphere.

  1. Récupérez votre ID d’abonnement et votre ID de locataire Azure à l’aide de la commande az account list.

  2. Le plan Terraform crée des ressources à la fois dans Microsoft Azure et dans VMware vSphere. Il exécute ensuite un script sur la machine virtuelle pour installer l’agent Azure Arc et tous les artefacts nécessaires. Ce script nécessite certaines informations sur vos environnements VMware vSphere et Azure. Modifiez scripts/vars.sh et mettez à jour chacune des variables avec les valeurs appropriées.

    • TF_VAR_subscription_id = ID de votre abonnement Azure
    • TF_VAR_client_id = nom de votre principal de service Azure
    • TF_VAR_client_secret = mot de passe de votre principal de service Azure
    • TF_VAR_tenant_id = ID de votre locataire Azure
    • TF_VAR_resourceGroup = nom du groupe de ressources Azure
    • TF_VAR_location = région Azure
    • TF_VAR_vsphere_user = nom d’utilisateur de l’administrateur de vCenter
    • TF_VAR_vsphere_password = mot de passe de l’administrateur de vCenter
    • TF_VAR_vsphere_server = nom de domaine complet/adresse IP de vCenter Server
    • TF_VAR_admin_user = nom de l’utilisateur administrateur du système d’exploitation
    • TF_VAR_admin_password = mot de passe de l’administrateur du système d’exploitation
  3. À partir de l’interface CLI, accédez au répertoire azure_arc_servers_jumpstart/vmware/winsrv/terraform du référentiel cloné.

  4. Exportez les variables d’environnement que vous avez modifiées en exécutant scripts/vars.sh avec la commande source, comme indiqué ci-dessous. Terraform exige que ces variables soient définies pour que le plan s’exécute correctement. Notez que ce script est également exécuté automatiquement à distance sur la machine virtuelle dans le cadre du déploiement Terraform.

    source ./scripts/vars.sh
    
  5. En plus des variables d’environnement TF_VAR que vous venez d’exporter, modifiez les variables Terraform dans le fichier terraform.tfvars pour qu’elles correspondent à votre environnement VMware vSphere.

    A screenshot of the TF_VAR environment variables

  6. Exécutez la commande terraform init, qui télécharge les fournisseurs Terraform AzureRM , vSphere et local.

    A screenshot of the terraform init command.

  7. Exécutez la commande terraform apply --auto-approve et patientez jusqu’à ce que le plan se termine. Une fois le déploiement de Terraform terminé, une nouvelle machine virtuelle pour Windows Server sera opérationnelle et sera projetée en tant que ressource de serveur avec Azure Arc dans un groupe de ressources Azure nouvellement créé.

    A screenshot of terraform apply completed.

    A screenshot of a new VMware vSphere Windows Server virtual machine.

    A screenshot of an Azure Arc-enabled server in an Azure resource group.

    Another screenshot of an Azure Arc-enabled server in an Azure resource group.

Suppression du déploiement

  • La méthode la plus simple consiste à supprimer la ressource Azure Arc via le portail Azure, en sélectionnant simplement la ressource et en la supprimant. En outre, supprimez la machine virtuelle VMware vSphere.

    A screenshot of an Azure Arc-enabled server being deleted.

  • Si vous supprimez l’instance manuellement, vous devez également supprimer install_arc_agent.ps1, qui est créé par le plan Terraform.

  • Si vous souhaitez désactiver l’ensemble de l’environnement, utilisez la commande terraform destroy --auto-approve comme indiqué ci-dessous.

    A screenshot of the terraform destroy command.