Apprivoisez le stockage Azure

Le stockage de données est présent dans toute infrastructure IT. Il peut se présenter sous différentes formes selon le besoin. Une base de données ou un serveur de fichiers sont les exemples les plus connus. Mais il est possible d’en avoir besoin sous d’autres formes, comme pour du stockage objet (sauvegardes) ou des services de messageries (transitoires) entre applications.

Quel que soit son type, les fournisseurs de Cloud disposent d’une flexibilité inégalée, car leur offre de stockage peut s’adapter aux besoins dans la forme et dans le temps. Pour cela, les calculateurs de prix, comme Azure Pricing Calculator, sont d’une grande aide pour estimer au mieux le coût du stockage.

Prenons en exemple le compte de stockage Azure. Il s’agit est une ressource régulièrement utilisée car elle couvre justement plusieurs types de stockage :

Voici d’ailleurs quelques articles de ce blog parlant du stockage Azure, ainsi qu’une très bonne vidéo d’introduction en français :

Enfin, cet article s’inscrit dans la continuité des précédents exercices ateliers, dont voici les liens directs :

Afin de vous familiariser avec le compte de stockage Azure, je vous propose de suivre cet exercice dédié. La version originale de Microsoft est également disponible en anglais sur la page GitHub juste ici. Voici la liste des tâches que nous allons réaliser :

  • Tâche 1 : Préparez votre environnement Azure
  • Tâche 2 : Créez votre compte de stockage Azure
  • Tâche 3 : Testez le stockage Azure blob
  • Tâche 4 : Créez un partage de fichiers Azure
  • Tâche 5 : Gérer l’accès au réseau du compte de stockage Azure
  • Tâche 6 : Joignez le compte de stockage à un Active Directory

Je me répète souvent, mais une ressource déployée entraîne un début de facturation de la part de Microsoft. Il est donc important de correctement dimensionner les ressources, et de les supprimer quand elles ne sont plus utilisées.

Rappel des prérequis :

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

  • Un tenant Microsoft
  • Une souscription Azure active

Tâche 1 – Préparez votre environnement Azure :

Commencez par télécharger localement les fichiers de scripts Microsoft disponibles juste ici :

Décompressez cette archive ZIP sur votre poste local :

Depuis votre portail Azure, ouvrez Azure Cloud Shell via l’icône situé en haut à droite :

Configurez si besoin les options liées à la création du compte de stockage utilisé pour Azure Cloud Shell :

Attendez que le compte de stockage soit créé et que la ligne de commande d’Azure Cloud Shell vous soit accessible :

Dans la barre d’outils d’Azure Cloud Shell, cliquez sur l’icône pour téléverser des fichiers vers le compte de stockage :

Commencez par téléverser le premier fichier présent dans l’archive précédemment décompressée :

\Allfiles\Labs\07\az104-07-vm-template.json

Puis téléversez le second fichier suivant :

\Allfiles\Labs\07\az104-07-vm-parameters.json

Copiez la commande suivante en modifiant si besoin la région Azure souhaitée :

$location = 'West Europe'

Faites-en de même pour une seconde variable, en modifiant si besoin le nom du groupe de ressources à créer :

$rgName = 'az104-07-rg0'

Exécutez la commande suivante dans votre Azure Cloud Shell pour créer le groupe de ressources qui hébergera la machine virtuelle créée juste après :

New-AzResourceGroup -Name $rgName -Location $location

Attendez quelques secondes, puis constatez le succès de la création :

Exécutez ensuite la commande suivante pour déployer une machine virtuelle grâce aux deux fichiers précédemment téléversés :

New-AzResourceGroupDeployment `
   -ResourceGroupName $rgName `
   -TemplateFile $HOME/az104-07-vm-template.json `
   -TemplateParameterFile $HOME/az104-07-vm-parameters.json `
   -AsJob

Spécifiez un mot de passe pour le compte de l’administrateur local de votre Windows Server :

La création de la machine est alors effectuée en tâche de fond. Il n’est donc pas nécessaire d’attendre que le déploiement se termine :

Fermez le volet d’Azure Cloud Shell.

Suivez l’avancement du déploiement de votre VM depuis le groupe de ressources :

Quelques minutes plus tard, retrouvez les ressources créées dans la page principale du groupe de ressources :

Recherchez dans vos machines virtuelles celle créée à l’instant par le script :

Afin de préparer une connexion future, cliquez-ici pour déployer le service Azure Bastion :

Cliquez-ici pour déployer un Azure Bastion en utilisant une configuration par défaut :

Le déploiement d’Azure Bastion a commencé, inutile d’attendre la fin de son déploiement. Nous allons pouvoir nous intéresser au compte de stockage Azure.

Tâche 2 – Créez votre compte de stockage Azure :

Depuis le portail Azure, recherchez puis sélectionnez le service comptes de stockage :

Cliquez sur Créer pour ajouter un second compte de stockage :

Sur le premier onglet, commencez par créer un nouveau groupe de ressources Azure :

Donnez à votre compte de stockage un nom, unique dans tout l’environnement Azure :

Prenez du temps pour passer en revue les options disponibles, puis cliquez sur Suivant :

Prenez du temps pour passer en revue les options disponibles, puis cliquez sur Suivant :

Prenez du temps pour passer en revue les options disponibles, puis cliquez sur Suivant :

Prenez du temps pour passer en revue les options disponibles, puis cliquez sur Suivant :

Prenez du temps pour passer en revue les options disponibles, puis cliquez sur Valider :

Une fois la validation terminée, lancez la création de votre compte de stockage :

Environ une minute plus tard, la création de votre compte de stockage est terminée. Cliquez-ici pour accéder directement à votre compte de stockage :

Dans la section Redondance, notez l’emplacement secondaire, présent grâce à l’option GRS laissée lors de la création de votre compte de stockage :

Un compte de stockage vide ne coûte rien. Le volume de données et les transactions vont générer les coûts.

Tâche 3 – Testez le stockage Azure blob :

Cliquez sur Conteneurs, puis cliquez sur Créer pour en créer un nouveau :

Créez un conteneur blob avec les options suivantes, puis cliquez sur Créer :

Dans la liste des conteneurs blob, cliquez sur le conteneur az104-07-container nouvellement créé :

Cliquez sur Téléverser pour déposer un fichier depuis votre ordinateur vers votre conteneur :

Retrouvez les fichiers de l’archive décompressée, puis choisissez le fichier LICENCE :

Dans l’onglet Avancée, ajoutez le dossier licenses, puis cliquez sur Téléverser :

Environ une seconde plus tard, Azure vous confirme le succès de l’envoi du fichier et la création du dossier :

Retrouvez sur la page le dossier nouvellement créé, puis cliquez dessus :

Dans ce dossier, constatez le tier utilisé par le fichier LICENSE précédemment téléversé :

Cliquez sur le fichier LICENSE, puis copiez l’URL du blob comme ceci :

Ouvrez un navigateur privé depuis votre poste local :

Collez l’URL du blob copiée précédemment dans la barre d’adresse, puis constatez le message erreur d’accès, dû à un manque d’autorisations :

Afin de pouvoir accéder au blob, générez un accès SAS, en y indiquant une date de validité supérieure à la date du jour :

Copiez l’URL générée par votre accès SAS de votre blob LICENSE :

Voici en exemple URL avec mon accès SAS :

https://jlosto2.blob.core.windows.net/az104-07-container/licenses/LICENSE?sp=r&st=2023-04-25T19:34:42Z&se=2023-04-27T03:34:42Z&spr=https&sv=2021-12-02&sr=b&sig=YQUFaXmpBJhi7E3bt5WmmuF%2FmszjQ29UP46YS9747zU%3D

Rouvrez à nouveau un navigateur privé depuis votre poste local :

Collez l’URL précédemment copiée, puis constatez le téléchargement ou l’affichage du fichier LICENSE :

Ouvrez le fichier LICENSE si celui-ci ne s’est pas affiché :

Dans un autre registre, un serveur de fichiers est aussi remplaçable par un service Azure PaaS. Déjà cité plus haut, l’article Stockez vos données sur un service PaaS vous explique également quelques notions importantes.

Tâche 4 – Créez un partage de fichiers Azure :

Sur votre compte de stockage, cherchez le menu Partages de fichiers afin d’en créer un nouveau :

Nommez ce partage de fichiers az104-07-share conservant les propriétés par défaut :

Une fois créé, cliquez sur votre partage de fichiers :

Cliquez sur le bouton Connecter :

Sur la partie de droite, choisissez de vous connecter via la clef du compte de stockage, puis affichez le script de connexion afin de le copiez dans votre presse-papier :

Retournez sur la machine virtuelle créée précédemment, puis allez dans le menu suivant :

Collez le script précédemment copié, puis lancez l’exécution du traitement :

Attendez environ deux minutes, puis constatez sa bonne exécution :

Ce script lancé à distance sur la machine virtuelle a monté un lecteur réseau Z. La connexion est passée par l’URL publique via une session HTTPS.

Copiez les deux lignes de code ci-dessous dans votre presse-papier :

New-Item -Type Directory -Path 'Z:\az104-07-folder'

New-Item -Type File -Path 'Z:\az104-07-folder\az-104-07-file.txt'

Encore une fois, collez ce code, puis lancez l’exécution du traitement :

Attendez environ deux minutes, puis constatez sa bonne exécution :

Ce second script lancé à distance a créé dans le partage un dossier et un fichier txt depuis la machine virtuelle.

Retournez sur le partage de fichiers depuis le compte de stockage Azure :

Cliquez sur le dossier nouvellement créé :

Constatez la bonne présence du fichier txt :

Intéressons-nous maintenant à la configuration réseau de votre compte de stockage. Les URLs précédemment utilisées pour le blob et le partage de fichiers reprenaient l’accès publique de votre compte de stockage.

Un filtrage réseau est possible pour bloquer l’accès en plus de l’authentification déjà en place.

Tâche 5 – Gérer l’accès au réseau du compte de stockage Azure :

Sur votre compte de stockage, activez la restriction firewall à des réseaux virtuels connus, ainsi que votre adresse IP publique comme ceci :

Ouvrez à nouveau un navigateur internet privé :

Collez l’URL précédemment générée pour l’accès SAS de votre blob dans la barre d’adresse :

https://jlosto2.blob.core.windows.net/az104-07-container/licenses/LICENSE?sp=r&st=2023-04-25T19:34:42Z&se=2023-04-27T03:34:42Z&spr=https&sv=2021-12-02&sr=b&sig=YQUFaXmpBJhi7E3bt5WmmuF%2FmszjQ29UP46YS9747zU%3D

Constatez le téléchargement ou l’affichage du fichier LICENSE :

Ouvrez Azure Cloud Shell via l’icône situé en haut à droite du portail Azure :

Reprenez la commande suivante et ajoutez-y l’URL précédemment générée pour l’accès SAS de votre blob :

Invoke-WebRequest -URI '[blob SAS URL]'

Cela donne dans mon cas la commande suivante :

Invoke-WebRequest -URI 'https://jlosto2.blob.core.windows.net/az104-07-container/licenses/LICENSE?sp=r&st=2023-04-25T19:34:42Z&se=2023-04-27T03:34:42Z&spr=https&sv=2021-12-02&sr=b&sig=YQUFaXmpBJhi7E3bt5WmmuF%2FmszjQ29UP46YS9747zU%3D'

Exécutez la commande, puis constatez l’erreur dû un blocage du firewall configuré précédemment sur le compte de stockage :

Retournez sur la configuration réseau et firewall de votre compte de stockage, puis ajoutez un réseau virtuel :

Sélectionnez le réseau virtuel et le sous-réseau rattaché à la machine virtuelle créée :

Attendez quelques secondes que le service endpoint s’active sur le sous-réseau sélectionné :

Une fois activé, ajoutez-le à la configuration :

N’oubliez pas de sauvegarde la configuration réseau du compte de stockage :

Si votre réseau virtuel n’apparait pas, exécutez les deux commandes PowerShell suivantes sous Azure Cloud Shell and modifiant les variables :

Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Set-AzVirtualNetworkSubnetConfig -Name "mysubnet" -AddressPrefix "10.0.0.0/24" -ServiceEndpoint "Microsoft.Storage.Global" | Set-AzVirtualNetwork
$subnet = Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Get-AzVirtualNetworkSubnetConfig -Name "mysubnet"
Add-AzStorageAccountNetworkRule -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -VirtualNetworkResourceId $subnet.Id

Nous avons vu certaines restrictions possibles pour bloquer des connexions réseaux non souhaitées. Dans la prochaine tâche, nous allons voir comment joindre un compte de stockage à un domaine AD.

Tâche 6 – Joindre le compte de stockage à un Active Directory :

A l’heure actuelle, il existe 3 méthodes de joindre un compte de stockage Azure à un domaine. Dans notre exercice, nous utiliserons la première méthode, grâce à la machine virtuelle créée précédemment :

Connectez-vous à la machine virtuelle créée précédemment via le script en reprenant comme identifiant Student, et comme mot de passe celui renseigné lors de la création de la VM :

Une fois connecté à la machine virtuelle, ajoutez des rôles à votre Windows Server :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cochez les deux rôles AD DS et DNS, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Installer :

Attendez environ deux minutes que l’installation des 2 rôles se termine :

Cliquez-ici pour promouvoir votre machine virtuelle en tant que contrôleur de domaine :

Créez une nouvelle forêt et nommez votre domaine AD comme vous le souhaitez, puis cliquez sur Suivant :

Créez un mot de passe pour la DSRM, puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Installer :

Cliquez sur Fermer puis fermez l’onglet Azure Bastion :

Copiez l’adresse IP privée de votre machine virtuelle :

Sur le réseau virtuel de votre VM, renseignez l’adresse IP privée dans la section DNS :

Dans la section des partages de fichiers de votre compte de stockage, constatez l’absence de configuration Active Directory :

Rouvrez une session sur votre machine virtuelle via Azure Bastion :

Attendez la fin de l’ouverture de session plusieurs minutes :

Dans Server Manager, désactivez la sécurité renforcée d’Internet Explorer :

Désactivez la sécurité pour les utilisateurs ayant un profil administrateur :

Ouvrez Microsoft Edge :

Ouvrez l’URL suivante :

https://github.com/Azure-Samples/azure-files-samples/releases

Téléchargez l’archive ZIP contenant le script de jointure AD :

Décompressez l’archive ZIP :

Décompressez cette archive dans un dossier à la racine du disque C :

Ouvrez Windows PowerShell ISE :

Positionnez-vous dans le dossier contenant l’archive extraite :

Commencez par exécutez les commandes suivantes pour préparer votre environnement

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser

.\CopyToPSPath.ps1

Validez toutes les alertes de sécurité :

Installez les modules nécessaires à la configuration :

install-Module -Name Az
Import-Module -Name AzFilesHybrid

Validez toutes les alertes de sécurité :

Patientez plusieurs minutes avant l’installation complète des modules AZ :

Fermez puis rouvrez la session PowerShell si celui-ci vous le demande :

Connectez à vous à votre compte Azure AD :

Connect-AzAccount

Renseignez les variables suivantes depuis la page de votre compte de stockage Azure :

$SubscriptionId = "<your-subscription-id-here>"
$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"

Select-AzSubscription -SubscriptionId $SubscriptionId 

Join-AzStorageAccount `
        -ResourceGroupName $ResourceGroupName `
        -StorageAccountName $StorageAccountName

Le résultat de la commande devrait être le suivant :

En cas de souci, la commande de debug peut vous aider à comprendre ce qui se passe :

Debug-AzStorageAccountAuth -StorageAccountName $StorageAccountName -ResourceGroupName $ResourceGroupName -Verbose

Enfin vérifiez la bonne jointure de votre compte de stockage à Azure Active Directory avec le changement de statut en Configured :

Il reste bien évidemment quelques étapes pour finaliser la configuration afin que les utilisateurs puissent accéder à un partage de fichier via leur compte AD :

Conclusion

Dans cet atelier dédié au stockage et conçu par Microsoft, vous avez :

  • Préparé votre environnement Azure
  • Créé votre compte de stockage Azure
  • Testé le stockage Azure blob
  • Créé un partage de fichiers Azure
  • Géré l’accès au réseau du compte de stockage Azure
  • Joint le compte de stockage à un Active Directory

J’espère que toutes opérations vous ont montré la facilité de déploiement d’un compte de stockage Azure. Enfin, pensez à supprimer les ressources une fois cet atelier terminé afin d’éviter les surcoûts inutiles :

Suppression des ressources Azure :

Allégez vos profils FSLogix !

Dans la plupart des environnements Azure Virtual Desktop, la gestion des profils utilisateurs est gérée grâce à la solution FSLogix. Pour rappel, FSLogix est une solution Microsoft très performante dans la gestion des profils utilisateurs Windows dans les environnements VDI. Azure Virtual Desktop est d’ailleurs le bon exemple, vous pouvez retrouver un article sur sa mise en place juste ici.

Bien souvent, il sera nécessaire d’effectuer par moment des opérations de routine, comme les mises à jour FSLogix, mais aussi dans sa configuration ou encore dans son stockage. En effet, les profils ont tendance à grossir avec le temps. Pour y remédier, plusieurs pistes existent, dont la redirection du cache.

Microsoft en parle d’ailleurs dans deux articles de Microsoft Learn :

Qu’est-ce que la redirection FSLogix ?

Un profil utilisateur contient de la donnée brute, mais aussi de la donnée de cache, issue d’un stockage externe, comme les outils 365. Pour faire simple, les produits comme OneDrive, Teams, Exchange, … stockent vos données dans le Cloud, et en copient une partie sous forme de cache local, pour des questions de performances VDI.

Les profils utilisateurs ont donc tendance à conserver ce cache et grossir avec le temps. FSLogix propose donc de faire de la redirection ciblée de ce cache pour alléger le profil utilisateur :

FSLogix redirections.xml fournit des fonctionnalités qui permettent d’exclure certaines parties du profil d’un utilisateur du conteneur d’un utilisateur

Microsoft Learn

Dans cet article, nous allons prendre de temps de tester deux configurations FSLogix (avec / sans la redirection) afin de mesurer le gain d’espace en résultant.

Etape 0 – Rappel des prérequis :

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

  • Un tenant Microsoft
  • Une souscription Azure valide

Etape I – Déploiement du domaine managé Azure AD DS :

Il est possible d’effectuer ce test avec un domaine Active Directory ou via le service managé Azure AD DS. N’oubliez pas qu’il est pas encore possible de faire du roaming profile uniquement basé sur Azure AD, car l’intégration d’un compte de stockage Azure nécessite encore et toujours un environnement hybride.

Dans mon cas, j’ai choisi de déployer un Azure AD DS, que vous retrouvez dans le menu suivant :

Configurez-le de manière avant de pouvoir le déployer :

Lancez le déploiement, puis attendez une bonne heure que la configuration se termine entièrement :

Une fois le service Azure AD DS entièrement déployé, pensez à corriger les serveurs de DNS sur votre réseau virtuel Azure :

Profitez-en pour créer d’autres sous-réseaux selon les besoins de votre test :

Déployez également un Azure Bastion afin de vous connecter plus facilement sur les machines virtuelles Azure sans ouvrir de port RDP :

Complétez tous les champs pour créer votre Azure Bastion sur votre réseau virtuel :

Une fois la validation passée, cliquez sur Créer :

Afin de configurer notre domaine AD et de créer des GPOs FSLogix, nous allons avoir besoin d’une machine virtuelle de management.

En effet, les machines gérant le service Azure AD DS ne vous sont pas accessible. Rien ne nous empêche de gérer votre domaine grâce à une autre machine virtuelle disposant des fonctionnalités adéquates.

Etape II – Création d’une machine virtuelle de management :

N’attendez pas la fin de la création d’Azure Bastion pour créer votre machine virtuelle sur Azure. Un article dédié à la création de votre première machine virtuelle se trouve juste ici.

Renseignez tous les champs du premier onglet, puis cliquez sur Suivant :

Sur le second onglet, cliquez sur Suivant :

Reprenez votre réseau virtuel déjà en place, choisissez le bon sous-réseau, retirez l’adresse IP publique inutile, puis lancez sa création :

N’attendez pas la fin de la création de votre machine virtuelle de management pour créer un premier compte de stockage.

Etape III – Créations de deux comptes de stockage :

Le compte de stockage va vous servir pour stocker les profils FSLogix.

Cliquez-ici pour commencer sa création :

Donnez-lui un nom unique, les autres caractéristiques importent peu pour notre test, puis cliquez sur Suivant :

Cliquez sur Suivant pour passer au troisième onglet :

Restreignez l’accès public en spécifiant le réseau virtuel et les sous-réseaux adéquats pour nos tests FSLogix :

Une fois la validation passée, cliquez sur Créer :

Une fois la création terminée, retournez sur votre compte de stockage pour y ajoutez votre IP publique dans les règles de réseau :

Cliquez ici pour créer un partage de fichier sur ce compte de stockage :

Nommez le nom de ce partage et conservez la capacité provisionnée par défaut :

Cliquez-ici pour joindre votre compte de stockage à votre domaine Azure AD DS :

Dans le cadre d’un domaine Azure AD DS, choisissez l’option se trouvant au milieu :

Cochez la case ci-dessous, puis Sauvegarder :

Quelques secondes plus tard, le statut Active Directory change. Cliquez sur le nom de votre partage réseau :

Assignez des rôles RBAC à vos utilisateurs via le menu suivant :

Commencez par assigner un administrateur avec le rôle ci-dessous :

Choisissez l’administrateur adéquat dans votre Azure AD, puis validez l’assignation :

Refaite une seconde opération d’assignation, avec le rôle suivant, pour votre utilisateur de test AVD :

Choisissez l’utilisateur AVD adéquat dans votre Azure AD, puis validez l’assignation :

Une fois les assignations correctement faites, vérifiez que celles-ci sont bien présentes :

Comme nous souhaitons disposer deux environnements AVD, l’un avec la redirection et l’autre sans, refaites à nouveau l’étape du compte de stockage pour en créer un second, configuré de la même façon :

Etape IV – Configuration du serveur de management :

Connectez-vous à votre machine virtuelle de management grâce au service Azure Bastion :

Renseignez les identifiants d’administrateur local renseignés lors de la création de la VM :

Dans la console Server Manager, cliquez sur WORKGROUP pour joindre cette machine au domaine Azure AD DS :

Cliquez-ici pour modifier la configuration de domaine :

Saisissez le nom de votre domaine Azure AD DS, puis cliquez sur OK :

Renseignez les identifiants d’un compte de votre Azure AD et répliqué sur Azure AD DS :

Cliquez sur OK :

Redémarrez votre machine virtuelle de management :

Une fois redémarrée, dans la console Server Manager, vérifiez la bonne jointure du domaine Azure AD DS :

Cliquez-ici pour ajouter les fonctionnalités de gestion du domaine AD :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cochez les cases des fonctionnalités suivantes :

  • Group Policy Management
  • Remote Server Administration Tools

Puis cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Suivant :

Cliquez sur Installer :

Cliquez sur Fermer :

Fermez la session Windows de votre administrateur local

Sur le portail Azure, retournez sur le partage de fichier de votre premier compte de stockage dédié à FSLogix :

Récupérez la commande PowerShell pour créer un lecteur réseau Z, grâce à la clef du compte de stockage :

$connectTestResult = Test-NetConnection -ComputerName jlostoprem.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
    # Save the password so the drive will persist on reboot
    cmd.exe /C "cmdkey /add:`"jlostoprem.file.core.windows.net`" /user:`"localhost\jlostoprem`" /pass:`"odE9TV8+6IzIYVezHtzS2xcESUL2oegoqjEqhcQcBPAPIKMuZsNob0UErXTGyGU2d986MuhWPQme+AStVF/ofA==`""
    # Mount the drive
    New-PSDrive -Name Z -PSProvider FileSystem -Root "\\jlostoprem.file.core.windows.net\fslogix-profile" -Persist
} else {
    Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}

Retournez sur la machine virtuelle de management, puis ouvrez à nouveau une session RDP avec un compte d’administration Azure AD DS :

Ouvrez PowerShell ISE, collez la requête précédemment récupérée sur le compte de stockage, puis lancez-là :

Un premier lecteur réseau apparaît alors dans le poste de travail :

Modifiez la propriété de sécurité de ce lecteur réseau via la fonction Avancé :

Ajoutez un droit pour le compte administrateur Azure AD DS avec la configuration suivante :

Ajoutez un droit pour votre utilisateur de test AVD avec la configuration suivante :

Le résultat des droits sur le partage réseau devrait correspondre à cela :

Refaites les mêmes opérations sur le second compte de stockage :

  • Commande PowerShell pour monter le disque réseau Y
  • Propriété – Sécurité pour les deux utilisateurs

Etape V – Configurations des GPOs FSLogix :

Retournez sur la console Server Manager, puis cliquez-ici :

Désactivez la protection renforcée d’Internet Explorer, puis cliquez sur OK :

Depuis le menu Démarrer, ouvrez Microsoft Edge :

Rendez-vous à l’adresse internet suivante pour télécharger la configuration ADMX pour FSLogix :

https://learn.microsoft.com/en-us/fslogix/how-to-install-fslogix#download-fslogix

Cliquez-ici pour démarrer le téléchargement sous format ZIP :

Ouvrez l’archive ZIP précédemment téléchargée :

Copiez le fichier fslogix.admx dans le dossier suivant :

%SYSTEMROOT%\PolicyDefinitions

Copiez le fichier fslogix.adml dans le dossier suivant :

%SYSTEMROOT%\PolicyDefinitions\en-US

Toujours sur la console Server Manager, ouvrez le gestionnaire des GPOs :

Créez une première nouvelle OU pour notre environnement contenant la redirection FSLogix :

Cliquez comme ceci pour ajouter une GPO à cette première OU nouvellement créée :

Nommez cette GPO :

Cliquez ici pour configurer cette nouvelle police :

Descendez dans l’arborescence suivante :

  • Computer Configuration
    • Policies
      • Administrative templates
        • FSLogix
          • Profile Containers

Activez et configurez les options suivantes :

Renseignez le chemin utilisé pour le montage de votre premier disque réseau Z :

\\jlostoprem.file.core.windows.net\fslogix-profile

Descendez d’un niveau dans l’arborescence :

Activez et configurez les options suivantes :

Comme ce premier environnement va contenir la redirection FSLogix, positionnez-vous sur l’arborescence suivante :

Activez et configurez l’option suivante :

Renseignez le même chemin utilisé pour le montage de votre premier disque réseau Z :

\\jlostoprem.file.core.windows.net\fslogix-profile

Copiez le fichier de redirection « redirections.xml » à la racine du dossier précédemment indiqué, afin de le rendre accessible à tous.

Voici pour rappel la configuration utilisée pour mon test :

<?xml version="1.0"  encoding="UTF-8"?>
<FrxProfileFolderRedirection ExcludeCommonFolders="0">
<Excludes>
<Exclude Copy="0">AppData\Roaming\Microsoft\Teams\media-stack</Exclude>
<Exclude Copy="0">AppData\Local\Microsoft\Teams\meeting-addin\Cache</Exclude>
<Exclude Copy="0">AppData\Local\Microsoft\Outlook</Exclude>
<Exclude Copy="0">AppData\Local\Microsoft\OneDrive</Exclude>
<Exclude Copy="0">AppData\Local\Microsoft\Edge</Exclude>
</Excludes>
<Includes>
<Include>AppData\Local\Microsoft\Edge\User Data</Include>
</Includes>
</FrxProfileFolderRedirection>

Afin de tester la redirection FSLogix, pensez à rajoutez une seconde OU en la liant à une nouvelle police FSLogix, avec exactement la même configuration, à l’exception de la redirection FSLogix :

Nous allons maintenant pouvoir tester l’impact de la configuration FSLogix, avec et sans la redirection XML.

Etape VI – Configurations des 2 Azure Virtual Desktop :

Pour cela, créez votre premier environnement AVD :

Cliquez sur Créer :

Renseignez les champs du premier onglet, puis cliquez sur Suivant :

Ajoutez une ou plusieurs machines virtuelles AVD, en les joignant à la première OU votre domaine Azure AD DS, puis cliquez sur Suivant :

Ajoutez un Espace de travail à votre environnement AVD, puis lancez la validation :

Une fois la validation passée, cliquez sur Créer :

Une fois votre premier environnement AVD correctement créé, lancez la création d’un second AVD, en joignant cette fois ci les VMs à la seconde OU votre domaine Azure AD DS :

Sur les deux pools d’hôtes AVD, ajoutez votre utilisateur de tests AVD afin de l’autoriser à s’y connecter :

Les deux environnements AVD sont enfin prêts, il vous reste plus qu’à vous connectez sur les deux environnement AVD en simultané.

Etape VII – Tests des 2 Azure Virtual Desktop :

Sur la session Azure Bastion de la machine de management d’Azure AD DS, ouvrez deux explorateurs de fichier pour constater la variation de taille sur les profils FSLogix :

Sur votre poste, ouvrez un navigateur privé, puis rendez-vous sur l’URL AVD suivante :

aka.ms/wvdarmweb

Renseignez les identifiants de votre utilisateur AVD de test :

Ouvrez, une par une, les deux sessions AVD disponibles :

Sur la machine virtuelle FSLogix avec la redirection, ouvrez l’explorateur Windows sur le chemin suivant :

C:\ProgramData\FSLogix\Logs\Profile

Ouvrez le fichier de log ci-dessous :

Recherchez le mot « redirections« , puis vérifiez juste en-dessous la bonne prise en compte de votre configuration XML :

Sur deux machines virtuelles de test AVD, notez pour l’utilisateur de test la présence systématique deux dossiers suivants :

De retour sur votre portail Azure, retournez sur la session Azure Bastion, puis constatez l’apparition des 2 dossiers de profil :

Détaillez les 2 dossiers, puis comparez la taille identique des 2 fichiers VHDX :

Sur chacune des sessions AVD, configurer le même compte Outlook :

Attendez quelques minutes le chargement complet d’Outlook :

Quelques minutes plus tard, retournez sur la session Azure Bastion et constatez l’écart de taille entre les deux profils FSLogix :

Continuez l’exercice avec la configuration du même compte OneDrive sur les deux sessions AVD :

L’écart continue encore de se creuser :

Lancez une synchronisation OneDrive forcée sur les deux sessions AVD :

Les 2 profiles grossissent fortement, quelques minutes plus tard, l’écart est proportionnellement moins important que précédemment :

Finissions la comparaison avec l’ouverture de Microsoft Teams sur les 2 sessions AVD :

Là encore les deux profils AVD continuent de grossir fortement :

Conclusion

Suite aux différents tests menés précédemment, il existe bien un gain dans la taille du profile FSLogix une fois la redirection configurée. Cela reste malgré tout modeste par profil, mais cela sera très conséquent pour plusieurs dizaines d’utilisateurs AVD.

Enfin, comme Dean le rappelle dans la vidéo ci-dessous :

  • Les profils FSLogix peuvent grossier sans limite, mais la réduction n’est plus possible
  • Il est important bien configurer la redirection en tenant compte des compatibilités !
  • La désactivation de la redirection est impossible mais prendra du temps pour s’appliquer sur tous les profils

Découvrez les Réseaux Virtuels Azure

Peu importe le type d’architecture déployée sur le Cloud, un réseau est indispensable pour son accès, son administration, mais aussi sa protection. Comme pour l’article dédié à Azure Migrate, ou encore celui consacré aux Machines virtuelles Azure, je vous propose un autre atelier portant les réseaux virtuels Azure. Il s’agit là encore d’un petit exercice que vous pouvez faire par vous-même.

Qu’est-ce qu’un réseau virtuel Azure ?

Le réseau virtuel permet à de nombreux types de ressources Azure, telles que les machines virtuelles (VM) Azure, de communiquer de manière sécurisée entre elles, avec Internet et avec les réseaux locaux. Un réseau virtuel est similaire à un réseau traditionnel que vous utiliseriez dans votre propre centre de données, mais avec les avantages supplémentaires de l’infrastructure Azure, tels que la mise à l’échelle, la disponibilité et l’isolation

Réseau virtuel Azure | Microsoft Learn

Le schéma ci-dessous montre la notion d’ensemble connecté grâce au réseau virtuel Azure :

J’avais déjà écrit plusieurs articles sur les réseaux virtuels d’Azure, voici les liens directs :

Enfin vous trouverez beaucoup d’excellentes vidéos sur YouTube sur les réseaux virtuels Azure. Je vous ai sélectionné les deux suivantes.

Enfin une vidéo simple et claire pour comprendre l’adressage IPv4 !

Comme toujours John nous sauve et nous explique le réseau virtual d’Azure en détail :

L’exercice que je vous propose ici est une reproduction quasi complète de celui proposé sur le GitHub de Microsoft. Comptez environ 1 heure pour le réaliser. J’ai uniquement transformé la tâche 6 de Microsoft par une autre plus intéressante : le peering.

Voici la liste des tâches à effectuer :

  • Tâche 1 : Créer et configurer un réseau virtuel
  • Tâche 2 : Déployer des machines virtuelles dans le réseau virtuel
  • Tâche 3 : Configurer les adresses IP privées et publiques des machines virtuelles
  • Tâche 4 : Configurer les groupes de sécurité du réseau
  • Tâche 5 : Configurer Azure DNS pour la résolution des noms internes
  • Tâche 6 : Configurer un peering de réseaux

Bien souvent, une ressource déployée entraîne un début de tarification par Microsoft. Il est donc important de correctement la dimensionner, et de la supprimer si cette dernière n’est plus utilisée.

Rappel des prérequis :

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

  • Un tenant Microsoft
  • Une souscription Azure active

Un script en PowerShell est exécuté durant cet atelier. Commencez par télécharger et extraire les fichiers scripts Microsoft, disponibles depuis leur GitHub juste ici.

Tâche 1 – Créer et configurer un réseau virtuel :

Sur votre portail Azure, recherchez le service Réseau Virtuel Azure :

Cliquez sur Créer pour commencer la configuration de votre réseau virtuel :

Créez un nouveau groupe de ressources, donnez un nom à votre réseau virtuel, choisissez la région Azure où votre réseau Azure va se déployer, puis passez sur l’onglet Suivant :

Un réseau virtuel dans une région Azure ne supporte que des composants de cette même région.
Il sera peut être nécessaire de créer plusieurs réseaux virtuels si plusieurs régions.

Modifiez l’espace d’adressage de votre réseau virtuel comme ceci, puis ajoutez un sous-réseau compris dans l’espace d’adressage :

Une fois la validation passée, cliquez sur Créer :

Environ 30 secondes plus tard, votre premier réseau virtuel est créé, cliquez ici pour modifier sa configuration :

Dans la section des sous-réseaux, cliquez ici pour en ajouter un second :

Vous avez fini la première tâche de cet exercice. Nous allons maintenant créer des machines virtuelles via un script au réseau virtuel précédemment créé.

Tâche 2 – Déployer des machines virtuelles dans le réseau :

Le déploiement d’une machine virtuelle est possible de plusieurs manières (Portail, Azure, PowerShell, CLI, …). Nous allons utiliser un script en PowerShell, mis à disposition par Microsoft pour déployer nos machines virtuelles de test.

Cliquez sur Azure Cloud Shell pour commencer sa configuration :

Dans la configuration avancée, utilisez le même groupe de ressources que celui créé pour le réseau virtuel, puis lancez la création du compte de stockage :

Une fois le compte de stockage créé et la ligne de commande apparue, téléversez les 2 fichiers suivant :

  • \Allfiles\Labs\04\az104-04-vms-loop-template.json
  • \Allfiles\Labs\04\az104-04-vms-loop-parameters.json

Ne sélectionnez qu’un seul fichier à la fois :

Attendez le message de succès du téléversement pour commencer le second :

Recommencez l’opération avec le second fichier :

Avant de lancer le script, il est nécessaire de générer une variable. Modifiez celle-ci au besoin selon le nom de votre groupe de ressources précédemment créé :

$rgName = 'vnet-exercice-1'

Exécutez la commande de variable dans votre Azure Cloud Shell :

Lancez la commande suivante votre Azure Cloud Shell pour déployer vos deux machines virtuelles de test sur votre premier réseau virtuel :

New-AzResourceGroupDeployment `
   -ResourceGroupName $rgName `
   -TemplateFile $HOME/az104-04-vms-loop-template.json `
   -TemplateParameterFile $HOME/az104-04-vms-loop-parameters.json

Le suivi du déploiement est possible via le menu suivant. Tant que la ligne de commande n’est pas à nouveau disponible dans Azure Cloud Shell : cela veut dire que le déploiement n’est pas encore terminé :

Quelques minutes plus tard, constatez le succès du déploiement de votre script par le retour d’information dans Azure Cloud Shell :

Retournez sur votre groupe de ressource et constatez la présence de nouveaux composants Azure :

Nous allons maintenant effectuer quelques modifications sur la configuration réseau sur nos 2 machines virtuelles.

Tâche 3 – Configurer les adresses IP privées et publiques des machines virtuelles :

Une interface réseau permet à une machine virtuelle Azure de communiquer avec des ressources sur Internet, sur Azure et locales.

Microsoft Learn

Les adresses IP privées et publiques sont attribuées aux interfaces réseau, qui sont à leur tour attachées aux machines virtuelles Azure. Mais, il est assez courant de se référer aux adresses IP attribuées aux machines virtuelles Azure.

Cliquez sur votre réseau virtuel :

Dans la section des Périphériques connectés, constatez la présence de deux cartes réseaux rattachées aux deux machines virtuelles créées via le script, puis cliquez sur la première :

Dans la section Configurations IP, cliquez sur la première configuration :

Associez une adresse IP publique via une création juste en dessous :

Donnez-lui un nom, sélectionnez le SKU Standard, puis cliquez sur OK :

Modifiez l’assignation de l’adresse IP en statique, puis sauvegardez la configuration IP :

Répétez la même opération sur la carte réseau de la seconde machine virtuelle :

Notez que l’adresse IP privée est différente puisque la seconde machine virtuelle se trouve sur le second sous-réseau de notre réseau virtuel :

Toujours sur votre portail Azure, recherchez le composant Machine Virtuelle :

Veuillez noter la présence de l’adresse IP publique affectée lors de la modification de la configuration réseau :

Cliquez comme ceci pour vous connectez en RDP sur la première machine virtuelle :

Téléchargez le fichier RDP proposé par Azure :

Cliquez sur Connecter :

Constatez la présence d’un message d’erreur vous refusant la connexion RDP :

Cela s’explique par le fait qu’Azure est un modèle sécurisé par défaut. Il faut autoriser le trafic entrant via un groupe de sécurité réseau (NSG) si une IP publique st de SKU standard.

Tâche 4 – Configurer les groupes de sécurité du réseau virtuel :

Un groupe de sécurité réseau contient des règles de sécurité qui autorisent ou rejettent le trafic réseau entrant et sortant vers différents types de ressources Azure. Pour chaque règle, vous pouvez spécifier la source et la destination, le port et le protocole.

Microsoft Learn

Toujours sur votre portail Azure, recherchez le composant Groupe de sécurité réseau :

Cliquez ici pour créer votre premier groupe de sécurité réseau :

Renseignez tous les champs, puis lancez la validation :

Attendez que la validation se termine, puis lancez la création en cliquant sur Créer :

Environ une minute plus tard, le déploiement est terminé lorsque le message suivant apparaît, puis cliquez alors ici :

Ajoutez une règle de sécurité entrante à votre NSG :

Choisissez le service RDP, la priorité à 300, autorisez le traffic sur cette règle, puis cliquez sur Ajouter :

Il ne vous reste plus qu’à associer le NSG à un sous-réseau :

Choisissez le sous-réseau subnet0, puis cliquez sur OK :

Il est même possible d’associer ce NSG à une carte réseau :

Associez la carte réseau de la seconde machine virtuelle à votre NSG comme ceci :

Recommencez la connexion RDP vers une des deux machines virtuelles :

Téléchargez le fichier RDP :

Cliquez sur Connecter :

Entrez les identifiants suivants, puis cliquez sur OK :

Cliquez sur Oui pour accepter le risque :

Une fois la session de bureau à distance ouverte, réduisez celle-ci pour retourner sur le portail Azure :

Tâche 5 – Configurer Azure DNS pour la résolution de noms internes :

Azure Private DNS gère et résout les noms de domaine dans le réseau virtuel sans nécessiter la configuration d’une solution DNS personnalisée.

Microsoft Learn

Recherchez le service zone DNS privée via la barre du haut :

Cliquez ici pour créer votre première zone DNS privée :

Renseignez les champs suivants, puis lancez la validation :

Une fois la validation passée, cliquez sur Créer :

Environ deux minutes plus tard, le déploiement est terminé lorsque le message suivant apparaît :

Dans votre zone DNS privée, rajoutez le réseau virtuel via un lien comme ceci :

Renseignez les champs, cochez la case puis cliquez sur OK pour lancer la création d’un lien entre la zone DNS privée et votre réseau virtuel :

Attendez quelques secondes :

Sur la page principale, constatez la présence de 2 nouveaux enregistrements DNS, correspondants aux 2 machines virtuelles :

Retournez sur la session de bureau à distance, ouvrez une fenêtre de ligne de commande, puis saisissez les commandes suivantes :

nslookup az104-04-vm0.contoso.org
nslookup az104-04-vm1.contoso.org

Observez les résultats obtenus :

Tâche 6 – Configurer un peering de réseaux :

L’appairage de réseaux virtuels vous permet de connecter en toute transparence deux ou plusieurs réseaux virtuels dans Azure. Les réseaux virtuels apparaissent comme un seul réseau à des fins de connectivité. Le trafic entre les machines virtuelles des réseaux virtuels appairés utilise l’infrastructure principale de Microsoft.

Microsoft Learn

Retournez sur le portail Azure et recherchez le service Machine virtuelles via la barre du haut :

Cliquez ici pour créer une nouvelle machine virtuelle Azure :

Choisissez un groupe de ressources et une région Azure différente des premières ressources :

Attendez que la validation se termine, puis lancez la création de la machine virtuelle en cliquant sur Créer :

Cliquez ici pour conserver la clef privée du serveur Linux :

Environ deux minutes plus tard, le déploiement est terminé lorsque le message suivant apparaît :

Notez l’adresse IP privée affectée à cette nouvelle machine virtuelle :

Retournez sur le premier réseau virtuel créé :

Cliquez ici pour ajouter un peering entre le premier et le second réseau virtuel :

La première partie du peering est consacré au réseau initial, on y retrouve 3 principales options :

  • Trafic vers le réseau virtuel distant
  • Trafic transféré à partir d’un réseau virtuel distant
  • Passerelle de réseau virtuel ou serveur d’itinéraires (Azure Route Server)

Ces mêmes options sont à configurer sur le réseau de destination :

  • Trafic vers le réseau virtuel distant
  • Trafic transféré à partir d’un réseau virtuel distant
  • Passerelle de réseau virtuel ou serveur d’itinéraires (Azure Route Server)

Quelques secondes plus tard, la double opération de connexion est effectuée, et le statut du peering passe en Connecté :

Retournez sur la session de bureau à distance, ouvrez une fenêtre de ligne de commande, puis saisissez la commande suivante :

ping -t 10.0.0.4

Constatez le bon retour de la commande Ping vers la machine Linux :

Ouvrez le second NSG créé lors de la création de la troisième machine virtuelle :

Ajoutez une nouvelle règle de sécurité entrante :

Configurez cette règle pour bloquer les paquets dédiés au Ping :

Attendez quelques secondes pour constater l’ajout de cette règle NSG de refus :

De retour sur la session de bureau à distance, le Ping fini par ne plus répondre à cause de cette règle NSG bloquante :

Retournez sur le portail Azure et supprimez la règle précédemment ajoutée :

Retournez sur la session de bureau à distance pour constater, environ une minute après, le retour des réponses aux requêtes Ping :

Conclusion :

Dans cet atelier conçu par Microsoft, vous avez :

  • Créé et configuré un réseau virtuel Azure
  • Déployé des machines virtuelles dans le réseau virtuel
  • Configuré des adresses IP privées et publiques les machines virtuelles
  • Configuré un groupe de sécurité réseau NSG
  • Configuré un Azure DNS pour la résolution de noms internes
  • Configuré un peering entre deux réseaux virtuels

J’espère que toutes opérations vous auront montré la facilité de déploiement de composants réseaux sur Azure. Enfin, pensez à supprimer les ressources une fois cet atelier terminé afin d’éviter les surcoûts inutiles :

Suppression des ressources Azure :

Sécurisez votre AVD grâce au Watermarking

Il s’agit d’un article que je voulais sortir il y a quelques temps déjà. Fin janvier, Microsoft a rajouté une fonctionnalité de Watermarking, encore en préversion, à son service Azure Virtual Desktop. En quelques mots, le Tatouage numérique date des années 90 : il permet de tracer la source de l’information ayant fuitée.

Ce procédé a d’ailleurs beaucoup été utilisé dans le monde du cinéma pour essayer d’endiguer le phénomène du piratage, sans grand succès.

Dans le cadre d’Azure Virtual Desktop, un filigrane est apposé sur le bureau de session utilisateur AVD. Ce filigrane comporte un QR code comportant des informations utiles aux équipes IT pour retrouver la session et donc l’utilisateur à l’origine d’une fuite de données sensibles.

Avec cette fonctionnalité, quelles sont les contraintes pour les utilisateurs ?

Quand cette fonctionnalité est mise en place sur votre environnement Azure Virtual Desktop, la connexion pourra être refusée car la connexion au bureau à distance nécessite un client supportant le watermarking (supérieure à 1.2.3317).

En revanche :

  • La connexion aux applications publiées ne passera pas par le watermarking.
  • Les connections directes aux machines virtuelles via l’application MSTSC ne sont pas impactées par le watermarking.

Comment installe-t-on cette fonctionnalité ?

Il est encore nécessaire de passer par une police locale ou via une police de groupe Active Directory. Voici d’ailleurs un lien vers le fichier de modèle administratif pour Azure Virtual Desktop.

Est-il possible de le faire via Intune ?

Ayant récemment sorti un article sur les GPOs via Intune, je me suis dit qu’il serait intéressant d’en faire de même pour mettre en place le Watermarking sur un environnement AVD.

J’ai donc testé cette idée avec le fichier ADMX correspondant :

J’ai sélectionné les fichiers ADMX et ADML de l’archive précédemment téléchargée sur mon poste :

Tout semblait bon, alors j’ai donc cliqué sur Créer :

Impossible de charger le fichier : une erreur de liée à une dépendance est apparue 🤷‍♂️

J’ai donc fait de même avec TerminalServer.admx, mais une autre dépendance est venue gâcher la fête :

La dépendance Windows.admx est bien passée sur Intune, mais la réinstallation de TerminalServer.admx bloqua toujours :

The given key was not present in the dictionary

A ce jour, je n’ai pas encore trouvé de méthode pour contourner cette erreur. Donc non, ce n’est pas encore possible de passer par Intune pour les GPOs AVD.

Afin d’en savoir un peu plus sur la mise en place du Watermarking, je vous propose une autre manière de tester cette nouvelle fonctionnalité d’AVD.

Mon environnement de test est donc basé sur un domaine managé (Azure Active Directory Domain Services).

Rappel des prérequis :

Pour réaliser cet exercice sur Azure Virtual Desktop, il vous faudra disposer de :

  • Un tenant Microsoft
  • Une souscription Azure active

Afin de tester la fonctionnalité voulue, j’ai déjà déployé un certain nombre de ressources dans mon environnement Azure.

Voici d’abord les ressources liées au service Azure Active Directory Domain Services :

J’ai également créé une machine virtuelle de jump, pour créer et configurer mes GPOs dans mon Azure AD DS :

J’ai ensuite créé un service Azure Virtual Desktop, composé de 3 machines virtuelles individuelles. Ces 3 VMs sont liées à mon domaine Active Directory managé :

J’ai aussi créé le service Azure Bastion afin de me connecter plus facilement aux machines virtuelles sans passer par une IP publique :

Etape I – Mise en place d’un Log Analytics workspace :

La configuration du QR code sur les sessions utilisateurs d’AVD ne nécessite pas directement de Log Analytics workspace. Seulement, la conversion de celui-ci en UPN utilisateur nécessite justement de stocker cette information quelque part.

Pour cela, recherchez dans votre portail le service Log Analytics workspace :

Créez votre Log Analytics workspace dédié à votre environnement AVD :

Remplissez les champs pour sa création, puis lancez sa validation :

Attendez quelques minutes que la ressource se créée :

Retournez sur votre environnement Azure Virtual Desktop pour commencer la configuration vers le Log Analytics workspace, La configuration doit bien se faire sur les 3 éléments que compose tout environnement AVD :

  • Pool d’hôtes
  • Espace de travail
  • Machines virtuelles

Cliquez comme-ceci pour configurer les 3 éléments à la suite :

En commençant par le Pool d’hôtes, choisissez le Log Analytics workspace créé précédemment, puis cliquez sur Configurer :

Cliquez sur Déployer pour installer la configuration du LAW au Pool d’hôtes :

Continuez la configuration du LAW avec l’Espace de travail :

Cliquez sur Déployer pour installer la configuration du LAW à l’Espace de travail :

Continuez la configuration du LAW avec les machines virtuelles AVD en les ajoutant :

Cliquez sur Déployer pour installer la configuration du LAW des machines virtuelles :

Ajoutez les métriques de Performances Windows :

Cliquez sur Déployer pour installer la configuration du LAW des métriques de Performances Windows :

Ajoutez les Evènements journalisés de Windows :

Cliquez sur Déployer pour installer la configuration du LAW des Evènements journalisés de Windows :

Quelques minutes plus tard, l’onglet Insights commence à s’alimenter en données de votre environnement AVD :

Etape II – Configuration de la Jump VM :

Afin de mettre en place une GPO pour notre environnement AVD, il est nécessaire de passer par l’Éditeur de stratégie de groupe dans notre domaine.

Pour cela, ajoutez les fonctionnalités liées aux GPOs, mais aussi les outils RSAT pour l’Active Directory :

Une fois l’installation des fonctionnalités terminée, lancez le gestionnaire AD de vos utilisateurs et machines :

Créez si besoin une OU contenant vos machines virtuelles AVD :

Toujours sur la même machine de Jump, pensez à désactiver le contrôle renforcé d’internet :

Rendez-vous ensuite sur le lien suivant, puis téléchargez le dernier fichier de modèles administratifs Azure Virtual Desktop :

Extrayez le contenu du fichier .cab et de l’archive .zip selon votre cas :

  • Si vous utilisez le magasin central pour la stratégie de groupe :
    • Copiez terminalserver-avd.admx dans le magasin central de stratégies de groupe de votre domaine, par exemple \contoso.com\SYSVOL\contoso.com\Policies\PolicyDefinitions,
    • Copiez ensuite le fichier terminalserver-avd.adml dans le sous-dossier en-us.
  • Si non :
    • Copiez et collez le fichier terminalserver-avd.admx dans le dossier PolicyDefinitions à %windir%\PolicyDefinitions.
    • Copiez ensuite le fichier terminalserver-avd.adml dans le sous-dossier en-us.

Dans mon cas, voici ce que cela donne :

Ouvrez le Gestionnaire de la stratégie de groupe :

Sur votre OU contenant vos machines virtuelles AVD, créez une nouvelle GPO :

Nommez votre GPO, puis cliquez sur OK :

Editez votre GPO pour configurer le Watermarking AVD :

Rendez-vous dans le menu suivant :

  • Computer Configuration
    • Administrative Templates
      • Windows Components
        • Remote Desktop Services
          • Remote Desktop Session Host
            • Azure Virtual Desktop

Cliquez sur la configuration de Watermarking :

Activez-là :

D’autres options sont également configurables si besoin :

Etape III – Testez la solution de Watermarking :

De retour sur votre portail Azure, redémarrer les machines virtuelles AVD pour prendre en compte la nouvelle GPO qui leur a été attribuée :

Suivez le redémarrage de celles-ci depuis la console AVD :

Un nouveau statut Eteint a d’ailleurs fait son apparition.

Quelques minutes plus tard, vérifiez que toutes vos machines AVD sont bien redémarrées et accessibles :

Ouvrez le client Windows Remote Desktop, dont la version est en 1.2.3317 ou ultérieure :

Entrez les identifiants d’un utilisateur AVD de test :

Constatez la présence immédiate du QR code au chargement du bureau à distance AVD :

La présence des QR codes continue également durant toute la durée de vie de la session AVD :

Etape IV – Identifiez la session AVD :

Une fois l’image contenant un QR Code en votre possession, il ne vous reste qu’à la scanner pour en obtenir l’identifiant de connexion AVD :

Pour votre test, utilisez votre smartphone ou un site gratuit comme celui-ci :

Copiez la valeur obtenue dans votre presse-papier :

Sur votre portail Azure, recherchez le service Azure Monitor :

Allez dans le menu Logs, puis lancez la requête suivante :

WVDConnections
| where CorrelationId contains "<connection ID>"

Constatez le résultat par vous-même :

Conclusion :

Cette fonctionnalité de Watermarking pourra prévenir la capture d’informations sensibles sur les sessions AVD. Sa mise en place facile et rapide permet de récupérer l’ID de connexion d’une session à distance, utile pour les administrateurs afin de tracer la session.

Intéressez-vous aux GPOs d’Intune

Intune, ou aussi appelé Microsoft Endpoint Manager, continue son bonhomme de chemin. Microsoft vient d’annoncer il y a peu la possibilité de créer des profils de configuration basés via l’intégration simple et rapide de fichiers ADMX/ADML directement depuis la console Intune.

Est-ce vraiment nouveau ?

Alors non, cela ne l’est pas vraiment, car il était déjà possible sur Intune depuis 2020. Mais de gros progrès ont été fait sur l’interface des GPOs, qui a grandement évolué depuis.

Voici anciennement ce qu’il était possible de faire avant cette évolution :

Comme vous le voyez, l’interface n’était pas encore très adaptée et le travail restait très manuel, voir laborieux.

Dans cet article, nous allons justement tester la nouvelle méthode pour les GPOs et les différentes options possibles grâce à celle-ci.

Pourquoi refaire ce qu’un domaine Active Directory sait déjà très bien faire ?

Microsoft continue sa voie dans la création d’une architecture IT 100% Cloud « allégée » de certains composants historiques, comme les Contrôleurs de domaine.

Prenons l’exemple d’Azure Virtual Desktop et ses machines virtuelles jointes à Azure AD et gérées sous Intune. Microsoft proposera bientôt une solution sans contrôleur de domaine, une fois qu’Azure AD sera en mesure de gérer certains protocoles d’authentification.

Comment fonctionne Intune pour créer des GPOs ?

Intune a la même base qu’un domaine Active Directory pour créer des configurations GPOs. La configuration de GPOs repose toujours sur le couple de fichiers (ADMX / ADML).

Ces fichiers doivent donc être importés dans la console Intune, pour créer par la suite un profil de configuration de type Modèle administratif.

Afin d’en savoir un peu plus, je vous propose ce petit exercice, basé sur une GPO dédiée à Mozilla Firefox.

Rappel des prérequis :

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

  • Un tenant Microsoft
  • Une ou des licences Intune
  • Un ou des postes Windows 10/11 de test :

Comme je ne dispose pas de postes de test, j’ai décidé de créer plusieurs machines virtuelles sur Azure, via le service Azure Virtual Desktop. Ces machines AVD sont de type individuel et sont attribuées à plusieurs utilisateurs Cloud provenant d’un tenant CDX.

Lors de la création de cet environnement AVD, j’ai spécifié que les machines virtuelles soit gérées via Intune. Je retrouve d’ailleurs cette information dans Azure AD :

Mais également dans la console Intune de mon tenant :

Etape I – Déployer Mozilla Firefox sur les machines de test :

Avant de pouvoir configurer une GPO depuis la console Intune, il est nécessaire d’installer une application en relations avec celle-ci. J’ai donc choisi Mozilla Firefox pour servir d’application de test.

Comme mes machines virtuelles AVD proviennent d’une image Windows 11 provisionnée par Microsoft, Mozilla Firefox n’y est pas installé par défaut.

Pour l’installer, rendez vous dans la console Intune, puis cliquez sur le menu Applications :

Cliquez ici pour ajouter votre nouvelle application Firefox :

Sélectionnez le type Nouvel Microsoft Store, puis continuez :

Recherchez l’application Firefox, puis continuez :

Cochez l’option ci-dessous, puis passez sur l’onglet Suivant :

Choisissez l’assignation qui vous convient, puis continuez :

Lancez la création de l’application :

Attendez une bonne dizaine de minutes, puis constatez, toujours dans le menu Applications, la bonne installation de Mozilla Firefox sur une ou plusieurs machines de test :

Connectez-vous sur une machine de test avec un utilisateur du tenant pour constater la bonne apparition de l’application Mozilla Firefox dans le menu Démarrer :

Ouvrez l’application Firefox, terminez sa configuration, puis constatez l’absence de configuration particulière :

Etape II – Importez la configuration ADMX :

Avant de pouvoir configurer des polices Firefox depuis la console Intune, il est nécessaire d’importer dans celle-ci le modèle ADMX. Ce dernier est accompagné du fichier ADML, utilisé pour la traduction dans une langue locale.

Mozilla met à disposition les fichiers ADMX/ADML sur leur page GitHub, disponible juste ici.

Téléchargez le fichier ZIP disponible sur cette page, ou via ce lien direct juste :

Lancez l’extraction des fichiers sur votre poste :

Dans le dossier issu de l’extraction de l’archive ZIP, constatez la présence pour Firefox du fichier ADMX :

Mais également du fichier ADML dans le sous-dossier de langue :

Vous noterez la présence deux autres fichiers, appelés aussi dépendances :

  • mozilla.admx
  • mozilla.adml

Ces deux dépendances sont nécessaires pour la configuration de Firefox. L’importation de fichiers Firefox avant ceux de Mozilla provoqueront une erreur Intune :

Retournez sur votre console Intune pour importer les deux fichiers Mozilla :

Cliquez sur Importer :

Sélectionnez les deux fichiers Mozilla, puis cliquez sur Suivant :

Cliquez ici pour démarrer l’importation :

Environ deux minutes et un rafraichissement plus tard, l’importation est réussie :

Recommencez la même opération avec les fichiers de configuration Firefox :

Environ deux minutes et un rafraichissement plus tard, la seconde importation est elle aussi réussie :

Etape II – Création du profil de configuration pour Firefox :

Intune est maintenant prêt pour la configuration de Firefox sur les postes de test. Il ne nous reste qu’à créer le profil de configuration, de type profil administratif, pour Firefox.

Pour cela, créez un nouveau profil comme ceci :

Donnez-lui un nom, puis cliquez sur Suivant :

Dans la section Configuration de l’ordinateur, recherchez le mot home, puis cliquez sur le résultat suivant :

Configurez la police avec une URL de votre choix, puis cliquez sur OK :

Cliquez sur Suivant :

Cliquez encore sur Suivant :

Choisissez l’assignation qui vous convient, puis continuez :

Lancez la création de la police :

Rafraichissez la page pour voir apparaître la nouvelle police dédiée à Mozilla Firefox :

Cliquez dessus et attendez son déploiement sur les machines de test :

Quelques minutes plus tard, les machines virtuelles reçoivent la police de configuration :

Etape III – Test de la GPO Firefox créée via Intune :

Retournez sur une machine de test, puis lancez Mozilla Firefox :

Constatez l’ouverture immédiate de la page de démarrage configurée dans votre GPO Intune :

Conclusion

Cette avancée ne semble pas extraordinaire, et pourtant, elle l’est ! Cet exercice montre avant tout la simplification du processus de création de GPOs via la console Intune, plébiscitée dans un grand nombre d’environnements Cloud. Nul doute que d’autres avancées sont encore dans les cartons de Microsoft pour Intune.

Créez vos premières machines virtuelles

Cet article est dans la continuité de l’article dédié à Azure Migrate publié la semaine dernière. Dans celui-ci, je vous propose un second exercice, à pratiquer par vous-même, sur 2 services de calcul Azure : machines virtuelles indépendantes et groupes de machines virtuelles identiques.

Cet atelier va vous aider à comprendre la création de ces deux composants. Dans cet article, l’explicatif n’est pas très détaillé car plusieurs articles sur ce blog en parlent déjà :

Cet exercice est disponible sur la page GitHub de Microsoft juste ici. Voici la liste des tâches que nous allons réaliser :

  • Machine virtuelle :
    • Tâche 1 : Déployer des machines virtuelles (Portail / Template)
    • Tâche 2 : Configurez un rôle IIS (Portail / Script)
    • Tâche 3 : Modifiez la taille et le stockage d’une machine virtuelle
  • Groupe de machines virtuelles identiques :
    • Tâche 4 : Déployez un groupe de machines virtuelles identiques
    • Tâche 5 : Configurez un rôle IIS
    • Tâche 6 : Modifiez la taille de VMs du groupe
    • Tâche 7 : Mise en place d’un plan d’autoscalling

Le schéma ci-dessous correspond aux ressources Azure que nous allons déployer.

Bien souvent, une ressource déployée entraîne un début de tarification par Microsoft. Il est donc important de correctement dimensionner les ressources, et de les supprimer si ces dernières ne sont plus utilisées.

Rappel des prérequis :

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

  • Un tenant Microsoft
  • Une souscription Azure active
  • Compte de stockage pour les scripts

Des scripts en PowerShell seront exécutés durant cet atelier. Commencez par télécharger et extraire les fichiers scripts disponibles sur le GitHub de Microsoft juste ici.

Retournez sur votre portail Azure, puis recherchez le service Compte de stockage Azure :

Commencez la création en remplissant tous les champs nécessaires comme ceci.

Notez que le nom du compte de stockage est unique à travers tout Azure, choisissez un nom au hasard et encore disponible.

Cliquez sur Créer pour commencer le processus de création des ressources :

Attendez que la création du compte de stockage se termine, puis cliquez ici pour le consulter :

Cliquez ici pour ajouter un premier container blob dans votre compte de stockage, puis nommez le Script :

Cliquez sur Téléverser pour ajouter votre premier blob, qui sera un script PowerShell :

Choisissez le fichier script nommé az104-08-install_IIS.ps1, issue de l’archive téléchargée depuis GitHub :

Cliquez sur Téléverser pour lancer l’opération de transfert vers Azure :

La tâche de préparation est maintenant terminée, nous allons pouvoir commencer la création de notre première machine virtuelle Azure.

Tâche I – Déployer des machines virtuelles (Portail / Template) :

Les machines Virtuelles Azure constituent l’un des types de ressources informatiques scalables et à la demande proposées par Azure. En règle générale, une machine virtuelle convient bien si vous avez besoin de davantage de contrôle de votre environnement informatique

Microsoft Learn

Toujours sur votre portail Azure, recherchez le composant Machine Virtuelle :

Remplissez les champs suivants, puis passez sur l’onglet Disques :

Sur cet onglet, laissez les valeurs par défaut et passez directement à l’onglet Réseau :

Modifiez la configuration réseau proposée en cliquant ici :

Remplacez les valeurs par défaut avec les masques de réseau et sous-réseau suivants, puis cliquez sur OK :

Ouvrez le port 80 utilisé pour le protocole HTTP, puis cliquez sur Suivant :

Retirer la case cochée pour éteindre automatiquement la machine virtuelle, changez les mises à jour Windows sur Manuel, puis cliquez sur Suivant :

Choisissez le compte de stockage créé précédemment pour sauvegarder le diagnostic de démarrage de votre machine virtuelle :

Une fois la validation passée, cliquez sur Créer :

Environ 2 minutes plus tard, la première machine virtuelle est créée.

Cliquez sur Template pour comprendre un peu mieux la configuration établie par vous-même :

Cliquez sur Déployer pour réutiliser ce template sur une seconde machine virtuelle :

Changez certaines variables du template afin que la nouvelle machine virtuelle soit créée indépendamment de la première :

  • Nom de l’interface réseau
  • Nom de l’adresse IP publique
  • Nom de la machine virtuelle,
  • Nom de la machine virtuelle1
  • Nom de l’ordinateur de la machine virtuelle
  • Mot de passe administrateur
  • Zone de disponibilité

Attendez que la validation se termine, puis lancez la création de la seconde machine virtuelle en cliquant sur Créer :

Environ deux minutes plus tard, le déploiement est terminé lorsque le message suivant apparaît :

Vos deux machines virtuelles sont maintenant déployées, les tâches suivantes de modification de la configuration seront effectuées directement sur celles-ci.

Tâche II – Configurez un rôle IIS (Portail / Script) :

Toujours sur votre portail Azure, recherchez le composant Machine Virtuelle :

Sélectionner la première machine virtuelle appelée az104-08-vm0 :

Cliquez comme ceci pour ajouter une extension :

Choisissez le type d’extension Script personnalisé, puis cliquez sur Suivant :

Cliquez-ici pour parcourir les fichiers disponibles sur votre compte de stockage :

Choisissez le compte de stockage créé dans l’étape 0, puis reprenez le fichier de script PowerShell téléversé précédemment :

Cliquez-ici pour importer le script en tant qu’extension sur la machine virtuelle :

Validez la configuration de l’extension :

Cliquez ici pour mettre en place l’extension sur la machine virtuelle az104-08-vm0 :

Retournez sur la page principale de la machine virtuelle, puis copiez l’adresse IP publique de celle-ci :

Ouvrez un onglet de votre navigateur, collez l’adresse IP dans la barre d’adresse, puis constatez le court message généré par IIS :

Toujours sur votre portail Azure, retournez sur la liste des machines virtuelles, puis sélectionnez la seconde VM appelée az104-08-vm1.

Dans le menu Exporter le template, cliquez sur la fonction Déployer :

Cliquez ici pour modifier le template précédemment généré :

Recherchez la ligne de 20 du template, puis positionnez votre curseur avant la parenthèse ouvrante :

Collez les lignes de codes ci-dessous

     {
         "type": "Microsoft.Compute/virtualMachines/extensions",
         "name": "az104-08-vm1/customScriptExtension",
         "apiVersion": "2018-06-01",
         "location": "[resourceGroup().location]",
         "dependsOn": [
             "az104-08-vm1"
         ],
         "properties": {
             "publisher": "Microsoft.Compute",
             "type": "CustomScriptExtension",
             "typeHandlerVersion": "1.7",
             "autoUpgradeMinorVersion": true,
             "settings": {
                 "commandToExecute": "powershell.exe Install-WindowsFeature -name Web-Server -IncludeManagementTools && powershell.exe remove-item 'C:\\inetpub\\wwwroot\\iisstart.htm' && powershell.exe Add-Content -Path 'C:\\inetpub\\wwwroot\\iisstart.htm' -Value $('Hello World from ' + $env:computername)"
           }
         }
     },

Une fois les lignes ajoutées, constatez la mise en forme comme l’image ci-dessous, puis cliquez sur Sauvegarder :

Cliquez-ici pour lancer la validation de votre template modifié :

Une fois la validation passée, cliquez sur Créer pour lancer la création des ressources modifiées :

Assez rapidement, le déploiement se termine :

Note : un template peut contenir des ressources Azure déjà existantes. La mise à jour de celles-ci n’intervient que sur les parties modifiées.

Retournez sur la page principale de la machine virtuelle, puis copiez l’adresse IP publique de celle-ci :

Ouvrez un onglet de votre navigateur, collez l’adresse IP dans la barre d’adresse, puis constatez le court message généré par IIS :

Vos deux machines virtuelles sont maintenant en place.

Dans la tâche 3, nous allons voir que d’autres modification de la configuration sont possibles sur les objets rattachés à celles-ci, comme ses disques, ou encore la puissance de la VM.

Tâche III – Modifiez la taille et le stockage d’une machine virtuelle :

Commençons par modifier la taille de la machine virtuelle. Pour cela, retournez sur la machine virtuelle, puis modifiez le SKU comme ceci :

Le redimensionnement occasionne un redémarrage de la machine virtuelle, comptez une minute environ pour retrouver le service opérationnel.

Continuez les modifications en ajoutant deux disques de données de 1024 GiB avec les noms suivants :

  • az104-08-vm0-datadisk-0
  • az104-08-vm0-datadisk-1

L’ajout ou la suppression de disque de données n’occasionne pas de redémarrage de la machine virtuelle.

Terminez les modifications en exécutant un script PowerShell directement sur la machine virtuelle via le portail Azure comme ceci :


New-StoragePool -FriendlyName storagepool1 -StorageSubsystemFriendlyName "Windows Storage*" -PhysicalDisks (Get-PhysicalDisk -CanPool $true)

New-VirtualDisk -StoragePoolFriendlyName storagepool1 -FriendlyName virtualdisk1 -Size 2046GB -ResiliencySettingName Simple -ProvisioningType Fixed

Initialize-Disk -VirtualDisk (Get-VirtualDisk -FriendlyName virtualdisk1)

New-Partition -DiskNumber 4 -UseMaximumSize -DriveLetter Z

Cette commande créée un lecteur Z : composé des deux disques nouvellement attachés :

Le résultat du script correctement exécuté doit ressembler à cela :

Toujours sur votre portail Azure, retournez sur la liste des machines virtuelles, puis sélectionnez la seconde appelée az104-08-vm1.

Dans le menu Exporter le template, cliquez sur la fonction Déployer :

Cliquez ici pour modifier le template précédemment généré :

Recherchez la ligne de 30 du template, puis modifier la valeur correspondante à la taille de la machine virtuelle par celle-ci :

"vmSize": "Standard_DS1_v2"

Recherchez la ligne de 51 du template, puis sélectionnez celle-ci pour la remplacer :

                 "dataDisks": [
                   {
                     "lun": 0,
                     "name": "az104-08-vm1-datadisk0",
                     "diskSizeGB": "1024",
                     "caching": "ReadOnly",
                     "createOption": "Empty"
                   },
                   {
                     "lun": 1,
                     "name": "az104-08-vm1-datadisk1",
                     "diskSizeGB": "1024",
                     "caching": "ReadOnly",
                     "createOption": "Empty"
                   }
                 ]

Une fois les lignes ajoutées, constatez la mise en forme comme l’image ci-dessous, puis cliquez sur Sauvegarder :

Cliquez-ici pour lancer la validation de votre template modifié :

Une fois la validation passée, cliquez sur Créer pour lancer la création des ressources modifiées :

Assez rapidement, le déploiement se termine :

Terminez les modifications en exécutant un script PowerShell directement sur la machine virtuelle via le portail Azure comme ceci :

New-StoragePool -FriendlyName storagepool1 -StorageSubsystemFriendlyName "Windows Storage*" -PhysicalDisks (Get-PhysicalDisk -CanPool $true)

New-VirtualDisk -StoragePoolFriendlyName storagepool1 -FriendlyName virtualdisk1 -Size 2046GB -ResiliencySettingName Simple -ProvisioningType Fixed

Initialize-Disk -VirtualDisk (Get-VirtualDisk -FriendlyName virtualdisk1)

New-Partition -DiskNumber 4 -UseMaximumSize -DriveLetter Z

Cette commande créée un lecteur Z : composé des deux disques nouvellement attachés :

Le résultat du script correctement exécuté doit ressembler à cela :

La première partie de cet atelier nous a permis de tester le déploiement de machines virtuelles via l’interface graphique du portail Azure, mais aussi par l’utilisation de scripts et de templates.

Cette seconde approche est intéressante pour l’automatisation des déploiements et évite des erreurs humaines dans la configuration manuelle de chaque composant.

Tâche IV – Déployez un groupe de machines virtuelles identiques :

Les groupes de machines virtuelles identiques Azure (ou Virtual Machine Scale Sets) vous permettent de créer et de gérer un groupe de machines virtuelles à charge équilibrée. Le nombre d’instances de machine virtuelle peut augmenter ou diminuer automatiquement en fonction d’une demande ou d’un calendrier défini.

Microsoft Doc

Sur votre portail Azure, recherchez le composant Groupe de machines virtuelles identiques :

Cliquez sur Créer :

Utilisez le même groupe de ressources que pour les tâches précédentes, puis nommez le groupe de machines virtuelles identique az10408vmss0 :

Remplissez les champs suivants, puis passez sur l’onglet Disques :

Sur l’onglet Disques, laissez les valeurs par défaut et passez directement à l’onglet Réseau.

Modifiez la configuration réseau proposée par défaut en cliquant ici :

Remplacez les valeurs par défaut avec les masques de réseau et sous-réseau suivants, puis cliquez sur OK :

Cliquez ici pour créer et personnaliser le Groupe de sécurité réseau (NSG) :

Ajoutez une seconde règle de traffic entrant :

Choisissez le service HTTP et nommez là custom-allow-http, puis cliquez sur Ajouter :

Cliquez sur OK pour valider la configuration de votre futur NSG :

Activez la création d’une adresse IP publique :

Cochez la case pour mettre en place un équilibreur de charge, puis passer à l’onglet Mise à l’échelle :

Indiquez à 2 le nombre initial d’instances puis passer à l’onglet suivant :

Choisissez le compte de stockage créé précédemment pour sauvegarder le diagnostic de votre groupe de machines virtuelles identiques, puis passez à l’onglet suivant :

Sur cet onglet, laissez les valeurs par défaut, puis passez directement à l’onglet Avancé:

Modifiez l’algorithme de diffusion utilisé, puis lancez la validation :

Une fois la validation passée, cliquez sur Créer :

Environ 2 minutes plus tard, le groupe de machines virtuelles identiques est créé :

Tâche V – Configurez un rôle IIS :

Comme pour les machines virtuelles indépendantes, cliquez comme ceci pour ajouter une extension :

Choisissez le type d’extension Script personnalisé, puis cliquez sur Suivant :

Choisissez le compte de stockage créé, puis reprenez le fichier de script PowerShell téléversé précédemment :

Retournez sur la page principale du groupe de machines virtuelles identiques, puis copiez l’adresse IP publique de celui-ci :

Ouvrez un onglet de votre navigateur, collez l’adresse IP dans la barre d’adresse puis constater le message d’erreur :

Pour remédier à cela, il est nécessaire de mettre à jour les machines virtuelles en place :

Attendez quelques minutes, puis rafraichissez la page de votre navigateur internet :

Tâche VI : Modifiez la taille de VMs du groupe :

Toujours sur votre groupe de machines virtuelles identiques, modifiez le SKU comme ceci :

Là encore, il est nécessaire de mettre à jour les machines virtuelles déjà en place :

Un clic sur une machine affiche bien la nouvelle taille :

Tâche VII – Mise en place d’un plan d’autoscalling :

Dans cette tâche, vous allez configurer un plan de mise à l’échelle du groupe de machines virtuelles identiques.

Pour cela, rendez-vous dans le menu suivant pour le mettre en place selon vos propres règles, puis ajoutez une première règle de mise à l’échelle :

Dans celle-ci, définissez la métrique utilisée pour votre mise à l’échelle, indiquez la valeur limite, puis cliquez sur OK :

Ajoutez une seconde règle de mise à l’échelle avec la même métrique utilisée, indiquez la même valeur limite, puis cliquez sur OK :

Indiquez les limites basses et hautes du nombre d’instances, puis sauvegardez votre plan de mise à l’échelle :

Constatez la suppression de la seconde instance créée précédemment :

Sur votre poste local, copiez le script ci-dessous en adaptant l’adresse IP publique nom du groupe de machines virtuelles :

$url = "http://20.203.242.169"
while ($true) {
try {
[net.httpWebRequest]
$req = [net.webRequest]::create($url)
$req.method = "GET"
$req.ContentType = "application/x-www-form-urlencoded"
$req.TimeOut = 60000

$start = get-date
[net.httpWebResponse] $res = $req.getResponse()
$timetaken = ((get-date) - $start).TotalMilliseconds

Write-Output $res.Content
Write-Output ("{0} {1} {2}" -f (get-date), $res.StatusCode.value__, $timetaken)
$req = $null
$res.Close()
$res = $null
} catch [Exception] {
Write-Output ("{0} {1}" -f (get-date), $_.ToString())
}
$req = $null

# uncomment the line below and change the wait time to add a pause between requests
#Start-Sleep -Seconds 1
}

Lancez le script PowerShell (une bonne dizaine de fois) sur votre poste et laissez-les tourner :

Constatez la création d’une seconde instance, voire d’une troisième :

Conclusion :

Dans cet atelier, vous avez :

  • Déployé des machines virtuelles en zone en utilisant le portail Azure et un template ARM
  • Configuré des machines virtuelles Azure en utilisant des extensions de machine virtuelle
  • Modifié la taille et le stockage pour les machines virtuelles Azure
  • Déployé un groupe de machines virtuelles Azure
  • Configuré le groupe de machines virtuelles en utilisant des extensions
  • Testé le plan de mise à l’échelle

J’espère que toutes opérations vous auront montré la facilité de déploiement à travers Azure. Enfin, pensez à supprimer les ressources une fois cet atelier terminé afin d’éviter les surcoûts :

Suppression des ressources Azure :

Azure Migrate – Exercice 1 Création du projet + démarrage de l’estimation :

Notre environnement de départ Hyper-V est prêt et fonctionnel. L’exercice 1 va nous permettre d’en savoir un peu plus sur la phase d’estimation.

Pour qu’Azure Migrate vous propose une architecture cible dans le Cloud, il a besoin de sonder les ressources à migrer. Le but est de connaître l’OS, la puissance utilisée ou encore les interactions réseaux.

Tâche 1 – Créez le projet Azure Migrate :

Nous allons pouvoir démarrer les étapes liées à l’estimation sur Azure Migrate. Pour cela, recherchez le service Azure Migrate grâce à la barre de recherche présente dans votre portail Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-214.png.

Sur la page d’accueil du service Azure Migrate, cliquez sur la première tuile à gauche :

L’attribut alt de cette image est vide, son nom de fichier est image-215.png.

Cliquez-ici pour créer votre Projet de migration. Celui-ci englobera les différentes phases (estimations et migration) de notre atelier :

L’attribut alt de cette image est vide, son nom de fichier est image-216.png.

Remplissez les champs en créant un nouveau groupe de ressources nommé AzureMigrateRG, si possible dans la même géographie Azure que celle dont dépend la région utilisée lors du déploiement :

L’attribut alt de cette image est vide, son nom de fichier est image-217-1024x416.png.

Pour info, la création de ce projet se retrouve bien dans la liste des ressources Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-218-1024x368.png.

La création de ce projet vous ouvre automatiquement celui-ci dans Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-219-1024x510.png.

Note : Remarquez bien la présence deux sections précédemment rappelées dans cet article : Estimation / Migration.

Tâche 2 – Déployez l’appliance d’Azure Migrate :

Pour estimer au mieux l’architecture Azure cible, Azure Migrate propose d’installer sur notre environnement Hyper-V une appliance sous forme de machine virtuelle.

Cette dernière va analyser les données relatives aux autres machines virtuelles sur notre environnement et remontera toutes les informations (métriques) nécessaires au service Azure Migrate via le protocole HTTPS.

Cliquez ici pour démarrer l’installation :

L’attribut alt de cette image est vide, son nom de fichier est image-220.png.

Choisissez Hyper-V, nommez votre appliance Azure Migrate SmartHotelAppl, puis cliquez ici pour générer une clef d’association (entre l’Appliance et votre projet d’Azure Migrate) :

L’attribut alt de cette image est vide, son nom de fichier est image-221-1024x334.png.

Une fois la clef générée, copiez la dans votre bloc-notes sans fermez cet onglet Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-222.png.

Note : Dans cet atelier Microsoft, le téléchargement de l’appliance d’Azure Migrate n’est pas nécessaire car cette dernière est déjà présente sur notre serveur Hyper-V.

Ouvrez un second onglet Azure, puis recherchez la machine virtuelle Hyper-V appelée SmartHotelHost :

L’attribut alt de cette image est vide, son nom de fichier est image-223.png.

Téléchargez le fichier RDP pour démarrer une session de bureau à distance :

L’attribut alt de cette image est vide, son nom de fichier est image-224.png.

Utilisez les identifiants RDP suivants :

L’attribut alt de cette image est vide, son nom de fichier est image-225.png.

Acceptez le risque sécuritaire :

L’attribut alt de cette image est vide, son nom de fichier est image-226.png.

Une fois la session à distance ouverte, ouvrez le gestionnaire Hyper-V :

L’attribut alt de cette image est vide, son nom de fichier est image-227-1024x539.png.

Cliquez ici pour créer l’Appliance d’Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-228.png.

Cliquez sur Suivant, puis choisissez le répertoire suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-229.png.

Cliquez sur Suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-230.png.

Cliquez encore sur Suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-231.png.

Cliquez encore sur Suivant en conservant ce choix :

L’attribut alt de cette image est vide, son nom de fichier est image-232.png.

Choisissez la connexion Azure Migrate Switch, puis cliquez sur Suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-233.png.

Cliquez sur Finaliser :

L’attribut alt de cette image est vide, son nom de fichier est image-234.png.

Cliquez ici pour démarrer l’appliance d’Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-235-1024x667.png.

Tâche 3 – Configurez l’appliance Azure Migrate :

Cette appliance a maintenant besoin d’une configuration pour remonter toutes les informations au bon projet créé dans Azure Migrate. Pour cela, connectez-vous à celle-ci :

L’attribut alt de cette image est vide, son nom de fichier est image-236-1024x667.png.

Une fois la fenêtre de connexion ouverte, acceptez les Termes et conditions :

L’attribut alt de cette image est vide, son nom de fichier est image-238.png.

Configurez le mot de passe du compte administrateur avec le mot de passe demo!pass123, puis cliquez sur Finaliser :

L’attribut alt de cette image est vide, son nom de fichier est image-240.png.

Note : Attention, bien souvent, cette machine virtuelle utilise un clavier américain. De ce fait le symbole du point d’exclamation est la combinaison MAJ+1.

Cliquez sur Connecter :

L’attribut alt de cette image est vide, son nom de fichier est image-242.png.

Changez le clavier au besoin, puis connectez-vous avec le mot de passe configuré juste avant : demo!pass123

L’attribut alt de cette image est vide, son nom de fichier est image-243-1024x653.png.

Attendez quelques minutes pour voir automatiquement s’ouvrir le navigateur internet suivant, puis acceptez les Termes et conditions :

L’attribut alt de cette image est vide, son nom de fichier est image-244-1024x693.png.

Collez la clef de votre projet Azure Migrate, puis cliquez sur Vérifier :

L’attribut alt de cette image est vide, son nom de fichier est image-245-1024x425.png.

Une fois vérifiée, attendez quelques minutes pour constater d’éventuelles mises à jour de l’appliance :

L’attribut alt de cette image est vide, son nom de fichier est image-246-1024x125.png.

Rafraichissez la page au besoin si le système vous le demande :

L’attribut alt de cette image est vide, son nom de fichier est image-247.png.

Authentifiez-vous avec votre compte Azure utilisé pour la création des ressources de cet atelier :

L’attribut alt de cette image est vide, son nom de fichier est image-248-1024x207.png.

Cliquez ici pour utiliser le mécanisme d’authentification Azure PowerShell pour l’appliance d’Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-249.png.

Collez le code donné précédemment, puis cliquez sur Suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-250.png.

Choisissez le compte Azure AD adéquat :

L’attribut alt de cette image est vide, son nom de fichier est image-252.png.

Cliquez sur Continuer pour autoriser l’authentification :

L’attribut alt de cette image est vide, son nom de fichier est image-253.png.

Fermez la fenêtre de navigation :

L’attribut alt de cette image est vide, son nom de fichier est image-254.png.

Attendez quelques minutes le temps de l’enrôlement de l’appliance dans Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-255-1024x153.png.
L’attribut alt de cette image est vide, son nom de fichier est image-256.png.

Afin que l’appliance puisse découvrir les machines virtuelles en fonctionnement sur Hyper-V cliquez ici pour ajouter les informations d’identification locales :

L’attribut alt de cette image est vide, son nom de fichier est image-257-1024x333.png.

Ajoutez l’utilisateur suivant, puis cliquez sur Sauvegarder :

L’attribut alt de cette image est vide, son nom de fichier est image-258.png.

Cliquez ici pour ajouter des informations sur les VMs d’Hyper-V à analyser :

L’attribut alt de cette image est vide, son nom de fichier est image-259-1024x332.png.

Indiquez l’adresse IP locale ou le FQDN de l’hôte Hyper-V ainsi que le nom de l’identifiant sauvegardé précédemment, puis cliquez sur Sauvegarder :

L’attribut alt de cette image est vide, son nom de fichier est image-260.png.

Vérifiez que la validation s’est effectuée avec succès :

L’attribut alt de cette image est vide, son nom de fichier est image-261-1024x259.png.

Comme nous n’avons pas besoin d’effectuer d’analyse d’applications particulières, désactivez cette fonction juste ici :

L’attribut alt de cette image est vide, son nom de fichier est image-262-1024x389.png.

Cliquez ici pour démarrer la découverte des machines virtuelles sur notre Hyper-V :

L’attribut alt de cette image est vide, son nom de fichier est image-263-1024x130.png.

Attendez quelques minutes, puis retournez sur votre projet Azure Migrate et actualisez :

L’attribut alt de cette image est vide, son nom de fichier est image-264-1024x516.png.

Quelques petits rafraichissements plus tard, les serveurs commencent à faire leur apparition :

L’attribut alt de cette image est vide, son nom de fichier est image-265.png.
Notez l’apparition de 5 serveurs.
Oui, l’appliance d’Azure Migrate se découvre elle-même ????.

Note Microsoft : Si le processus de découverte prend un temps excessif ou si les ressources sources ne permettent pas à l’appliance de découvrir les ressources dans un délai approprié, vous pouvez importer manuellement les systèmes via ce fichier CSV :

L’attribut alt de cette image est vide, son nom de fichier est image-266.png.

Tâche 4 – Créez l’estimation de la migration :

Une fois la découverte terminée, cliquez ici pour créer l’estimation des ressources Azure, avec pour cible des machines virtuelles Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-267.png.

Cliquez sur ce bouton pour affiner vos critères cibles des ressources Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-268.png.

Personnalisez tous les critères admissibles pour l’architecture cible sur Azure, puis sauvegardez les :

L’attribut alt de cette image est vide, son nom de fichier est image-269-1024x567.png.

Cliquez sur Suivant pour continuer sur la partie Serveur :

L’attribut alt de cette image est vide, son nom de fichier est image-270.png.

Donnez les noms SmartHotelAssessment et SmartHotel VMs, puis sélectionnez uniquement les 3 machines virtuelles suivantes :

L’attribut alt de cette image est vide, son nom de fichier est image-271.png.
La machine virtuelle smarthotelSQL1 ne sera migrée sur Azure.
Le serveur SQL sera migré vers le service PaaS SQL Database.

Terminez la création de l’estimation :

L’attribut alt de cette image est vide, son nom de fichier est image-272.png.

Relancez un rafraîchissement du projet Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-273.png.

Assez rapidement, constatez l’apparition de l’estimation de machines virtuelles Azure :

L’attribut alt de cette image est vide, son nom de fichier est image-274.png.

Cliquez dessus et constatez le premier niveau de détail d’informations :

L’attribut alt de cette image est vide, son nom de fichier est image-276-1024x265.png.
L’attribut alt de cette image est vide, son nom de fichier est image-277-1024x339.png.

Tâche 5 – Configurez les dépendances :

La transition vers un nouveau système nécessite des contrôles poussés pour éviter les oublis. C’est aussi le cas pour la partie réseau des infrastructures IT. Bien souvent, plein de connexions entre les services existent et il impératif de ne pas les oublier.

Azure Migrate permet de visualiser ces dépendances afin de les appréhender et de trouver une solution dans la future architecture Azure.

Pour que ces dépendances soient visibles, il est nécessaire de déployer un Azure Log Analytics workspace et des agents sur les machines virtuelles à migrer.

Cliquez sur le groupe présent dans l’estimation Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-278-1024x436.png.

Puis cliquez sur son nom SmartHotel VMs :

L’attribut alt de cette image est vide, son nom de fichier est image-279-1024x289.png.

Avant toute action, les 3 machines virtuelles intégrées à ce groupe sont encore en attente d’installation de l’agent pour afficher leurs dépendances :

L’attribut alt de cette image est vide, son nom de fichier est image-280.png.

Cliquez sur l’une d’entre elle, puis cliquez ici pour créer l’Azure Log Analytics workspace :

L’attribut alt de cette image est vide, son nom de fichier est image-281-1024x261.png.

Donnez-lui un nom unique et une région Azure, puis cliquez sur Configurer :

L’attribut alt de cette image est vide, son nom de fichier est image-282.png.

Attendez quelques minutes que Log Analytics workspace d’Azure se déploie, puis ouvrez un nouvel onglet Azure sur ce dernier pour récupérer plusieurs informations utiles à la configuration des agents de dépendances :

L’attribut alt de cette image est vide, son nom de fichier est image-283-1024x578.png.

Ces informations sont également disponibles sur la page des dépendances d’Azure Migrate :

L’attribut alt de cette image est vide, son nom de fichier est image-284-1024x357.png.

Copiez les 4 liens disponibles (agents + dépendances) :

Sur la connection RDP de votre machine Hyper-V, connectez-vous au serveur smarthotelweb1 via la console Hyper-V :

L’attribut alt de cette image est vide, son nom de fichier est image-285-1024x667.png.

Cliquez sur Connecter :

L’attribut alt de cette image est vide, son nom de fichier est image-286.png.

Renseignez le mot de passe administrateur demo!pass123 :

L’attribut alt de cette image est vide, son nom de fichier est image-287-1024x685.png.

Ouvrez Internet Explorer, puis copiez le premier lien pour installer Microsoft Monitoring Agent (Windows) :

L’attribut alt de cette image est vide, son nom de fichier est image-288.png.

Lancez l’installation, puis validez tous les écrans en cochant cette case :

L’attribut alt de cette image est vide, son nom de fichier est image-289.png.

Renseignez le Workspace ID et la clef qui lui est associée, puis cliquez sur Suivant :

L’attribut alt de cette image est vide, son nom de fichier est image-290.png.

Laissez cette option comme ceci, puis cliquez sur Suivant et lancez l’installation :

L’attribut alt de cette image est vide, son nom de fichier est image-291.png.

Une fois l’installation terminée, copiez le second lien pour installer l’agent de dépendance (Windows) :

L’attribut alt de cette image est vide, son nom de fichier est image-292.png.

Effectuez les mêmes opérations que précédemment sur la machine virtuelle nommée smarthotelweb2.

Pour la machine Linux appelée UbuntuWAF, l’installation des agents peut s’effectuer via une connexion SSH.

Depuis la machine Hyper-V, ouvrez l’exécuteur de commande Windows, puis saisissez celle-ci :

ssh demouser@192.168.0.8
L’attribut alt de cette image est vide, son nom de fichier est image-293.png.

Saisissez le mot de passe demo!pass123, puis Valider :

L’attribut alt de cette image est vide, son nom de fichier est image-295-1024x582.png.

Obtenez une élévation des privilèges par la commande suivante :

sudo -s

Saisissez le mot de passe demo!pass123, puis Validez :

L’attribut alt de cette image est vide, son nom de fichier est image-296-1024x582.png.

Saisissez la commande suivante pour télécharger l’agent Microsoft Monitoring Agent (Linux) en prenant soin de modifier au prélable les deux variables suivantes :

  • <Workspace ID>
  • <Workspace Key>
wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -w f4fda077-1c65-4680-93d4-e884d4164427 -s 4DFqRZKoi94QSe3piXhvr0vyIYk12n5zGiBJ4VDOoaWU9d4M0dBniKENBJBjyT6vgN/S8v23lXk/RYFxKDzsrw==
L’attribut alt de cette image est vide, son nom de fichier est image-298-1024x582.png.

A cette question, répondez Oui :

L’attribut alt de cette image est vide, son nom de fichier est image-297-1024x582.png.
L’attribut alt de cette image est vide, son nom de fichier est image-299-1024x582.png.

Redémarrer le service en prenant soin de modifier au prélable la variable suivante :

  • <Workspace ID>
/opt/microsoft/omsagent/bin/service_control restart f4fda077-1c65-4680-93d4-e884d4164427
L’attribut alt de cette image est vide, son nom de fichier est image-300-1024x582.png.

Entrez la commande suivante pour lancer le téléchargement de l’agent de dépendance :

wget --content-disposition https://aka.ms/dependencyagentlinux -O InstallDependencyAgent-Linux64.bin
L’attribut alt de cette image est vide, son nom de fichier est image-302-1024x582.png.

Lancez l’installation de l’agent de dépendance :

sh InstallDependencyAgent-Linux64.bin -s
L’attribut alt de cette image est vide, son nom de fichier est image-303-1024x582.png.

L’installation de tous les agents est maintenant terminée, retournez sur le projet d’Azure Migrate et constatez la disparition de l’alerte, après quelques minutes et plusieurs rafraîchissements :

L’attribut alt de cette image est vide, son nom de fichier est image-304.png.

Cliquez ici pour afficher les dépendances dans un rendu graphique :

L’attribut alt de cette image est vide, son nom de fichier est image-305-1024x104.png.
L’attribut alt de cette image est vide, son nom de fichier est image-306-1024x627.png.

Toujours avec moi ? Super !

Nous avons fini de mettre en place la partie Estimation d’Azure Migrate utilisée pour notre atelier.

Nous allons maintenant commencer la partie migration de la base de données SQL. Là encore, nous allons effectuer les mêmes deux phases :

  • Evaluation : analyse de la base SQL.
  • Migration : migration des schémas et des données à froid.

La seconde partie de cet atelier consistera à migrer la base de données SQL vers Azure SQL Database. Il s’agit donc de l’exercice 2, accessible juste ici.

Pour rappel, voici quelques liens utiles pour ne pas vous perdre :

Azure Migrate vous aide à … migrer 😁

C’est décidé, la migration vers le Cloud Azure est validée. Il ne vous reste plus qu’à tout migrer. Oui, mais comment faire ? Rassurez-vous ! Azure Migrate est un service qui va vous faciliter la vie dans le transfert de données et de ressources IT.

Bien évidemment, ce n’est pas la seule solution sur le marché. D’autres outils très spécialisés sont également très performants, et apporte une estimation plus poussée de l’infrastructure en place. Mais Azure Migrate est un outil gratuit et entièrement intégré à l’écosystème Azure. Rien que pour ces deux raisons, je le trouve très bien dans beaucoup de scénarios.

Dans cet article, nous allons répondre à quelques questions sur Azure Migrate, puis nous suivrons un atelier technique, proposé par Microsoft via leur plateforme GitHub, et dédié à ce service.

Concernant la migration vers le Cloud, beaucoup de vidéos sont déjà disponibles sur YouTube. Je vous en ai sélectionné 3, dont une en français :

Seyfallah Tagrerout

Que fait exactement Azure Migrate ?

En deux mots, Azure Migrate travaille sur deux phase, l’estimation et la migration.

Azure Migrate vous aide à découvrir, à évaluer et à migrer des applications, une infrastructure et des données de vos environnements locaux vers Azure. Vous pouvez suivre de manière centralisée la progression de votre migration grâce à plusieurs outils de Microsoft et de fournisseurs de logiciels indépendants (ISV).

Microsoft
John Savill

Comme son nom l’indique, Azure Migrate va vous accompagner dans le transfert de données à travers les différentes phases que compose une migration d’architecture IT.

Car oui, il ne s’agit pas uniquement d’un copier-coller de données vers Azure, et tout est terminé.

Il s’agit avant tout de recréer des ressources correctement configurées et fonctionnant avec des liaisons réseaux adaptées, de les protéger an niveaux des accès, et de les sauvegarder.

Vous l’avez compris, Azure Migrate vous aide pour un grand nombre d’actions dans le processus de migration IT. Mais certaines tâches sont toujours à prévoir en post-migration.

Comme annoncée plus haut, Azure Migrate décompose en deux principales actions :

  • Evaluation : analyse de l’environnement actuel et préparation des besoins Cloud.
  • Migration : migration des systèmes et des données, à froid ou à chaud.

Combien coûte Azure Migrate ?

Azure Migrate est disponible gratuitement sur Azure. Toutefois, des frais peuvent être facturés dans l’utilisation d’outils développés par des ISV tiers, comme par exemple :

Thomas Maurer

Pour vous faire une meilleure idée, rentrons dans le vif du sujet avec un atelier dédié à la migration vers Azure. Celui a été conçu par Microsoft et est sous la forme de 3 exercices liés, et sont disponibles sur GitHub.

Le but de cet atelier est de vous faire découvrir les différentes actions d’Azure Migrate par l’utilisation dans un cas réel de migration d’architecture IT.

Comme le montre le schéma ci-dessous, l’objectif est de migrer plusieurs serveurs virtuels actuellement gérés sous un serveur Hyper-V vers le Cloud Azure :

Il est même question de :

  • Convertir la machine virtuelle dédiée à la base de données SQL en un service PaaS (Platform-As-A-Service), appelé Azure SQL Database.
  • Convertir le serveur frontal Ubuntu en Application Gateway.

Comptez environ 3-4 heures pour réaliser la totalité des actions décrites dans le manuel. Comme les manipulations sont nombreuses, cet atelier a été découpé en exercices :

  • Exercice 0 : Déploiement des ressources de l’atelier
  • Exercice 1 : Création du projet + démarrage de l’estimation
  • Exercice 2 : Migration de la base de données SQL
  • Exercice 3 : Migration des serveurs et finalisation de la configuration Azure

Etape 0 – Rappel des prérequis :

Des prérequis sont nécessaires pour réaliser cet atelier dédié à Azure Migrate. En effet, la première étape est de simuler un environnement on-premise sur Azure. Ensuite, migrer celles-ci vers nouvelles ressources Azure. Pour tout cela, il nous faut :

  • Un tenant Microsoft
  • Une souscription Azure active

Exercice 0 – Déploiement des ressources de l’atelier Azure Migrate :

Tâche 1 – Déployer l’environnement de l’atelier :

Cette page GitHub est notre point de départ. Cliquez sur le lien de la page GitHub, ou sur le bouton de déploiement Azure ci-dessous pour créer des ressources simulant notre environnement on-premise et quelques ressources pour l’architecture cible Azure :

Vérifiez que tous les champs suivants sont renseignés. Je vous conseille de ne pas les changer (région ou mot de passe) car cela pourrait vous déranger par la suite.

Une fois la validation terminée, lancez la création des ressources :

Comme indiqué dans le document Microsoft, le déploiement de ces ressources de simulation on-premise est assez rapide : environ 6 à 7 minutes.

Deux groupes de ressources méritent votre attention :

Note : le déploiement de l’application est toujours sur la machine virtuelle Hyper-V via des scripts. Prévoyez au moins une bonne heure, le temps que le tout se termine.

Tâche 2 – Vérifiez l’environnement on-premise :

Une fois le déploiement et les scripts internes terminés, il est facile de contrôler le bon déploiement de l’application on-premise.

Rendez-vous pour cela dans le groupe de ressources SmartHotelHostRG, puis cliquez sur la machine virtuelle Hyper-V appelée SmartHotelHost :

Copiez l’adresse IP publique de la machine virtuelle Hyper-V :

Ouvrez votre navigateur internet, puis collez l’adresse IP publique dans la barre d’adresse. Un site web en HTTP doit s’ouvrir en affichant des réservations fictives d’hôtel :

Note : Les données affichées varient selon le jour ou la période, le tableau peut même être vide.

Tâche 3 – Vérifiez l’environnement cible sur Azure :

Un second tour rapide dans l’autre groupe de ressources Azure SmartHotelRG vous affiche quelques futures ressources exploitées par la suite, dont la base SQL utilisée comme service PaaS :

Si tout est bon pour vous, bravo, vous pouvez continuer sur le prochain exercice (Exercice 1) juste ici????. Pour rappel, voici quelques liens utiles pour ne pas vous perdre :

Azure Migrate – Exercice 3 Migration des serveurs + finalisation

Nous voilà dans la dernière ligne droite de cet atelier. Il ne nous reste qu’à migrer les machines virtuelles restantes vers Azure, grâce à Azure Migrate.

Comme dit plus haut, nous devons donc encore migrer les machines virtuelles suivantes, déjà estimées par Azure Migrate :

  • SmartHotelWeb1
  • SmartHotelWeb2
  • UbuntuWAF

Tâche 1 Créer un compte de stockage :

La transition des données des 3 machines virtuelles passe par un compte de stockage Azure. Pour cela, cliquez sur l’icône suivant dans la barre latérale gauche du portail Azure :

Cliquez-ici pour créer un compte de stockage Azure :

Renseignez tous les champs en prenant soin de reprendre la même région Azure que votre base de données SQL récemment migrée, puis cliquez sur Suivant :

Retirer la fonction de Soft Delete pour le stockage objet, puis passez directement à la validation :

Lancez la création de votre compte de stockage :

Attendez quelques secondes, puis constatez sa création :

Tâche 2 – Créer un point de terminaison privé :

Afin que l’application communique entre les serveurs et la base de données Azure SQL, nous avons besoin d’établir une seconde communication via un point privé.

Nous pourrions utiliser le point d’accès public à Azure SQL, mais le but est aussi d’apporter une couche de sécurité supplémentaire.

Dans le portail Azure, recherchez votre base de données SQL :

Cliquez sur le nom de votre serveur Azure SQL :

Comme pour la précédente tâche 4 de l’exercice 2, créez un point de terminaison privé :

Nommez-le différemment du premier point de terminaison privé, puis cliquez sur Suivant :

Validez les champs ci-dessous, puis cliquez sur Suivant :

Indiquez les éléments du futur réseau de votre application, puis cliquez sur Suivant :

Laissez à Oui la création d’une zone de DNS privée, puis cliquez sur Suivant :

Lancez la création du point de terminaison privé, puis attendez :

Cliquez ici pour voir les caractéristiques du nouveau point de terminaison privé :

Cliquez comme ceci pour retrouver le FQDN de ce point de terminaison privé :

Tâche 3 – Enregistrez l’hôte Hyper-V sur Azure Migrate :

Retournez sur votre projet d’Azure Migrate pour entamer les premières étapes de migration des serveurs. Cliquez ici pour ajouter le serveur Hyper-V dans le processus de migration :

Sélectionnez le type Hyper-V, puis choisissez la région de votre choix :

Cette étape créée les ressources Azure suivantes :

Copiez l’URL disponible juste ici :

Sur le même écran, cliquez-ici pour télécharger la clef de registre utilisée pour l’enrôlement.

Retournez sur la session de bureau à distance sur le serveur Hyper-V, lancez le navigateur Google Chrome, puis coller l’URL précédemment copiée :

Lancez l’installation de l’application Azure Site Recovery :

Lancez l’installation d’Azure Site Recovery :

Cliquez pour enregistrer le serveur Hyper-V :

Collez le fichier contenant la clef de registre d’Azure Site Recovery sur le bureau de la session Hyper-V :

Recherchez le fichier de clef de registre, puis cliquez sur Suivant :

Cliquez sur Suivant :

Attendez quelques minutes :

Une fois terminé, retournez sur le portail Azure, actualisez la page suivante plusieurs fois si nécessaire, puis finalisez l’enregistrement du serveur Hyper-V :

Attendez quelques minutes que le traitement se termine :

Retournez sur la page principale de votre projet d’Azure Migrate, puis constatez l’apparition des serveurs virtuels hébergés sur votre machine Hyper-V :

Tâche 4 – Activez la réplication de Hyper-V :

Les machines virtuelles présentes dans le serveur Hyper-V sont bien remontées dans Azure Migrate. Elles ont maintenant besoin d’être répliquées via Azure Site Recovery.

Pour démarrer la configuration, cliquez sur Répliquer :

Continuez la démarche :

Choisissez Hyper-V, puis cliquez sur Suivant :

Renseignez les champs, cochez les 3 machines virtuelles remontées depuis l’estimation Azure Migrate, puis cliquez sur Suivant :

Complétez tous les champs comme indiqué ici, puis cliquez sur Suivant :

Complétez les informations attendues des 3 machines virtuelles, dont la taille selon vos souhaits ou l’estimation d’Azure Migrate, puis cliquez sur Suivant :

Conservez tous les disques des 3 machines virtuelles, puis cliquez sur Suivant :

Cliquez sur Répliquer pour démarrer le processus :

La page d’accueil de votre projet d’Azure Migrate doit vous indiquer le démarrage de la réplication de 3 machines virtuelles :

Cliquez ici pour afficher plus d’informations sur la réplication :

Comme le status ci-dessous l’indique, le premier point de réplication est toujours en cours :

En attendant que cela se termine, une consultation dans le service Azure Site Recovery créé par Azure Migrate montre bien le démarrage de réplications des 3 machines virtuelles :

Le compte de stockage créé précédemment contient bien 3 contenaires, un par machine virtuelle, pour assurer le tampon dans la réplication :

Retournez sur Azure Migrate, puis attendez que le statut de réplication de vos 3 machines virtuelles change :

Tâche 5 – Configurez des adresses IP locales des VMs Azure :

L’affectation d’adresses IP locales sur les machines virtuelles Azure est nécessaire pour maitriser les liaisons réseaux entre les composants de notre architecture cible.

Cliquez sur la machine virtuelle smarthotelweb1 :

Cliquez ici pour éditer la configuration réseau :

Cliquez sur la carte réseau de la machine virtuelle :

Renseignez l’adresse IP locale 192.168.0.4, cliquez sur OK, puis sauvegardez la configuration :

Répétez ces étapes pour configurer les adresses IP privées des 2 autres machines virtuelles :

  • smarthotelweb2 : utilisez l’adresse IP privée 192.168.0.5
  • UbuntuWAF : utilisez l’adresse IP privée 192.168.0.8

Tâche 6 – Migration des 3 serveurs :

L’heure est maintenant venue de faire la migration des 3 machines virtuelles Hyper-V vers des machines virtuelles sur Azure.

Cliquez sur Migrer depuis votre projet Azure Migrate :

Sélectionnez les 3 machines virtuelles, puis cliquez sur Migrer :

Le portail Azure vous affiche 3 nouvelles notifications en relation avec votre action :

Un tour dans le journal des travaux d’Azure Migrate nous montre la mise en route de la migration :

L’ordre d’arrêt donné par Azure Migrate a bien été respecté par Hyper-V :

Un peu moins de 10 minutes plus tard, le journal des évènements d’Azure Migrate nous indique le succès de la migration Azure :

L’affichage des machines virtuelles montre les 3 nouvelles VMs Azure selon les configurations établies dans Azure Migrate :

Il ne nous reste qu’à modifier la configuration de l’application pour envoyer les requêtes vers la nouvelle adresse IP locale de la base de données SQL.

Tâche 7 – Configurez la connexion à la base de données :

Dans le cadre de notre atelier, la modification de l’adresse IP mémorisée pour la base de données SQL se fait directement sur la machine web. Il vous faut donc s’y connecter.

L’atelier Azure Migrate contient le déploiement du service Azure Bastion. Pour rappel, voici l’utilisé de ce service pour se connecter à une machine virtuelle Windows ou Linux :

Avant de s’y connecter, récupérez les éléments de connexion de la base de données Azure SQL :

Copiez la chaîne de connexion :

Retournez sur la liste des machines virtuelles, puis cliquez sur smarthotelweb2 pour vous y connecter via Azure Bastion :

Une fois connecté dans la session de bureau à distance sur la machine virtuelle smarthotelweb2, ouvrez l’explorateur de fichier dans le dossier suivant :

C:\inetpub\SmartHotel.Registration.Wcf

Ouvrez le fichier Web.config avec Notepad, puis remplacer comme ceci sans oublier de modifier le mot de passe demo!pass123 :

Avant :

Après :

Sauvegardez le fichier de configuration Web.config :

Inutile d’effectuer la même opération sur la machine smarthotelweb1.

Pour que la résolution du nom de la base de données SQL se fasse bien, retournez sur la zone DNS privée créée par le point de terminaison privé, puis ajoutez le réseau virtuel contenant les 3 machines virtuelles :

Configurez le lien comme ceci, puis cliquez sur OK :

Tâche 8 – Configurez l’adresse IP publique et testez l’application SmartHotel :

La tâche 8 de l’atelier Azure Migrate vous propose de remplacer le serveur Linux par un service PaaS d’Azure : Application Gateway avec Web Application Firewall (WAF) juste ici.

Pour ma part, je vous propose de conserver le serveur Linux et de lui rajouter une adresse IP publique.

Pour cela, rendez-vous dans la configuration réseau de votre machine virtuelle Linux UbuntuWAF, puis cliquez sur sa carte réseau :

Cliquez sur la configuration IP de la carte réseau :

Ajoutez une adresse IP publique, cliquez sur OK, puis sauvegardez :

Retournez sur la page de la machine virtuelle UbuntuWAF, puis copier l’adresse IP publique :

Ouvrez un nouvel onglet de votre navigateur internet, puis constatez le bon fonctionnement de l’application :

L’application est bien fonctionnelle et les liaisons entre les composants Azure sont bien établies.

Tâche 9 – Étapes post-migration :

Un certain nombre d’étapes de post-migration doivent être réalisées avant que les services migrés soient prêts à être utilisés en production. Ces étapes comprennent :

  • L’installation de l’agent Azure VM
  • Nettoyage des ressources de migration
  • Activation de la sauvegarde et de la reprise après sinistre
  • Le chiffrement des disques de la VM
  • S’assurer que le réseau est correctement sécurisé
  • S’assurer que la bonne gouvernance des abonnements est en place, comme le contrôle d’accès basé sur les rôles et la politique Azure.
  • Examiner les recommandations d’Azure Advisor et du Security Center.

Conclusion

Cet atelier est un bon moyen de tester et comprendre le service Azure Migrate avec une architecture IT simple via un exercice facilement réalisable par tous.

Ayant réalisé celui-ci plusieurs fois, je vous conseille d’en faire de même afin de bien comprendre comment Azure Migrate opère par le biais de plusieurs services, compte le compte de stockage ou Azure Site Recovery.

Tâche 10 : Nettoyer les ressources Azure

Si vous ne supprimez pas les ressources créées pendant l’atelier, la facturation se poursuivra.

Pour cela, supprimez les groupes de ressources suivants :

  • SmartHotelHostRG contenant le SmartHotelHost.
  • BastionRG contenant le Bastion Azure.
  • SmartHotelRG contenant les VM migrées
  • AzureMigrateRG contenant les ressources Azure Migrate

Azure Migrate – Exercice 2 Migration de la base de données SQL

La seconde partie de cet atelier consiste à basculer la base de données SQL vers Azure. Il s’agit donc de l’exercice 2.

Nous aurions pu migrer la machine virtuelle contenant le serveur SQL vers Azure en utilisant une machine virtuelle Azure (IaaS). Mais l’atelier se veut innovant et vous propose une migration vers le service PaaS, Azure SQL Database.

Il existe de nombreux avantages à l’utilisation d’un service managé par Microsoft, comme

  • Réduction possible de certains coûts.
  • Gestion par Microsoft des mises à jour du serveur SQL.

Par contre, certaines fonctionnalités sont inaccessibles dans un service PaaS. Prenez le temps de comparer les solutions disponibles avec vos besoins.

Pour réaliser la migration de données vers Azure, nous allons utiliser le service Azure Database Migration Service. Celui-ci propose deux niveaux de tarification :

  • Standard : prend en charge les migrations hors connexion (également appelées « migrations uniques »). Le niveau tarifaire Standard, qui offre des options à 1, 2 et 4 vCores, est généralement disponible gratuitement pour les clients.
  • Premium : prend en charge les migrations hors connexion et en ligne (également appelées « migrations continues ») pour les charges de travail critiques pour l’entreprise nécessitant un temps d’arrêt minimal.

Tâche 1 : Enregistrez le fournisseur de ressources Microsoft.DataMigration

Avant de pouvoir effectuer la migration de la base de données, il est nécessaire de vérifier l’enregistrement du fournisseur de ressources adéquat.

En effet, Azure Database Migration Service fonctionne avec le fournisseur de services Microsoft.DataMigration.

Allez sur la page de votre souscription Azure, recherchez le menu Fournisseurs de ressources et enregistrez Microsoft.DataMigration si cela n’est pas déjà fait :

Note : Cela peut également être fait par une commande Power Shell via Azure Cloud Shell :

Register-AzResourceProvider -ProviderNamespace Microsoft.DataMigration

Attendez quelques minutes, puis réactualisez la page :

Tâche 2 – Créez le service Database Migration Service :

Les fournisseurs de services sont eux aussi divisés en plusieurs ressources. L’activation antérieure d’un fournisseur de ressources n’active pas systématiquement tous leurs nouveaux services. C’est pour cela que les fonctions Désenregistrer / Enregistrer existent.

Dans le doute, vous pouvez le Désenregistrer :

Puis l’Enregistrer à nouveau :

Ce contrôle d’enregistrement des services d’un fournisseur de ressources est possible via une commande PowerShell :

Get-AzResourceProvider -ProviderNamespace Microsoft.DataMigration | Select-Object ProviderNamespace, RegistrationState, ResourceTypes

Ensuite, utilisez la base de recherche du portail Azure pour retrouver le service Azure Database Migration Service :

Cliquez sur Créer :

Pour cet atelier, utilisez le Service de migration de base de données classique :

Remplissez les champs suivants en lui donnant le nom SmartHotelDBMigration, puis allez sur l’onglet Réseaux :

Sélectionnez le réseau / sous réseau suivant, puis pour lancer la création :

Attendez quelques minutes que la création se termine :

Une fois le service créé sous Azure, nous allons avoir besoin d’un outil pour gérer la partie migration au niveau des serveurs on-premise. La tâche 3 va vous montrer cela.

Tâche 3 – Evaluez la base de données à l’aide de Data Migration Assistant :

Data Migration Assistant (DMA) est lui aussi un outil d’estimation, mais dédié aux bases de données.

Retournez sur le service Azure Migrate, puis cliquez-ici pour ajouter l’outil DMA :

Sélectionnez-le, puis cliquez sur Ajoutez l’outil :

Celui-ci apparaît alors dans la section base de données sous votre projet Azure Migrate :

Faites-en de même pour l’outil DMA dans la partie Migration :

Retournez sur la connexion RDP de la machine virtuelle Hyper-V on-premise SmartHotelHost, puis ouvrez le menu Démarrer pour lancer Google Chrome :

Allez sur la page web suivante, puis téléchargez la version Runtime .NET v4.8 :

Ouvrez l’exécutable d’installation :

Attendez que la décompression se termine :

Acceptez les Termes et Conditions, puis lancez l’installation :

Attendez quelques minutes :

Terminez l’installation, puis acceptez le redémarrage de la machine Hyper-V :

Retournez dans le menu Bases de données d’Azure Migrate, puis cliquez sur Estimer :

Copiez l’URL de téléchargement de DMA :

URL disponible juste ici.

Attendez deux minutes environ, puis reconnectez-vous à la machine Hyper-V en RDP :

Réouvrez Google Chrome, puis rentrez l’URL de DMA précédemment copiée pour lancer son téléchargement :

Lancez l’installation de DMA, puis cliquez sur Suivant :

Acceptez les Termes et conditions :

Lancez l’installation de DMA :

Terminez l’installation sans cocher la case de lancement de DMA :

Toujours depuis la machine virtuelle Hyper-V, ouvrez l’explorateur de fichiers, puis rendez-vous dans le dossier suivant :

C:\Program Files\Microsoft Data Migration Assistant

Ouvrez le fichier Dma.exe.config avec Notepad :

Recherchez la chaîne de texte Azure Migrate :

Retirez les commentaires sur la clef EnableAssessmentUploadToAzureMigrate comme ceci, puis sauvegardez le fichier Dma.exe.config :

Avant :

<!-- <add key="EnableAssessmentUploadToAzureMigrate" value="true"/> -->

Après :

<add key="EnableAssessmentUploadToAzureMigrate" value="true"/>

Toujours sur votre session RDP de la machine Hyper-V, lancez le programme DMA depuis l’icône ajouté automatiquement sur le bureau :

Cliquez-ici pour démarrer un nouveau projet DMA :

Nommez le projet SmartHotelAssessment, puis configurez-le comme ceci :

Cliquez sur Suivant :

Créez une connexion au serveur SQL avec le mot de passe demo!pass123 :

Cochez les deux cases, puis cliquez sur Ajouter :

Démarrez l’estimation de la base de données SQL on-premise :

Attendez que le traitement se termine :

Quelques secondes plus tard, car la base de données de l’atelier est très petite, l’estimation est terminée, cliquez sur Téléverser dans Azure Migrate :

Cliquez sur Connecter dans la section Azure :

Renseignez votre identifiant Azure utilisé pour cet atelier :

Remplissez les champs, puis cliquez sur Téléverser :

Retournez sur Azure Migrate, puis lancez un rafraîchissement de la page :

Constatez l’apparition de l’estimation de la base de données SQL :

L’estimation de la base de données SQL est bien incorporé à notre projet Azure Migrate. Fort de ce résultat, il nous est maintenant possible de la migrer grâce à DMS.

Tâche 4 : Créez un projet de migration DMS

Ayant créé le service Azure Database Migration Service (DMS) en Tâche 2, nous allons pouvoir migrer notre base de données SQL grâce à lui. Avant cela, nous avons besoin d’établir une connexion réseau entre le futur serveur SQL (Azure SQL) et Azure DMS.

Pour cela, depuis le portail Azure, rendez-vous dans le groupe de ressources SmartHotelRG, puis sélectionnez votre serveur SQL :

Dans la section Réseaux, cliquez sur Accès privé pour en ajouter un nouveau :

Donnez-lui le nom SmartHotel-DB-for-DMS, puis cliquez sur l’onglet Ressource :

Remplissez les champs comme ci-dessous, puis cliquez sur l’onglet Réseau virtuel :

Sélectionnez le réseau virtuel DMSvnet, puis cliquez sur l’onglet DNS :

Créez une nouvelle Zone DNS privée, puis continuez :

Lancez la création :

Une fois la création terminée, vérifiez dans la zone DNS privée que le serveur de la base de données Azure SQL a bien l’adresse IP privée 10.1.0.5 :

Pour des questions de sécurité, retirez l’accès publique au serveur Azure SQL, que l’on n’utilisera pas dans notre atelier :

Retournez sur le service Azure Database Migration Service (DMS), puis cliquez sur Nouveau projet de migration :

Renseignez les champs du projet comme ceci, puis cliquez sur Créer :

Renseignez les informations sur la source SQL avec le mot de mot de passe demo!pass123 :

Le service DMS se connecte à l’hôte Hyper-V, qui a été préconfiguré avec une règle NAT pour transmettre les demandes SQL entrantes (port TCP 1433) à la VM SQL Server.

Choisissez la seule base de données disponible :

Renseignez le nom unique votre serveur Azure SQL avec le mot de passe demo!pass123 :

Cliquez sur Sauvegarder le projet :

La création du projet dans DMS est maintenant terminée, il nous reste plus qu’à passer à l’action pour la migration de données.

Cette opération va s’effectuer sur deux tâches :

  • migration du schéma des tables de la base de données, puis migration des données en elles-mêmes.

Il est donc bien possible d’effectuer les deux actions en une, ou aussi d’espacer ces deux tâches dans le temps, pour migrer les données définitive le jour J.

Tâche 5 – Migrez le schéma de la base de données SQL :

Comme indiqué précédemment, cette étape est nécessaire pour le transfert de données. Pour cela, cliquez-ici pour créer et démarrer cette nouvelle activité :

La configuration étant déjà faite lors de la création du projet, il ne vous reste qu’à remettre le mot de passe de l’utilisateur sa du serveur SQL demo!pass123, puis cliquez sur Suivant :

Pour la base de données cible, même mot de passe de l’utilisateur sa du serveur SQL demo!pass123, puis cliquez sur Suivant :

Sélectionnez la base de données cible et reprenez le schéma de la source, puis cliquez sur Suivant :

Nommez l’activité SchemaMigration, puis lancez le démarrage de celle-ci :

Suivrez l’évolution de celle-ci, cliquez sur Rafraîchir :

Environ une minute plus tard, vérifiez que le statut de l’activité change en Complété :

Sur la base de données Azure SQL Database, vous pouvez voir le tout petit pic provoqué par cette activité :

Il nous reste maintenant qu’à migrer les données vers la base de données Azure SQL Database. Comme rappelé plus haut, la version gratuite d’Azure Database Migration Service ne nous autorise que des migrations à froid. Ce qui ira très bien dans le cadre de notre atelier.

Tâche 6 – Migrez les données sur site :

Toujours dans Azure Database Migration Service, cliquez-ici pour démarrer la seconde activité de migration des données :

De la même façon que lors de la première activité, la configuration est déjà faite, il ne vous reste qu’à remettre le mot de passe de l’utilisateur sa du serveur SQL demo!pass123, puis cliquez sur Suivant :

Pour la base de données cible, toujours le même mot de passe de l’utilisateur sa du serveur SQL demo!pass123, puis cliquez sur Suivant :

Vérifiez que la base de données de notre application d’hôtellerie est bien cochée, puis cliquez sur Suivant :

Pour la base de données cible, même mot de passe que pour l’utilisateur sa : demo!pass123, puis cliquez sur Suivant :

Sélectionnez la base de données cible, puis cliquez sur Suivant :

Ne cochez qu’une seule table sur deux car seule celle-ci contient les réservations d’hôtels :

Nommez l’activité DataMigration, puis lancez le démarrage de celle-ci :

Environ une minute plus tard, vérifiez que le statut de l’activité change en Complété :

Si tout s’est bien passé, les données de notre application sont maintenant chargées dans Azure SQL Database. Il ne nous reste qu’à retirer la connection privée établie entre DMS et Azure SQL Database.

Retournez sur le serveur Azure SQL et retirer cette liaison comme ceci :

La migration des données est la première véritable étape de transfert de notre architecture dans Azure.

Pourquoi avoir transféré les données avant les autres serveurs ?

Car le transfert de serveur sera directement précédé de la bascule de notre application. Et comme l’application a besoin des données pour fonctionner, c’est pour cela que les opérations sont ordonnées dans cet ordre.

Nous voilà dans la dernière ligne droite de cet atelier. Il ne nous reste qu’à migrer les machines virtuelles restantes vers Azure, toujours grâce à Azure Migrate : Exercice 3.

Pour rappel, voici un rappel des liens de cet atelier pour ne pas vous perdre :