Azure Virtual Desktop sur Azure Stack HCI

Bonne nouvelle ! Azure Stack HCI 23H2 est maintenant disponible en GA. La 23H2 simplifie grandement la configuration et le déploiement des clusters HCI. Autre bonne nouvelle, AVD est aussi en GA sur Azure Stack HCI ! Si tester Azure Virtual Desktop via une solution cloud hybride et sans acheter quoi que ce soit vous intéresse, cet article est fait pour vous !

Un premier article avait déjà été écrit sur ce blog à propos d’Azure Stack HCI. La solution proposée par Microsoft vous permet de disposer d’une infrastructure hyperconvergée basée sur les technologies Azure :

Peut-on tester Azure Stack HCI sans investir dans du matériel physique ?

La réponse est oui grâce à Azure Arc Jumpstart ! Vous pouvez recréer un cluster Azure Stack HCI directement dans Azure. L’article précédemment écrit proposait la même approche, mais Jumpstart simplifie grandement le processus.

Qu’est-ce qu’Azure Arc Jumpstart ?

Il s’agit de solutions de type bac à sable proposées par Microsoft :

L’univers de l’Arc Jumpstart. Vous souhaitez explorer plusieurs environnements et découvrir toute l’étendue de Jumpstart ? Obtenez des scénarios automatisés de zéro à héros pour les serveurs compatibles avec Arc, Kubernetes compatible avec Arc, et plus encore. Parcourez les scénarios. Explorez des scénarios du cloud à la périphérie conçus pour répondre à des besoins sectoriels spécifiques.

Azure Arc Jumpstart

Comme le montre la page suivante, beaucoup de scénarios y sont proposés :

Mais qu’est-ce qu’HCIBox ?

En quelques mots : il vous permet d’essayer Azure Stack HCI directement dans Azure :

HCIBox est une solution clé en main qui fournit un bac à sable complet pour explorer les capacités d’Azure Stack HCI et l’intégration du cloud hybride dans un environnement virtualisé. HCIBox est conçu pour être complètement autonome au sein d’un seul abonnement Azure et d’un seul groupe de ressources, ce qui permettra à un utilisateur de se familiariser facilement avec Azure Stack HCI et la technologie Azure Arc sans avoir besoin de matériel physique.

Azure Arc Jumpstart

Combien coûte le service HCIBox ?

Les ressources HCIBox entraînent des frais de consommation Azure, qui dépendent des ressources Azure sous-jacentes telles que le calcul central, le stockage, le réseau.

Voici une idée de ce que peut représenter une HCIBox fonctionnant en 24/7 pendant 31 jours et hébergée en Suisse :

Enfin, une FAQ de la HCIBox est disponible juste ici.

Pour vous faire une meilleure idée, je vous propose de réaliser ensemble un petit exercice Azure Virtual Desktop fonctionnant grâce à un Azure Stack HCI construit dans une HCIBox elle-même hébergée sur Azure :

Etape 0 – Rappel des prérequis :

Pour réaliser cet exercice, il vous faudra disposer de :

  • Un tenant Microsoft
  • Une souscription Azure valide

Etape I – Préparation de l’environnement Azure :

Afin de pouvoir déployer les ressources Azure liées à la HCIBox, il est nécessaire d’avoir un quota CPU suffisant pour une famille particulière de machines virtuelles.

Pour cela, ouvrez votre souscription Azure, puis rendez-vous sur le menu suivant afin de vérifier que le quota de la famille ESv5 est au minimum de 32 cœurs :

Note : Si cela n’est pas le cas, le stylo à droite vous permet de créer une demande de modification de quota. Cette demande sera traitée automatiquement ou génèrera un ticket de support chez Microsoft.

Ouvrez ensuite Azure Cloud Shell via le bouton situé dans la barre en haut de votre portail Azure :

Si l’ouverture d’Azure Cloud Shell est une première sur votre environnement Azure, il vous sera demandé de créer un compte de stockage comme le montre l’exemple ci-dessous :

Une fois Azure Cloud Shell ouvert en PowerShell, exécuter la commande suivante afin de recréer le référentiel Azure Arc Jumpstart sur votre compte de stockage :

git clone https://github.com/microsoft/azure_arc.git

Vérifiez la version installée d’Azure CLI avec la commande ci-dessous. Celle-ci doit être supérieure ou égale à la version 2.56.0 :

az --version

Dans le cas où plusieurs souscriptions Azure sont en place sur votre tenant, utilisez la commande suivante afin d’identifier la souscription actuellement sélectionnée :

az account list --query "[?isDefault]"

Utilisez la commande suivante et disponible ici pour changer au besoin la souscription :

az account set

Utilisez la commande suivante afin de vérifier le bon changement de sélection :

az account list --query "[?isDefault]"

Utilisez la commande suivante afin de vérifier que les quotas liés à la région Azure et à la famille de VMs soient suffisants :

az vm list-usage --location westeurope --output table

Créez un principal de service Azure (SP) disposant d’un contrôle d’accès (RBAC) de propriétaire sur la souscription Azure, prenez soin de sauvegarder les 3 valeurs en sortie :

az ad sp create-for-rbac -n "JumpstartHCIBox" --role "Owner" --scopes /subscriptions/$subscriptionId

Vérifiez cette création depuis la page des droits RBAC de votre souscription Azure :

Profitez-en pour Enregistrer le fournisseur de ressources suivant sur votre souscription Azure :

Le statut du fournisseur de ressources change durant cette phase :

Environ 30 secondes plus tard, le statut du fournisseur de ressources change encore une fois :

De retour sur Azure Cloud Shell, mettez à jour la dernière version de Bicep

az bicep upgrade

Récupérez l’identifiant d’objet du fournisseur de ressources Azure Stack HCI de votre tenant :

az ad sp list --display-name "Microsoft.AzureStackHCI Resource Provider"

Votre environnement est maintenant configuré pour commencer le déploiement des ressources Azure de votre HCIBox.

Etape II – Déploiement des ressources Azure :

Pour cela, récupérez le template au format JSON disponible à cette adresse afin de modifier les informations suivantes :

  • spnClientId : Votre identifiant de principal de service Azure
  • spnClientSecret : Votre secret de principal de service Azure
  • spnTenantId : Votre identifiant de tenant Azure
  • spnProviderId : Votre identifiant de fournisseur de ressources Azure Stack HCI
  • WindowsAdminUsername : Nom d’utilisateur de l’administrateur
  • windowsAdminPassword : Mot de passe de l’administrateur
  • logAnalyticsWorkspaceName : Nom unique pour l’espace de travail HCIBox Log Analytics
  • deployBastion : Option pour déployer ou non Azure Bastion

Téléversez le fichier template au format JSON modifié sur Azure :

Déplacez le fichier template dans le dossier Bicep :

mv ./main.parameters.json ./azure_arc/azure_jumpstart_hcibox/bicep/

Positionnez-vous également dans ce même dossier :

cd ./azure_arc/azure_jumpstart_hcibox/bicep/

Lancez la commande suivante afin de créer un groupe de ressources dans la région Azure de votre choix :

az group create --name "jlohci"  --location "westeurope"

Lancez la commande suivante afin de déployer les ressources Azure de votre HCIBox :

az deployment group create -g "jlohci" -f "main.bicep" -p "main.parameters.json"

Suivez le déploiement des ressources Azure depuis le nouveau groupe de ressources créé :

Environ 30 minutes plus tard, les ressources Azure de votre HCIBox sont enfin déployées :

Les ressources Azure servant à votre HCIBox sont maintenant en place :

L’étape suivante va consister à déployer différents serveurs nécessaires à votre Cluster Azure Stack HCI. Pour cela, nous utiliserons un script PowerShell déjà préparé.

Etape III – Déploiement des nœuds connectés via Azure Arc :

Pour lancer ce script, nous devrons ouvrir une session RDP sur la machine virtuelle hôte. Pour cela recherchez la machine virtuelle suivante, puis cliquez sur celle-ci :

Démarrez une session RDP via le service Azure Bastion en utilisant les identifiants renseignés dans le template JSON :

Une fois que vous vous êtes connecté en RDP, le script PowerShell s’ouvre automatiquement :

Ce script prendra au total entre 1 et 2 heures avec 10 différentes étapes.

Téléchargement des fichiers VHDX de l’OS Azure Stack HCI :

Configuration de la virtualisation :

Création de la VM de management sous Hyper-V :

Création des 2 VMs représentants les 2 nœuds Azure Stack HCI :

Démarrage des 3 machines virtuelles :

Configurations réseaux et stockages :

A l’intérieur même de la machine virtuelle de management, déploiement d’une autre VM dédiée au réseau :

Finalisation du déploiement de l’infrastructure Azure Stack HCI dont l’enrôlement de nos 2 serveurs sur Azure via Azure Arc:

Comme indiqué plus haut, le script PowerShell se ferme automatiquement à la fin :

Si le script vous affiche une ou plusieurs erreurs, différents journaux d’évènements sont disponibles dans le dossier suivant :

C:\HCIBox\Logs\

Il existe également une page officielle de Troubleshoot juste ici :

Log fileDescription
C:\HCIBox\Logs\Bootstrap.logOutput from the initial bootstrapping script that runs on HCIBox-Client.
C:\HCIBox\Logs\New-HCIBoxCluster.logOutput of New-HCIBoxCluster.ps1 which configures the Hyper-V host and builds the HCI cluster, management VMs, and other configurations.
C:\HCIBox\Logs\Generate-ARM-Template.logLog output of the script that builds the hci.json and hci.parameters.json file
C:\HCIBox\Logs\HCIBoxLogonScript.logLog output from the orchestrator script that manages the install
C:\HCIBox\Logs\Tools.logLog output from tools installation during bootstrap

Afin de bien vérifier la connexion à Azure, recherchez le service Azure Arc via la barre du portail Azure :

Vérifiez que les deux nœuds HCI sont présents dans Azure Arc :

Vérifiez que les deux nœuds ont correctement installé avec succès les trois extensions suivantes :

  • TelemetryAndDiagnostics
  • AzureEdgeLifecycleManager
  • AzureEdgeDeviceManagement

Vérifiez également sur le second nœud la présence de ces 3 extensions :

Enfin comme le montre l’image ci-dessous, votre Cluster Azure Stack HCI n’est pas encore déployé :

Azure Stack HCI utilise un processus en 2 étapes pour valider et déployer des clusters Azure Stack HCI dans Azure à l’aide d’un modèle ARM.

Etape IV – Déploiement du cluster Azure Stack HCI :

Avant cela, commencez par ajouter à votre compte Entra ID les 2 rôles Entra ID suivants :

  • Administrateur Key Vault
  • Contributeur au compte de stockage

Retournez sur la session RDP ouverte via Azure Bastion, ouvrez l’explorateur de fichiers, faites un clic droit sur le dossier HCIBox, puis ouvrez-le dans VSCode :

Cliquez-ici pour continuer :

Vérifiez que le fichier hci.parameters.json est correct et sans valeurs de paramètre -staging :

Toujours sur la machine virtuelle hôte, ouvrez le portail Azure avec votre identifiant Entra ID, puis rechercher le service suivant :

Sélectionnez Construire votre propre modèle dans l’éditeur :

Collez le contenu du fichier hci.json dans l’éditeur, puis cliquez sur Enregistrer :

Cliquez sur Editer les paramètres :

Collez le contenu de hci.parameters.json dans l’éditeur, puis cliquez sur Enregistrer :

Renseignez votre groupe de ressources, puis lancez la validation Azure :

Une fois la validation Azure réussie, exécutez le template ARM :

Attendez que ce dernier soit terminé :

Environ 15 minutes plus tard, cliquez-ici pour ouvrir à nouveau votre groupe de ressources :

Cliquez sur la nouvelle ressource Azure représentant votre cluster Azure Stack HCI :

Un bandeau vous indique que la validation est réussie mais que le déploiement n’est pas encore effectué. Cliquez-ici pour le lancer :

La mise en place du template ARM vous amène directement sur l’onglet suivant, lancez la validation Azure :

Une fois la validation Azure réussie, lancez le déploiement des ressources, puis attendez :

Suivez l’avancement du déploiement du cluster Azure Stack HCI via le menu suivant :

Environ 2 heures plus tard, cette même page vous indique la fin du déploiement du cluster Azure Stack HCI :

Retournez sur la page principale de votre cluster Azure Stack HCI afin de lancer au besoin les mises à jour disponibles (2402) :

Lancez la mise à jour 2402 comme ceci :

Cliquez sur Suivant :

Cliquez sur Suivant :

Lancez l’installation de la mise à jour :

Suivez l’avancement de la mise à jour de votre cluster via le menu suivant :

Environ 2 heures plus tard, cette même page doit vous indiquer la fin de la mise à jour sur de votre cluster Azure Stack HCI :

Votre cluster Azure Stack HCI est enfin installé et à jour. Nous allons maintenant pouvoir nous intéresser à son contenu, à savoir :

  • les images OS
  • les réseaux logiques

Etape V – Images OS et réseaux logiques d’Azure Stack HCI :

Avant de pouvoir créer des machines virtuelles sur votre cluster HCI à partir du portail Azure, vous devez créer des images de VM qui peuvent être utilisées comme base. Ces images peuvent être importées de la place de marché Azure ou fournies directement par l’utilisateur.

Azure Arc Jumpstart

Cliquez-ici pour importer une image à partir de la Marketplace d’Azure :

Dans mon exemple, j’importe les deux images OS suivantes :

  • Windows 11 Enterprise multisession + Microsoft 365 Apps, version 23H2
  • Windows Server 2022 Datacenter: Azure Edition

La première étape consiste à télécharger sur votre cluster les deux images OS :

Environ 2 heures plus tard, le téléchargement des 2 images est terminé :

Comme nous le rappelle Azure Arc Jumpstart, Le réseau de la HCIBox comprend un sous-réseau 192.168.200.0/24 étiqueté VLAN200 :

Network details
Subnet192.168.200.0/24
Gateway192.168.200.1
VLAN Id200
DNS Server192.168.1.254

Ce réseau est conçu pour être utilisé avec les VMs Arc sur HCIBox. Pour utiliser ce réseau préconfiguré, vous devez créer une ressource réseau logique qui correspond à ce sous-réseau.

Depuis la VM hôte ouverte en RDP, ouvrez le script PowerShell suivant afin de créer le réseau logique sur votre cluster Azure Stack HCI :

Une fois le script correctement exécuté, le réseau logique est visible sur le portail Azure juste ici :

Les information de sous-réseau, de passerelle et de serveur DNS sont bien reprises :

Tous les éléments de configuration sont maintenant en place pour commencer la création de machines virtuelles dans votre cluster Azure Stack HCI.

Avant de déployer un environnement Azure Virtual Desktop, je vous propose de créer une machine virtuelle fonctionnant sous Windows Server 2022.

Etape VI – Déploiement d’une machine virtuelle Windows Server 2022 :

Depuis la page de votre cluster Azure Stack HCI, cliquez-ici pour créer votre première machine virtuelle :

Choisissez un groupe de ressources, donnez un nom à votre VM, puis sélectionnez Standard pour le type de sécurité :

Sélectionnez l’image Windows Server que vous avez téléchargée précédemment, puis définissez sa taille et sa mémoire :

Cochez la case suivant, puis définissez un compte administrateur local :

Joignez la VM au domaine AD créé pour votre Azure Stack HCI, puis cliquez sur Suivant :

Inutile d’ajouter d’autres disques de données, cliquez sur Suivant :

Cliquez-ici pour ajouter une carte réseau :

Nommez la carte réseau, sélectionnez le réseau logique créé précédemment, choisissez la méthode d’allocation sur Automatique, puis cliquez sur Ajouter :

Cliquez sur Suivant :

Ajoutez au besoin des tags, puis cliquez sur Suivant :

Cliquez sur Créer :

Comme pour une ressource Azure classique, vous pouvez suivre toutes les étapes du déploiement :

Environ 20 minutes plus tard, cliquez-ici pour apercevoir les propriétés de votre VM :

Copiez l’adresse IP privée de votre nouvelle VM :

Depuis la session ouverte via Azure Bastion, ouvrez une session Hyper-V sur la machine virtuelle de management :

Utilisez le compte suivant :

Ouvrez une session RDP via l’adresse IP privée de votre nouvelle VM tout en utilisant un compte de domaine :

Constatez la bonne ouverture de session sur votre machine virtuelle Windows Server 2022 :

Le test d’une machine virtuelle individuelle fonctionne bien. Il ne nous reste plus qu’à tester le déploiement d’un environnement Azure Virtual Desktop sur votre cluster Azure Stack HCI.

Etape VII – Déploiement d’Azure Virtual Desktop :

Avant de pouvoir déployer votre environnement Azure Virtual Desktop. Il est conseillé de synchroniser les identités Active Directory avec Entra ID.

Pour cela, ouvrez une session Hyper-V à votre contrôleur de domaine de démonstration :

Utilisez le compte de domaine suivant :

Créez une nouvelle OU, des utilisateurs de test et un groupe dédié à Azure Virtual Desktop :

Téléchargez et installez Microsoft Entra Connect via ce lien direct :

Depuis la page des utilisateurs d’Entra ID, vérifiez la bonne synchronisation de vos utilisateurs et votre groupe AVD :

Retournez sur la page de votre cluster Azure Stack HCI, puis cliquez-ici pour déployer votre environnement Azure Virtual Desktop :

Renseignez les informations de base de votre pool d’hôtes Azure Virtual Desktop, puis cliquez sur Suivant :

Ajoutez un ou des VMs Azure Stack HCI à votre AVD en reprenant l’image Windows 11 Enterprise multisession :

Définissez sa taille, sa mémoire et son réseau logique :

Joignez-la au domaine Active Directory, renseignez le compte d’administrateur local, puis cliquez sur Suivant :

Créez un espace de travail AVD, puis lancez la validation Azure :

Une fois la validation Azure réussie, lancez la création des ressources :

Attendez environ 1 heure :

L’image ci-dessous vous montre l’apparition des VMs AVD :

Seulement, et contrairement au déploiement de la première VM sous Windows Server 2022, le management invité n’est pas automatiquement installée sur les VMs AVD :

Afin d’éviter un échec de votre déploiement AVD, actualiser la page de votre machine virtuelle AVD régulièrement afin d’activer le management invité dès que cela est possible :

Attendez environ 2 minutes le temps de la préparation :

Copiez le script suivant pour sa mise en place :

Récupérez l’adresse IP privée de votre VM AVD :

Depuis la VM de management, ouvrez une session RDP avec le compte administrateur local :

Collez le script sur la VM AVD :

Sur le portail Azure, activez le management invité de votre VM dès que cela est possible :

Suivez l’activation du management invité par le menu suivant :

Rafraichissez la page plusieurs fois si nécessaire :

Environ 30 minutes plus tard, le déploiement de votre AVD doit se terminer :

Consultez votre pool d’hôtes AVD depuis le portail Azure :

Vérifiez également la bonne apparition de vos VMs AVD dans votre Active Directory :

Ajoutez votre groupe Entra ID synchronisé à votre AVD en tant qu’utilisateurs AVD :

Démarrez votre client Remote Desktop, puis ouvrez une session AVD sur un utilisateur de test :

Renseignez à nouveau le mot de passe de votre utilisateur :

Attendez quelques secondes l’ouverture de votre session Azure Virtual Desktop :

Conclusion

Grâce à la HCIBox, nous avons rapidement et facilement pu se rendre compte de l’écosystème hybride proposé par Microsoft pour une de leurs solutions phares : Azure Virtual Desktop.

Important : Attention tout de même à ne pas trop dépenser de crédits pour votre HCIBox. pensez à supprimer ou éteindre vos ressources une fois vos tests terminés :

Ce rappel des coûts de la HCIBox m’amène à une autre question :

Est-il rentable de faire fonctionner Azure Virtual Desktop sur Azure Stack HCI quand d’autres solutions on-premise existent également ?

Les avis de la communauté sont partagés, comme l’article écrit par PureRDS :

Plusieurs coûts sont en effet présents pour un Azure Virtual Desktop hébergé sur Azure Stack HCI.

Coûts licences utilisateurs :

Coûts licences infra :

Enfin voici quelques vidéos pour vous faire votre propre opinion 😎 :

Ne bougez pas, Azure Arc vient à vous !

Ayant eu l’occasion de participer à un évènement conjoint entre TD SYNNEX, Microsoft et DELL et dédié à Azure Stack HCI, j’ai pu m’intéresser au service qui oeuvre dans l’ombre : Azure Arc. L’ouverture d’Azure sur d’autres sites IT que leurs propres datacenters est indispensable, beaucoup d’architectures IT reposent en effet sur des serveurs locaux, ou sont déjà hébergées auprès d’autres fournisseurs Cloud.

Dans cet article, nous allons effectuer ensemble plusieurs méthodes d’intégration très facile de serveurs au service Azure Arc. Nous en profiterons pour faire tour dans les fonctionnalités disponibles gratuitement ou payantes sur les ressources Arc déployées.

Qu’est-ce qu’Azure Arc ?

Azure Arc est une passerelle qui étend la plateforme Azure pour vous aider à créer des applications et des services ayant la souplesse nécessaire pour fonctionner dans des centres de données, à la périphérie et dans des environnements multiclouds.

Microsoft

Combien coûte Azure Arc ?

A la base, Azure Arc ne coûte rien. Il vous permet d’effectuer les actions suivantes sans débourser un seul centime :

  • Inventaires des ressources Azure Arc
  • Accès et sécurisation via l’attribution de droits RBAC
  • Gestion via l’outil Windows Admin Center

Mais certains services annexes sont payants :

  • Serveur SQL avec Azure Arc
  • Defender for Cloud
  • Azure Policy Guest Configuration
  • Azure Insights
  • Logs

Puis-je tester moi-même Azure Arc avec une VM Azure ?

Non cela n’est pas possible aussi facilement : Azure n’autorise pas d’intégrer directement une machine virtuelle provenant dans la Marketplace Microsoft dans Azure Arc :

Seulement tout le monde ne dispose pas d’une infrastructure IT prête à servir de cobaye pour tester Azure Arc. C’est pourquoi Microsoft propose Azure Arc Jumpstart.

Le Jumpstart fournit des guides étape par étape pour des scénarios Azure Arc indépendants qui intègrent autant d’automatisation que possible, des captures d’écran et des échantillons de code détaillés, ainsi qu’une expérience riche et complète lors de la prise en main de la plateforme Azure Arc.

azurearcjumpstart.io

Pour en avoir testé quelques-uns, c’est très facile et très bien expliqué.

De mon côté, je vous propose une alternative via un exercice facile pour intégrer des serveurs sur Azure Arc via l’utilisation de ressources uniquement hébergées sur Azure.

Etape 0 – Rappel des prérequis :

Les prérequis suivants sont nécessaires pour réaliser cette démonstration d’Azure Arc :

  • Un tenant Microsoft
  • Une souscription Azure valide

Etape I – Déploiement d’un template ressources :

Pour créer des ressources intégrables dans Azure Arc, j’utilise un template développé par Microsoft et disponible depuis GitHub : Line-of-business application migration : à la base, ce template est destiné à tester le service Azure Migrate.

Ce dernier vous propose de déployer un serveur Hyper-V, dans lequel se trouve un applicatif web réparti sur plusieurs machines virtuelles et une base de données SQL.

Seule la partie initiale, encadrée en rouge, nous intéresse pour Azure Arc :

Par ce template, nous allons donc déployer une machine virtuelle Standard D8s v3 (8 vCPU, 32 GB memory) avec un rôle Hyper-V. Cette dernière hébergera 4 machines virtuelles :

  • Windows Server 2016 + SQL Server 2016
  • Windows Server 2012 Frontend web
  • Windows Server 2012 Frontend web
  • Ubuntu WAF

Comme annoncé plus haut, nous allons uniquement nous intéresser à la première étape : déploiement de l’application web via la machine virtuelle Hyper-V

Pour cela, cliquez ici pour charger la configuration du template directement dans votre tenant :

Renseignez les champs suivants et continuez :

Par défaut :
Le nom d’utilisateur demouser
Le mot de passe demo!pass123

Lancez la création et attendez une heure environ :

Prévoyez au moins une heure à partir du début du déploiement du template pour couvrir l’exécution des scripts.

Remarque : le déploiement du template prend environ 6 à 7 minutes. Une fois le déploiement du modèle terminé, plusieurs scripts supplémentaires sont exécutés pour amorcer l’environnement de laboratoire.

Récupérez l’adresse IP publique suivante :

Ouvrez un nouvel onglet depuis votre navigateur internet avec celle-ci. Vous devriez voir un site web affichant des réservations fictives d’hôtels :

Un déploiement correctement terminé devrait vous afficher cette page.

Supprimez le second groupe de ressources destiné aux tests d’Azure Migrate. Nous ne l’utiliserons pas dans le cadre de nos tests sur Azure Arc :

Ouvrez la machine virtuelle SmartHotelHost et cliquez sur Bastion :

Le service Bastion n’est pas créé, lancez son déploiement avec la configuration par défaut :

N’attendez pas la fin du déploiement de Bastion pour continuer.

Etape II – Configuration d’Azure Arc

La configuration d’Azure Arc est très rapide, utilisez la barre de recherche d’Azure pour retrouver le service Azure Arc :

Avant de commencer l’intégration de machines virtuelles à Azure Arc, nous allons créer un principal de service dédié à cette tâche. Ce principal de service va être utilisé pour l’authentification automatique pendant le processus d’intégration des ressources dans Azure Arc.

Cliquez dans le menu suivant :

Cliquez sur Créer :

Renseignez les champs, puis cliquez sur Créer :

Prenez soin de copier l’ID et le secret de principal de service dans un bloc-notes :

Revenez sur la page d’Azure Arc et constatez son apparition :

Une fois Azure Bastion entièrement déployé, retournez sur votre machine virtuelle SmartHotelHost, puis lancez une connexion RDP via Azure Bastion :

Renseignez les identifiants utilisés dans le template, puis cliquez sur Connecter :

La session RDP d’Azure Bastion s’ouvre alors dans un nouvel onglet de votre navigateur web :

Retournez sur le service Azure Arc depuis votre portail Azure, puis cliquez sur Ajouter dans la section Serveurs :

Plusieurs méthodes d’intégration à Azure Arc sont possibles. Le choix de la méthode va surtout dépendre du volume d’intégration à réaliser. Nous allons en tester plusieurs pour vous faire une meilleure idée.

Etape III – Test d’un ajout simple de serveur :

Cette méthode correspond à l’ajout d’un serveur unique sur Azure Arc. Ce premier script effectue les opérations suivantes :

  • Récupération de l’agent depuis le Centre de téléchargement Microsoft
  • Installation de l’agent sur le serveur
  • Création de la ressource serveur compatible avec Azure Arc

Pour utiliser ce script, cliquez comme ceci :

Azure commence par vous présenter les prérequis nécessaires pour assurer la communication entre le serveur et Azure Arc.

La communication repose sur le port 443 (HTTPS), cela nécessite une ouverture de pare-feu pour les flux sortant, et éventuellement la prise en charge d’un service proxy si besoin :

Aucun blocage réseau n’est présent dans notre environnement de test.

Cliquez sur Suivant et renseignez les champs :

Renseignez si besoin les étiquettes appropriées, puis cliquez sur Suivant :

Copiez le script suivant dans votre presse-papier :

Retournez sur la session RDP ouverte grâce à Azure Bastion, puis ouvrez la console Hyper-V :

Connectez-vous à la machine Windows smarthotelweb1 :

Renseignez le mot de passe de session Windows : demo!pass123

Dans cette nouvelle session, ouvrez la console PowerShell :

Collez le script donné par Azure Arc et appuyez sur Entrée pour lancer son exécution :

Comme attendu, le script procède au téléchargement et à l’installation de l’agent :

Identifiez-vous avec le compte Azure AD adéquat pour continuer le processus d’intégration :

Validez le processus d’authentification par un challenge MFA si besoin :

Fermez la fenêtre d’Internet Explorer :

Le script vous confirme la bonne création de l’objet serveur dans Azure Arc :

Retournez sur la page des serveurs Azure Arc, rafraîchissez la page si besoin :

Etape IV – Test d’un ajout de plusieurs serveurs :

Pour ajouter plusieurs serveurs à la fois sur Azure Arc, nous pouvons utiliser la seconde option.

Celle-ci génère un facilement script transportable puisqu’il gère l’authentification Azure via l’exploitation du principal de service créé précédemment. Ce script effectue les opérations suivantes :

  • Récupération de l’agent depuis le Centre de téléchargement Microsoft
  • Installation de l’agent sur le serveur
  • Création de la ressource serveur sur Azure Arc

Pour continuer, cliquez comme ceci :

Renseignez les champs et le principal de service, puis cliquez sur Suivant :

Renseignez si nécessaire les étiquettes appropriées, puis cliquez sur Suivant :

Copiez le script dans le presse-papier :

Retournez sur la session d’Azure Bastion. Sur la console Hyper-V, connectez-vous à la machine smarthotelweb2 :

Renseignez le même mot de passe : demo!pass123

Ouvrez la console PowerShell :

Collez votre script en prenant bien soin de remplacer le secret du principal de service par celui donné lors de sa création :

Attendez que le traitement d’intégration se termine :

Retournez sur la page des serveurs d’Azure Arc, rafraîchissez la page si besoin :

Nul besoin de fournir une authentification manuelle d’Azure, ce script est donc destiné à être utilisé pour importer massivement des serveurs sur Azure Arc.

Etape V – Test d’un ajout d’un serveur Linux

Azure Arc supporte également les serveurs fonctionnant sous distribution Linux ,via l’utilisation d’un autre script spécifique. Celui effectue les actions suivantes :

  • Récupération du script d’installation à partir du Centre de téléchargement Microsoft
  • Configuration du gestionnaire de packages pour approuver le référentiel
  • Téléchargement de l’agent à partir du référentiel de logiciels Linux de Microsoft
  • Installation l’agent sur le serveur
  • Création de la ressource de serveur sur Azure Arc

Pour continuer, cliquez encore une fois sur la seconde option :

Renseignez à nouveau les champs et le principal de service, puis cliquez sur Suivant :

Renseignez si besoin les étiquettes appropriées, puis cliquez sur Suivant :

Copiez le script dans le presse-papier :

Retournez sur la session d’Azure Bastion. Depuis le serveur Hyper-V, ouvrez directement une console PowerShell et connectez-vous à la machine UbuntuWAF via SSH:

Renseignez le mot de passe : demo!pass123

Collez le script donné par Azure Arc en prenant soin de modifier le secret, puis appuyez sur Entrée pour lancer son exécution :

Laissez la machine redémarrer au besoin :

Une fois le script correctement terminé, vérifiez sur le service Azure Arc l’apparition du serveur Linux :

Etape VI – Test d’un ajout d’un serveur SQL

Une machine virtuelle hébergeant un serveur SQL est également compatible avec Azure Arc et vous permet de le gérer dans votre inventaire. Le processus repose toujours sur le lancement d’un script. Ce dernier effectue les actions suivantes :

  • Vérification de la connectivité de votre environnement à Azure et à la machine spécifiée
  • Intégration de la machine hôte via l’agent Azure Connected Machine si absent
  • Initiation de la découverte d’instances SQL Server
  • Ajout des instances SQL Server de votre machine cible à Azure Arc

Cliquez comme ceci :

Renseignez les champs, puis cliquez sur Suivant :

Copiez le script dans le presse-papier :

Retournez sur la session d’Azure Bastion, sur la console Hyper-V, ouvrez une connexion vers le serveur smarthotelSQL1 :

Renseignez le mot de passe : demo!pass123 :

Désactivez la protection d’Internet Explorer :

Téléchargez Microsoft Edge par ce lien :

Validez les pop-ups d’Edge :

Ouvrez la console PowerShell :

Collez le script précédemment donné par Azure Arc et validez avec la touche Entrée :

Authentifiez-vous avec votre compte Azure. Si aucune fenêtre ne s’ouvre, saisissez l’URL dans votre navigateur web et authentifiez-vous avec votre compte Azure:

Cliquez sur Continuez :

Attendez que le script termine l’intégration du serveur SQL sur Azure Arc :

Une fois terminé, retrouvez le serveur SQL dans la liste des serveurs d’Azure Arc :

L’agent WindowsAgent.SqlServer est bien présent dans les extensions du serveur :

Retrouvez aussi le serveur SQL dans la liste ci-dessous d’Azure Arc :

Comme un serveur SQL Azure, cette intégration sur Azure Arc apporte une visibilité des bases de données ou apporte une intégration avec Microsoft Defender for SQL :

Etape VII – Test de fonctionnalités d’Azure Arc

Un grand nombre de fonctionnalités sont disponibles pour faciliter la gestion des serveurs intégrés sur Azure Arc. J’en ai sélectionné quelques-unes pour vous :

Windows Admin Center

Inauguré en 2018, Windows Admin Center est une interface web destinée à la configuration de serveurs, comme le ferait déjà Server Manager, mais à distance.

Voici un poster Microsoft récapitulant les fonctionnalités de Windows Admin Center :

Il est également possible de télécharger Windows Admin Center sur n’importe quelle machine Windows 10 (version 1709 ou ultérieure), ou Windows Server (version 2016 ou ultérieure) :

Dans notre exemple, l’installation de Windows Admin Center est nécessaire avant de pouvoir l’utiliser :

Lancez l’installation de Windows Admin Center :

Attendez plusieurs minutes :

Une fois terminée, la notification suivante apparaît alors :

Retournez sur le groupe des ressources Azure Arc pour y ajouter un rôle RBAC supplémentaire à votre identité Azure AD :

Ajoutez le rôle comme ceci :

Retournez sur Windows Admin Center et constatez la disparition de la notification, puis connectez-vous :

Patientez si besoin plusieurs minutes.

Retrouvez la console Windows Admin Center et toutes ses fonctionnalités, comme :

  • Accès au registre Windows
  • Configuration réseau et pare-feu
  • Accès aux journaux d’évènements Windows
  • Explorateur de fichiers

Il est même possible d’ouvrir une session RDP depuis Windows Admin Center ????

Renseignez le mot de passe de session : demo!pass123

Defender for Cloud

Microsoft Defender pour les serveurs fournit la détection des menaces ainsi que des défenses avancées à vos machines Windows et Linux, qu’elles s’exécutent dans Azure, AWS, GCP ou localement. Microsoft Defender pour les serveurs est disponible dans deux plans :Microsoft Doc

Autrement dit, l’intégration d’une ressource dans Microsoft Defender active un grand nombre de mesures de sécurité (capteurs de faille, évaluation des vulnérabilités, threat intelligence, …), mais apporte également la possibilité de piloter ses alertes et ses incidents depuis le centre de sécurité Microsoft.

Deux plans sont disponibles selon le serveur concerné et les fonctionnalités recherchées. Le plan 2 correspond à l’ancien plan appelé Defender for Server :

La liste des avantages de Defender for Server se trouve ici.

L’activation de Defender for Server est facile, cliquez sur un des serveurs Azure Arc, puis rendez-vous dans la section Sécurité et enfin cliquez comme ceci :

Cliquez sur la souscription hébergeant vos ressources Azure Arc :

Activez le plan destiné à Defender for Servers :

Que le serveur soit sous Linux ou Windows, l’installation d’agent est réalisé de la même manière que pour des ressources Azure :

Azure Policy Guest configuration

Comme pour des ressources Azure, Azure Policy prend en charge l’audit de l’état de votre serveur compatible avec Azure Arc grâce aux politiques de configuration des invités. Les définitions de configuration d’invité d’Azure Policy peuvent auditer ou appliquer des paramètres à l’intérieur de la machine.

Il est à noter que ce service est payant pour des ressources non-Azure :

Contrairement à Defender for Cloud où l’activation est possible depuis une souscription Azure pour l’ensemble des ressources de même type, l’activation de cette fonctionnalité doit s’effectuer sur chacun des serveurs Azure Arc :

Cochez les cases voulues :

Les nouvelles polices sont bien visibles, mais en attente de lancement :

Retournez sur l’Hyper-V pour arrêter la machine virtuelle :

Une fois arrêté, redémarrer là :

Attendez un bon quart d’heure pour espérer voir des résultats sur les polices :

Surveillance

Comme pour les ressources Azure, la sauvegarde des logs est aussi disponible. L’activation de Defender for Server Plan 2 automatise sa mise en place et intègre dans le coût 500 Mo journalier pour les logs :

Insights

L’activation de capacités de surveillance supplémentaires permet d’obtenir des informations sur les performances et les dépendances de vos ressources de l’Arc.

Cliquez-ici pour configurer les paramétrages :

Activez le service :

Un Log Analytics Workspace est nécessaire. Choisissez-en un existant ou créez-en un nouveau :

En entendant le déploiement complet, consultez la liste des extensions pour voir apparaître AMA :

AzureMonitorWindowsAgent pour Windows
AzureMonitorLinuxAgent pour Linux

Il faut bien attendre un peu pour avoir de la donnée et en tirer des analyses intéressantes.

Il restera encore beaucoup à dire sur d’autres fonctionnalités, telles que Machine Configuration ou Centre de gestion des mises à jour, …

Conclusion

Microsoft démontre sous ouverture à d’autres environnements via Azure Arc. La centralisation des opérations sur le portail Azure sans tenir compte de la provenance de la ressource IT est une belle avancée car elle facilite la gestion d’infrastructure. Cela permet en plus de pouvoir toujours profiter des derniers services ajoutés par Microsoft.