Share via


Déploiement d’un serveur Ubuntu local hébergé avec Vagrant et connexion à Azure Arc

Cet article propose une aide au déploiement d’une machine virtuelle Ubuntu locale avec Vagrant et à sa connexion 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. Vagrant s’appuie sur un hyperviseur sous-jacent. Pour ce guide, nous utilisons Oracle VM VirtualBox.

    1. Installez VirtualBox.

    2. Installez Vagrant.

  4. Créez un principal de service Azure.

    Pour connecter la machine virtuelle Vagrant à 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.

  5. Le fichier Vagrant exécute un script sur le système d’exploitation de la machine virtuelle pour installer tous les artefacts nécessaires et injecter des variables d’environnement. Modifiez le script Shell scripts/vars.sh pour qu’il corresponde au principal de service Azure que vous avez créé.

    • subscriptionId = ID de votre abonnement Azure
    • appId = nom de votre principal de service Azure
    • password = mot de passe de votre principal de service Azure
    • tenantId = ID de votre locataire Azure
    • resourceGroup = nom du groupe de ressources Azure
    • location = région Azure

Déploiement

Comme pour n’importe quel déploiement Vagrant, un vagrantfile et une box Vagrant sont nécessaires. Le déploiement suit deux grandes étapes :

  • Téléchargement de la box Vagrant du fichier image Ubuntu 16.04
  • Exécution du script d’installation

Après avoir modifié le script scripts/vars.sh pour qu’il corresponde à votre environnement, exécutez vagrant up à partir du dossier Vagrantfile. Étant donné qu’il s’agit de la première fois que vous créez la machine virtuelle, la première exécution est beaucoup plus lente que les suivantes, car le déploiement télécharge la box Ubuntu pour la première fois.

A screenshot of the vagrant up command.

Une fois le téléchargement terminé, le provisionnement commence. Le processus ne prend pas plus de trois minutes (cf. capture d’écran suivante).

A screenshot of a completed vagrant up command.

Une fois l’opération terminée, une machine virtuelle Ubuntu locale est déployée et connectée en tant que nouveau serveur avec Azure Arc dans un nouveau groupe de ressources.

A screenshot of an Azure Arc-enabled server in the Azure portal.

A screenshot of details from an Azure Arc-enabled server in the Azure portal.

Déploiement semi-automatisé (facultatif)

La dernière étape consiste à inscrire la machine virtuelle en tant que nouvelle ressource de serveur avec Azure Arc.

Another screenshot of the vagrant up command.

Si vous souhaitez contrôler le processus d’inscription proprement dit ou en voir une démonstration, procédez comme suit :

  1. Dans le script Shell install_arc_agent, commentez la section run connect command et enregistrez le fichier. Vous pouvez également commenter ou modifier la création du groupe de ressources.

    A screenshot of the azcmagent connect command.

    A screenshot of the az group create command.

  2. Établissez une connexion SSH avec la machine virtuelle à l’aide de la commande vagrant ssh.

    A screenshot of an SSH key connecting to the Vagrant machine.

  3. Exécutez la même commande azcmagent connect que celle que vous avez commentée avec vos variables d’environnement.

    Another screenshot of the azcmagent connect command.

Suppression du déploiement

Pour supprimer l’intégralité du déploiement, exécutez la commande vagrant destroy -f. Le vagrantfile comprend un déclencheur Vagrant before: destroy qui exécute un script pour supprimer le groupe de ressources Azure avant de détruire la machine virtuelle proprement dite.

A screenshot of the vagrant destroy command.