Attendu depuis longtemps par la communauté Azure Virtual Desktop, Azure AD Join est enfin là ! Lancé il y a seulement quelques jours en public preview, la possibilité de se passer d’un Active Directory pour environnement AVD permet d’envisager certains projets avec une architecture 100% Cloud. Dans cet article, nous allons voir ensemble cette fonctionnalité et les bénéfices apportés par cette dernière.
Point important : cette amélioration pose un souci pour l’utilisation de la gestion des profiles via FSLogix, car l’utilisation d’un partage de fichier nécessite une authentification SMB, non possible pour l’instant via la gestion des identités Azure AD.
Introduction
Gestion des identités sur Azure Virtual Desktop : Rappel de l’existant
Jusqu’à présent, un environnement Azure Virtual Desktop (anciennement Windows Virtual Desktop) nécessitait de joindre les machines virtuelles Azure à un domaine Active Directory. Ce domaine pouvait provenir d’un Windows Server, ayant le rôle d’Active Directory sur un machine virtuelle Azure, ou via le service de domaine managé Azure AD DS.
Merci à Dean pour cette explication claire sur la gestion des identités sous AVD.
Qu’est-ce qu’un périphérique joint à Azure AD ?
La jonction Azure AD est destinée aux organisations axées en priorité ou uniquement sur le cloud. Toute organisation peut déployer des appareils joints Azure AD, quels que soient leur taille et leur secteur d’activité. La jonction Azure AD fonctionne même dans un environnement hybride et permet l’accès aux applications et ressources locales et cloud
Attention, il est possible de joindre des machines en Windows 10 à Azure AD, à l’exception de Windows 10 Famille.
Cette jointure à Azure AD est prévu à l’origine pour des entreprises ne disposant pas d’une infrastructure Windows Server Active Directory locale.
Dans le cas contraire, il est malgré tout possible de fonctionner de manière hybride. L’avantage sera de protéger les appareils Windows 10, tout en conservant l’accès aux ressources locales qui nécessitent une authentification locale. Dans ce cas précis, nous parlerons alors des machines jointes à Azure AD hybride. Ces appareils sont joints à votre annuaire Active Directory local et à votre Azure AD.
Pourquoi se passer d’un contrôleur de domaine pour AVD ?
Le premier argument est le coût ! Beaucoup de projets Azure Virtual Desktop sont petits et concernent un petit nombre d’utilisateurs en Remote Desktop. L’ajout d’un domaine sur des VMs ou via un domaine managé augmente la facture environ plus une centaine d’euros par mois .
Enfin, la gestion des machines AVD peut également se faire via Intune (Endpoint Manager). Que vous utilisiez des machines virtuelles partagées ou individuelles pour AVD, Intune peut gérer les deux ????Un précédent article en parle et explique le processus d’intégration sur Intune pour les machines AVD partagées ici.
Vue générale des fonctionnalités d’Intune (MEM + MAM).
Déploiement d’un AVD utilisant Azure AD
On y est ! On va détailler ici, étapes par étapes, la création d’un environnement Azure Virtual Desktop en ne disposant d’aucun domaine Active Directory en place. Pour rappel, à l’heure où ces lignes sont écrites, la fonctionnalité de jointure avec Azure AD est toujours en public preview.
Etape I : Création du réseau virtuel
Habituellement, le réseau virtuel hébergeant AVD est déjà présent par le domaine existant. Dans un environnement vide, il faut donc commencer la création de celui-ci en premier :
Je prends soin de choisir la région adaptée à mon architecture AVD.
La configuration de la plage réseau et des sous-réseaux ne change pas d’un projet classique AVD. Dans mon exemple rapide, on ira au plus simple :
Une fois la création du réseau virtuel terminée, je peux passer à la création de mon environnement Azure Virtual Desktop.
Etape II : Déploiement d’Azure Virtual Desktop
Comme pour un déploiement classique d’Azure Virtual Desktop, notre travail commence par déployer un pool d’hôtes. Vous trouverez ce dernier dans la barre de recherche d’Azure :
Taper « virtual desktop » dans la barre de recherche pour voir le service AVD apparaître.
La procédure de départ reste identique au processus habituel pour AVD. Cependant, il est important de cocher la Validation environnement à OUI pour réussir la jointure avec Azure AD :
Dans mon exemple, j’ai choisi un host pool composé de VMs personnelles, il est possible de le faire avec des VMs partagées.
Note : l’assignement de type automatique dans le cadre de machines virtuelles individuelles va directement affecter ces dernières aux personnes se connectant à AVD dans la mesure où ces utilisateurs y sont autorisés.
Dans l’onglet des machines virtuelles, je défini les options relatives à ces dernières. Aucune particularité concernant la jointure avec Azure AD dans la première partie :
La copie d’écran ci-dessous concernant Azure AD et connaît une évolution sur deux points :
Type de domaine à joindre : il est maintenant possible de choisir Azure Active Directory
Intune : il est également possible d’automatiser l’enrôlement des machines virtuelles AVD dans Intune. Cela permet de configurer ces dernières, que ce soient des machines virtuelles dédiées ou partagées entre utilisateurs.
En sélectionnant Azure Active Directory, un certain nombre de champs disparaissent de la configuration de base. Plus besoin ici de renseigner un login du domaine.
La création de l’espace de travail ne change pas par rapport aux environnements AVD classiques :
Une fois tous les champs correctement renseignés, il ne reste plus qu’à lancer la création des ressources :
Une fois la création terminée, nous pouvons constater les ressources suivantes dans notre groupe de ressources :
Etape III : Affectation des utilisateurs
Comme pour tout environnement Azure Virtual Desktop, il est nécessaire d’affecter des utilisateurs ou des groupes d’utilisateurs pour que ces derniers soient autorisés à se connecter aux machines virtuelles. Cela se passe par ici :
Etape IV : Ajout d’un argument RDP
Pour que la connexion RDP avec l’identité utilisateur Azure AD se fasse bien, il est nécessaire d’ajouter un argument spécifique. La gestion des propriétés RDP se font directement sur le pool d’hôtes d’AVD :
targetisaadjoined:i:1
Vous retrouverez ici la liste de toutes les options RDP possibles, dont seulement certaines sont compatibles avec Azure Virtual Desktop. Voici les arguments utilisés sur la copie d’écran ci-dessus :
Afin d’autoriser les utilisateurs à se connecter aux machines virtuelles, l’attribution des rôles RBAC est nécessaire. Pour rappel, ces rôles sont différents de ceux dans Azure AD, puisqu’ils sont affectés au ressources d’Azure. Dans notre AVD, l’affectation de deux rôles RBAC est nécessaires et se font assigner directement le groupe de ressources AVD :
Virtual Machine Administrator Login : Groupe d’utilisateurs ayant les droits d’administrateur local sur les machines virtuelles AVD
Virtual Machine User Login : Affecter le rôle Virtual Machine User Login au même groupe d’utilisateurs que celui utilisé pour le groupe d’application AVD
Etape VI : Test de la solution côté utilisateur via Remote Desktop
Une fois les étapes précédentes terminées, il ne reste plus qu’à tester le bon fonctionnent de la solution. Cela se fait en téléchargeant le client Remote Desktop PC dédié à Azure Virtual Desktop (téléchargeable ici), ou via l’accès web multi-plateformes (accessible là)
Application Remote Desktop
Renseigner ici un compte Azure AD présent dans le groupe d’utilisateurs AVD.
L’écran de gestion du poste arrive dans la foulée, inutile de lier votre poste local à l’identité Azure AD.
L’écran ci-dessous nous emmène sur l’environnement Azure Virtual Desktop. Ici se trouvent tous les espaces de travail affectés à l’utilisateur, dans lesquels se trouvent toutes les applications (Remote Desktop ou Remote Apps) affectées à l’utilisateurs :
Ecran du Remote Desktop PC.
Une seconde demande d’authentification est affichée pour accéder à la machine virtuelle via le protocole RDP :
Le mot de passe peut être mémorisé pour éviter la ressaisie ultérieure.
Une fois le mot de passe saisi, l’ouverture d’une fenêtre RDP donne l’accès au bureau Windows 10 d’AVD. A noter que la jointure AVD apporte également le Seamless Sign on, rendant l’expérience utilisateur encore plus agréable :
Etape VII : Test de la solution côté utilisateur via HTML 5
Il est également possible de se connecter à Azure Virtual Desktop via un navigateur internet. Pour rappel, la page d’accès est la suivante : aka.ms/wvdarmweb :
Comme pour l’application Remote Desktop, l’authentification utilise le compte Azure AD.
On se retrouve alors, de la même manière que précédemment, sur une page donnant accès aux espaces de travail et aux applications :
Une seconde demande d’authentification est demandée pour accéder à la machine virtuelle.
Etape VIII : Vérifications Azure Virtual Desktop
Vérification de la jointure sur la machine virtuelle
Afin de regarder plus en détail cette jointure, la commande dsregcmd /status sur la machine virtuelle AVD nous en dit plus :
La jointure avec Azure AD est bien là mais aucune jointure à un domaine n’est faite.
Les informations relatives au tenant d’Azure AD.
Les informations relatives à l’activation de la fonctionnalité SSO.
Vérification de l’ajout des machines virtuelles dans Azure AD
Les machines virtuelles créées par Azure Virtual Desktop sont bien retranscrites dans la section Devices d’Azure AD. Cet ajout est réalisé lors de la jointure des machines virtuelles à Azure AD :
Vérification de l’ajout des machines virtuelles dans Intune
Comme j’ai coché la gestion des machines virtuelles AVD via la solution Intune, je retrouve bien mes machines virtuelles dans la console de cette dernière (lien ici)
Vérification du pool d’hôtes d’Azure Virtual Desktop
Comme cet exemple reposait sur un environnement AVD avec des machines virtuelles individuelles, je retrouve bien sur chacune un utilisateur assigné :
Etape IX : Gestion des erreurs liées à la jointure avec Azure AD
Il est possible de rencontrer des erreurs lors du déploiement de cet environnement AVD, en jointure avec Azure AD. Pour vous aider, Microsoft met à votre disposition cette page d’aide. Voici quelques exemples d’erreurs possibles :
Les machines virtuelles sont bien déployées, mais elles sont encore marquées comme indisponibles, plusieurs minutes après le déploiement d’AVD :
>> Avez-vous bien marqué à OUI la case de validation de l’environnement ?
Erreur de mot de passe de l’ouverture de la session RDP : « The logon attempt failed »
J’ai passé du temps sur cette erreur ????.
>> Si vous rencontrez une erreur indiquant que la tentative de connexion a échoué à l’invite des informations d’identification de sécurité Windows, vérifiez les éléments suivants :
Vous êtes sur un appareil qui est joint à Azure AD ou à Azure AD hybride au même locataire Azure AD que l’hôte de session OU
Vous êtes sur un appareil exécutant Windows 10 2004 ou version ultérieure qui est Azure AD enregistré auprès du même locataire Azure AD que l’hôte de session
La dernière hypothèse est fortement probable dans ce cas. Il faut donc penser à vérifier cette option sur la machine locale ET sur la machine virtuelle AVD, grâce à la commande secpol.msc :
Cette option est également configurable via GPO. la commande rsop.msc vous permet de voir cela.
Conclusion
Comme à chaque fois, Dean de l’Azure Academy nous met à disposition une vidéo très explicative sur tout le processus de cette nouvelle fonctionnalité d’Azure Virtual Desktop :
On attend bien évidemment avec impatience la prise en charge de la solution FSLogix dans ce scénario de jointure avec Azure AD. Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Virtual Desktop ????
La mise en place d’Azure Virtual Desktop s’accompagne de bonnes pratiques, dont une concerne tout particulièrement la gestion des profils utilisateurs. Dans cet article, nous allons détailler l’installation de la solution FSLogix sur Azure Virtual Desktop, avec différentes options possibles pouvant améliorer l’expérience utilisateur.
Les profils des utilisateurs Windows
Un profil utilisateur contient des éléments de données sur une personne, notamment des informations de configuration comme les paramètres du poste de travail, les connexions réseaux persistantes ou les paramètres d’application. Par défaut, Windows crée un profil utilisateur local qui est étroitement intégré au système d’exploitation. Dans le cadre d’un environnement multiutilisateurs, il est important de rappeler l’importance des profils utilisateurs Windows :
Profil utilisateur : Un profil utilisateur Windows est un ensemble de paramètres qui personnalisent l’environnement de l’utilisateur. Chaque compte utilisateur dispose d’un profil qui inclut un ensemble de fichiers et de dossiers qui leurs sont propres, comme le bureau, les documents, les téléchargements, la musique, les images, …
Profil itinérant : Un profil itinérant est une fonctionnalité qui permet aux utilisateurs, à partir d’un poste implémenté dans un domaine, de se connecter à n’importe quel ordinateur du même réseau du même domaine et de retrouver leur environnement « personnalisé » décrit ci-dessus. Sans la fonctionnalité de base des profils itinérants, les utilisateurs perdraient leurs paramètres et leurs documents locaux lorsqu’ils se connecteraient à différents ordinateurs du domaine.
Les produits Microsoft fonctionnent avec plusieurs technologies pour les profils utilisateurs distants, notamment :
Profil utilisateur itinérants (RUP, Roaming user profiles)
Disque de profil utilisateur (UPD, User profile disks)
Enterprise State Roaming (ESR)
UPD et RUP sont les technologies les plus fréquemment utilisées pour les profils utilisateur dans les environnements Hôte de session Bureau à distance (RDSH) et Disque dur virtuel (VHD).
La solution FSLogix
Azure Virtual Desktop recommande les conteneurs de profil FSLogix. FSLogix est société acquise par Microsoft en novembre 2018. Elle propose une solution de conteneurisation des profils utilisateurs en itinérance, utilisable dans une large gamme de scénarios sous format VHD ou VHDX. Avec FSLogix, vous allez pouvoir réaliser les actions suivantes pour vos utilisateurs :
Centralisation des profils utilisateurs Azure Virtual Desktop
Dissociation possible entre les conteneurs Office365 avec les conteneurs profils utilisateurs
Gestion des applications visibles ou non via la fonction AppMasking
Contrôle des versions JAVA
Customisation de l’installation via de nombreuses règles ou via GPO
Sans les conteneurs de profil FSLogix, OneDrive Entreprise n’est pas pris en charge dans les environnements RDSH ou VDI non persistants
Comme toute donnée devant être migrée ou installée dans le Cloud, plusieurs scénarios techniques sont possibles pour héberger ces dernières. Dans le cadre des profils FSLogix , nous pourrions envisager les solutions suivantes :
Stockage sur un compte de stockage partagé
Stockage sur un serveur de fichiers
Stockage sur un NetApp File
Intégration des profils utilisateurs d’AVD, stockés sur un Azure File share.
Peu importe la solution choisie, vous devez également décider du format du profil : VHD / VHDX.
Au travers de cette vidéo, Dean nous montre comment estimer la taille du stockage FSLogix.
OS compatibles avec FSLogix
FSLogix est compatible avec une gamme étendue de systèmes d’exploitation, en 32 ou 64 bit :
Windows 7 ou plus récent
Windows Server 2008 R2 ou plus récent
Licences FSLogix
Il n’existe pas de licence spécifique pour FSLogix mais un droit d’utilisation intégré dans un grand nombre de licence Microsoft 365. Voici la liste des licences comprenant cette éligibilité :
Lors de la connexion de l’utilisateur, un conteneur est dynamiquement attaché à l’environnement en utilisant le disque dur virtuel et le disque dur virtuel Hyper-V, pris en charge nativement. Le profil utilisateur est donc immédiatement disponible et apparaît dans le système exactement comme un profil utilisateur local.
Installation de la solution FSLogix
Comme indiqué précédemment, l’installation de la solution FSLogix est possible sur plusieurs système de stockage. Dans cet article, nous allons nous intéresser à l’installation de la solution sur un compte de stockage Azure. Avant d’aller plus loin, l’installation de la solution FSLogix va légèrement différer selon le type de domaine mis en place pour votre environnement Azure Virtual Desktop. A ce jour, la solution fonctionne avec 2 types de domaine :
Azure Active Directory Domain Services (Azure AD DS) : Azure AD DS fournit des services de domaine managé avec un sous-ensemble de fonctionnalités AD DS traditionnelles, comme la jonction de domaine, la stratégie de groupe, le protocole LDAP et l’authentification Kerberos/NTLM.
Azure Virtual Desktop reposant sur une gestion d’identité gérée par Azure AD et synchronisé avec Azure AD DS.
Active Directory Domain Services (AD DS) : serveur LDAP (Lightweight Directory Access Protocol) qui fournit des fonctionnalités clés telles que l’identité et l’authentification, la gestion des objets, la stratégie de groupe et les approbations.
Azure Virtual Desktop reposant sur une gestion d’identité gérée par AD DS et synchronisé avec Azure AD.
Etape I : Création du compte de stockage
Peu importe l’architecture d’identité choisie, le création d’un compte de stockage est identique dans les deux cas. Plusieurs options existent lors sa création dans un objectif d’augmenter sa résilience :
Utilisation de la fonctionnalité Cloud cache via la création de 2 comptes de stockage dans des régions Azure différentes
Attention à la longueur du nom du compte de stockage ! Celui-ci doit être inférieur à 15 caractères, au risque de bloquer la jointure du compte au domaine AD DS.
La sécurité a toute sa place dans un projet Azure Virtual Desktop. Je vous conseille donc de limiter la porter de votre compte de stockage au seul réseau v-net de votre architecture.
Etape II : Ajout du compte de stockage au domaine
Une fois la création de votre compte de stockage terminée, vous allez pouvoir le paramétrer pour le joindre à votre domaine. Juste avant cette configuration, pensez également à ajouter votre adresse IP publique dans la configuration réseau du compte de stockage, afin de ne pas être bloqué par la suite :
Comme nous avons filtré la méthode de connectivité, nous devons rajouter notre adresse IP publique comme exception d’accès au compte de stockage.
En fonction du type de domaine présent dans votre projet, je vous invite à suivre la procédure de configuration correspondante à votre cas :
Scenario A : domaine managé Azure AD DS
Scenario B : domaine Active Directory Domain Services (AD DS)
Dans mon exemple, deux comptes de stockage sont créés pour vous montrer le paramétrage pour les 2 types de domaine.
Scenario A : Azure AD DS
Il s’agit de la jointure la plus facile à réaliser, puisqu’elle peut se faire directement depuis le portail Azure. Pour cela, vous n’avez qu’à rentrer dans votre compte de stockage et vous rendre sur l’option suivante :
Quelques secondes après l’activation de l’option, tout est bon ????
Une fois le compte de stockage associé au domaine managé, il ne reste qu’à ajouter les rôles RBAC Azure et les droits NTFS Windows aux utilisateurs d’AVD. Pour cela, nous allons procéder de la façon suivante :
Azure RBAC : droits d’accès via le rôle Storage File Data SMB Share Contributor via le portail Azure
Windows NTFS : droits de modification via la commande icacls
L’ajout de rôle RBAC se fait assez facilement via le portail Azure ou aussi via des commandes en PowerShell. Voici les rôles nécessaires sur le partage de fichier fslogix du compte de stockage :
L’ajout des droits NTFS demande un peu plus d’effort et doit se réaliser obligatoirement via des commandes depuis une machine jointe au domaine Azure AD DS. Pour cela, il est nécessaire de créer une machine virtuelle sur Azure et de la joindre au domaine Azure AD DS. A terme cette machine virtuelle peut être éteinte et conservée pour gérer d’autres options du domaine managé.
Une fois la machine virtuelle créée et jointe, Alexandre nous simplifie la vie avec son script ici. Pour vous aider, je vous ai préparé une découpe de ce dernier en dessous :
Rappel Important concernant le script d’ajout des droits NTFS
Avoir créé au préalable un domaine managé Azure AD DS
Avoir joint le compte de stockage au domaine managé Azure AD DS
Avoir ajouté au préalable un partage de fichier sur le compte de stockage
Disposer d’un compte ayant des droits de propriétaire sur la souscription Azure
Lancer le script depuis un compte administrateur local aussi présent dans le domaine Azure AD DS
Script PowerShell
La partie 1 du script sert à initialiser un certain nombre de variables pour la suite des prochaines commandes PowerShell. Certains éléments sont à créer manuellement avant de pouvoir les renseigner :
$SubscriptionId : ID de la souscription Azure
$ResourceGroupName : nom du groupe de ressources du compte de stockage
$StorageAccountName : nom du compte de stockage
$AzufileShareName : nom du partage de fichier créé pour FSLogix
$StorageAccountKey : clef d’accès du compte de stockage
$ADDSname : nom du domaine managé Azure AD DS
$UserGroupName : nom du groupe d’utilisateurs d’AVD
$AdminGroupName : nom du groupe d’administration d’AVD
$DirectoryID : chemin local du sous-répertoire dans le partage de fichier fslogix
$Directory : sous-répertoire dans le partage de fichier fslogix
Le partie 2 monte un lecteur réseau dans l’explorateur en utilisant une clef du compte de stockage comme identifiant. Si votre session utilisateur n’est pas administrateur, je vous conseille de lancer cette commande via une fenêtre PowerShell non-administrateur également, sous peine de ne pas voir apparaitre le lecteur réseau dans votre explorateur de fichier :
$connectTestResult = Test-NetConnection -ComputerName "$StorageAccountName.file.core.windows.net" -Port 445
if ($connectTestResult.TcpTestSucceeded)
{
net use T: "\\$StorageAccountName.file.core.windows.net\$AzufileShareName" /user:Azure\$StorageAccountName $StorageAccountKey
}
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."
}
La partie 3 créée le sous-dossier dédié aux profils et ajoute les droits NTFS pour que FSLogix puisse travailler correctement :
Scenario B :Active Directory Domain Services (AD DS)
Vous l’aurez compris si vous avez lu le paragraphe précédent, cette jointure nécessite un peu plus de manipulations et ne peut se faire directement depuis le portail Azure. Vous trouverez le lien vers la documentation officielle ici. Au final, les commandes d’ajout vont se faire en PowerShell. Pour aller plus vite, Alexandre nous a encore préparé un script PowerShell, disponible sur son GitHub. Ce script est téléchargeable ici, il effectue les actions suivantes :
Téléchargement et installation et lancement du module Azure
Téléchargement et installation et lancement du module Azure AD
Connection à Azure et Azure AD
Téléchargement, extraction et installation et lancement du module AzFilesHybrid
Jointure du compte de stockage au domaine AD DS
Ajout des rôles Azure RBAC sur le partage de fichier FSLogix
Ajout des droits NTFS sur le partage de fichier FSLogix
Rappel important le script ci-dessous
Avoir synchronisé au préalable votre domaine à Azure AD via l’installation d’Azure AD Connect
Disposer d’un compte ayant des droits de propriétaire sur la souscription Azure
Rajouter au prélable un partage de fichier sur le compte de stockage
Lancer ce script sur un compte de domaine AD DS et disposant des droits administrateur local
Script PowerShell
La partie 1 du script sert à initialiser les variables pour les prochaines commandes PowerShell. Certains éléments sont à créer manuellement avant de pouvoir les renseigner dans les variables :
$SubscriptionId : ID de la souscription hébergeant le compte de stockage
$ResourceGroupName : nom du groupe de ressources hébergeant le compte de stockage
$StorageAccountName : nom du compte de stockage
$AzufileShareName : nom du partage de fichier créé pour FSLogix
$StorageAccountKey : clef d’accès du compte de stockage
$domainname : nom du domaine AD DS
$OrganizationalUnitDistinguishedName : nom de l’OU du domaine AD DS
$UserGroupName : nom du groupe d’utilisateurs d’AVD
$AdminGroupName : nom du groupe d’administration d’AVD
$DirectoryID : chemin local du sous-répertoire dans le partage de fichier fslogix
$Directory : sous-répertoire dans le partage de fichier fslogix
La partie 7 utilise la clef d’accès du compte de stockage pour monter un disque réseau. Cela sert à appliquer les droits NTFS juste après.
$connectTestResult = Test-NetConnection -ComputerName "$StorageAccountName.file.core.windows.net" -Port 445
if ($connectTestResult.TcpTestSucceeded)
{
net use T: "\\$StorageAccountName.file.core.windows.net\$AzufileShareName" /user:Azure\$StorageAccountName $StorageAccountKey
}
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."
}
La partie 8 utilise la commande ICACLS pour modifier les droits en adéquation avec les besoins FSLogix :
Peu important le type de jointure faite durant l’étape II, l’installation de la solution FSLogix sur Windows 10 reste la même. Cette installation est généralement lancée sur une machine virtuelle servant d’image pour votre environnement Azure Virtual Desktop. Il faut donc créer, au prélable de ce script d’installation, une nouvelle machine virtuelle sur Azure avec l’OS Windows 10 multisessions.
Script PowerShell
Le script PowerShell ci-dessous installe et configure FSLogix sur votre Windows 10. Comme à chaque fois, vous pouvez lancer le script d’un seul bloc ou partie après partie. La partie 1 du script sert à initialiser les variables pour la suite des prochaines commandes PowerShell. Seule la variable ci-dessous est à renseigner :
$connectionString: Il s’agit ici du chemin complet du partage de fichier créé sur le compte de stockage. Il se découpe toujours de la façon suivante :
\\ »nom du compte de stockage ».file.core.windows.net\ »nom du partage »\ »sous-dossier »
Presque toutes les options de configurations FSLogix se font via des clefs de registre. Vous pouvez retrouver toutes les options ici. Voici un script PowerShell reprenant les plus intéressantes :
Etape IV : Préparation de l’image + création d’AVD
Je ne passerai pas plus de temps du la gestion de l’image car ce n’est pas l’objectif principal de cet article. Néanmoins, les grandes étapes pour réutiliser cette image Windows 10 dans Azure Virtual Desktop sont :
Sysprep de l’image
Désallocation de la machine virtuelle
Capture de la machine virtuelle
L’article suivant, écrit par Robin Hobo explique tous les étapes l’ensemble du processus.
Etape V : Test de la solution FSLogix
Encore une fois, le fonctionnement de la solution FSLogix est identique, que vous soyez en domaine managé Azure AD DS ou en domaine AD DS. Un test de la solution est possible une fois l’image Windows 10 utilisée dans un environnement Azure Virtual Desktop.
Environnement de départ
La copie d’écran ci-dessous montre deux AVD : un géré par AADDS et l’autre par un AD DS.
Une fois l’environnement AVD déployé sur votre souscription Azure, vous pouvez assigner un groupe d’utilisateurs pour tester FSLogix :
L’assignement d’utilisateurs ou de groupes d’utilisateurs doit se faire pour chaque pool d’hôtes AVD, au niveau du groupe d’applications.
Une fois l’assignement effectué, le lancement du client Remote Desktop fait apparaitre le ou les environnements Azure Virtual Desktop :
Scenario A : Verifications Azure AD DS
Avant le premier lancement de la session utilisateur, un tour rapide dans le partage de fichier du compte de stockage ne montre aucun profil FSLogix :
FSLogix contenant aucun profil pour l’environnement Azure AD DS, avant l’ouverture de session.
Au moment où l’utilisateur AVD s’authentifie pour la première fois sur une machine virtuelle d’AVD, le dossier se créé automatiquement sur le compte de stockage :
FSLogix contenant le profil pour l’environnement Azure AD DS après l’ouverture de session.
Scenario B : Vérification AD DS
Avant le premier lancement de la session utilisateur, un tour rapide dans le partage de fichier du compte de stockage ne montre aucun profil FSLogix :
FSLogix contenant aucun profil pour l’environnement AD DS, avant l’ouverture de session.
Au moment où l’utilisateur AVD s’authentifie pour la première fois sur une machine virtuelle d’AVD, le dossier se créé automatiquement sur le compte de stockage :
FSLogix contenant le profil pour l’environnement AD DS, après l’ouverture de session.
L’ouverture du dossier montre bien le profil de profil de l’utilisateur au format VHDX :
Conclusion
Au final, FSLogix reste une solution pratique et performante pour la gestion des profils utilisateurs pour les environnements Azure Virtual Desktop. Sa relative facilité d’installation, ses performances et ses possibilités de personnalisation font le succès de cette solution dans un grand nombre de scénarios. Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Virtual Desktop ????
Qui a dit que le Cloud était sans aucun danger ? Qui a dit que tout était sauvegardé nativement dans le Cloud ? De plus, on n’imagine pas non plus perdre une région entière d’Azure. Malgré tout, des contre-mesures doivent être mises en place pour prévenir le risque. Plusieurs méthodes existent déjà pour augmenter la résilience d’une infrastructure IT. Dans cet article, nous allons prendre le temps de nous intéresser à une fonctionnalité spécifique du backup d’Azure, appelée Cross Region Restore.
Comme l’indique Microsoft dans sa documentation, l’option de Restauration inter-région (Cross Region Restore) permet de restaurer des données dans la région jumelée Azure à votre site de production. Ce service est donc disponible via Azure Backup. Une coffre de sauvegarde est donc déployé dans la région de production pour gérer la passerelle des données. A l’heure où ces lignes sont écrites, cette fonctionnalité supporte les sources de données suivantes :
Bases de données SQL, hébergées sur des machines virtuelles Azure (préversion)
Bases de données SAP HANA, hébergées sur des machines virtuelles Azure (préversion)
Célèbre Viaduc de Millau en France, au-dessus des nuages.
Régions paires d’Azure
Comme indiqué par Microsoft, une région Azure comporte un ensemble d’un ou plusieurs datacenters connectés via un réseau dédié à faible latence :
Le nombre de datacenters au sein d’une région Azure est variable.
Liste des régions Azure :
Géographie
Paire régionale A
Paire régionale B
Asie-Pacifique
Asie Est (Hong Kong, R.A.S.)
Asie Sud-Est (Singapour)
Australie
Australie Est
Sud-Australie Est
Australie
Centre de l’Australie
Australie Centre 2*
Brésil
Brésil Sud
États-Unis – partie centrale méridionale
Brésil
Brésil Sud-Est*
Brésil Sud
Canada
Centre du Canada
Est du Canada
Chine
Chine du Nord
Chine orientale
Chine
Chine Nord 2
Chine orientale 2
Europe
Europe Nord (Irlande)
Europe Ouest (Pays-Bas)
France
France Centre
France Sud*
Allemagne
Allemagne Centre-Ouest
Allemagne Nord*
Inde
Inde centrale
Inde Sud
Inde
Inde Ouest
Inde Sud
Japon
Japon Est
Japon Ouest
Corée du Sud
Centre de la Corée
Corée du Sud
Amérique du Nord
USA Est
USA Ouest
Amérique du Nord
USA Est 2
USA Centre
Amérique du Nord
Centre-Nord des États-Unis
États-Unis – partie centrale méridionale
Amérique du Nord
USA Ouest 2
Centre-USA Ouest
Norvège
Norvège Est
Norvège Ouest*
Afrique du Sud
Afrique du Sud Nord
Afrique du Sud-Ouest*
Suisse
Suisse Nord
Suisse Ouest*
Royaume-Uni
Ouest du Royaume-Uni
Sud du Royaume-Uni
Émirats Arabes Unis
Émirats arabes unis Nord
Émirats arabes unis Centre*
Ministère de la défense des États-Unis
US DoD Est*
US DoD Centre*
Gouvernement américain
US Gov Arizona*
US Gov Texas*
Gouvernement américain
US Gov Iowa*
US Gov Virginie*
Gouvernement américain
US Gov Virginie*
US Gov Texas*
Note : Comme indiqué dans un précédent billet sur la région Azure Suisse Ouest, certaines régions offrent un accès restreint pour la prise en charge de scénarios client spécifiques : par exemple la récupération d’urgence. Ces régions ne sont disponibles que sur demande en créant une demande de support dans le portail Azure.
Tarification de la sauvegarde Azure et de la fonctionnalité CRR
Dans le cadre de sauvegarde de machines virtuelles Azure, Microsoft indique clairement dans sa brochure tarifaire que l’activation de la fonctionnalité CRR entraine une évolution du SKU du compte de stockage, pour permettre la sauvegarde et la lecture de vos données dans les deux régions. Pour vous aider à y voir plus clair, voici la décomposition tarifaire de la sauvegarde faite via le service Azure Backup.
Azure facture en premier lieu l’instance sauvegardée, en fonction de sa taille :
Taille de chaque instance
Tarif Sauvegarde Azure par mois
Instance inférieure ou égale à 50 Go
CHF 7,3808 + stockage utilisé
Instance supérieure à 50 Go mais inférieure ou égale à 500 Go
CHF 14,7615 + stockage utilisé
Instance supérieure à > 500 Go
CHF 14,7615 pour chaque incrément de 500 Go + stockage utilisé
L’exemple de calcul donné par Microsoft est assez clair :
Exemple : si vous avez 1,2 To de données dans une instance spécifique, le coût correspond à CHF 44,29 (+ le stockage consommé, voir plus bas). Vous êtes alors facturé CHF 14,77 pour chacun des 2 incréments de 500 Go et CHF 14,77 pour les 200 Go de données restants.
44.29 CHF = 14.76 x 3 (3 incréments de 500 Go)
Est donc également facturé le volume de données sauvegardées. On ne parle plus ici de la taille de l’instance sauvegardée, mais bien de la taille totale prise par l’ensemble des sauvegardes journalières, hebdomadaires, mensuelles et annuelles. Le volume total va alors dépendre de différents facteurs comme :
La fréquence des sauvegardes
La durée de rétention des sauvegardes
Le facteur de compression des données brutes
Selon le niveau de protection désiré, le coût du stockage au Go peut lui aussi varier :
Niveau Standard
Niveau Archive
LRS
CHF 0,0331 par Go
CHF 0,0043 par Go
ZRSPréversion
CHF 0,0414 par Go
S.O.
GRS
CHF 0,0662 par Go
CHF 0,0085 par Go
RA-GRS
CHF 0,0840 par Go
CHF 0,0085 par Go
Si vous activez l’option CRR sur votre coffre de sauvegarde, le coût au Go sera obligatoirement en RA-GRS.
Activation de Cross Region Restore
Vous êtes maintenant décidé à activer cette fonctionnalité ? Nous allons donc voir le processus d’activation de cette dernière, étape par étape, puis nous finirons par un test.
Etape I : Création d’une machine virtuelle de départ
Notre point de départ une machine virtuelle sur la région North Europe. Si vous n’avez jamais déployé de machine virtuelle dans Azure, je vous conseille de suivre le Quickstart, mis à disposition par Microsoft.
Comme indiqué dans cette copie d’écran, j’ai déployé une VM dans la région Azure « North Europe ».
Etape II : Création et configuration d’un coffre de sauvegarde Recovery Services Vault
Ce coffre de sauvegarde va nous servir pour piloter la sauvegarde de la machine virtuelle initiale. Ce coffre de sauvegarde doit être créé dans la même région Azure que la machine virtuelle, à l’inverse d’un coffre dédié à une solution de Disaster Recovery. Voici le processus de création de celui-ci étape par étape :
Utilisez la barre de recherche pour créer cette nouvelle ressource.
Renseignez les champs ci-dessous pour terminer la création de votre coffre de sauvegarde :
Pensez donc à positionner votre coffre dans la même région Azure que votre machine virtuelle.
Une fois que votre coffre de sauvegarde est créé, vous allez pouvoir activer la fonctionnalité de Cross Region Restore via le propriété de configuration de ce dernier :
Cette opération est à faire avant la mise en place de sauvegarde.
Deux options sont ici présentes dans la configuration du coffre de sauvegarde :
Type de réplication (LRS / ZRS / GRS) : nous parlons ici du nombre total de copies des sauvegardes et de leur localisation géographique sur l’infrastructure Azure
Cross Region Restore : Oui / Non
Important : ces options sont uniquement modifiables avant le démarrage de la première sauvegarde. Cela n’est plus possible de les changer après.
Etape III : Activation et démarrage de la sauvegarde
Une fois les options paramétrées, nous allons activer la sauvegarde de la machine virtuelle initiale. L’opération peut se faire depuis le coffre de sauvegarde ou directement sur la machine virtuelle :
L’écran suivant commence par détailler la police de sauvegarde à appliquer pour cette machine virtuelle. Il est question ici de définir le nombre de sauvegardes à faire et de leur rétention. Aucune police n’est créée à l’origine, vous pouvez donc la configurer directement via ce processus :
Par défaut, seule une sauvegarde journalière est définie. Elle sera conservée pendant 30 jours.
L’ajout de sauvegardes aura un impact sur le coût total de la sauvegarde. Une rétention plus longue augmente le coût.
Une fois la police créée, il est maintenant temps de sélectionner la machine virtuelle initiale pour continuer pour votre test :
Seules les machines virtuelles créées dans la région North Europe seront présentées dans cette liste de choix.
L’activation de la sauvegarde provoque la création automatique de ressources Azure :
Ce processus est rapide 🙂
Un retour dans le coffre de sauvegarde indique les objets sauvegardés et donc la bonne prise en compte de notre machine virtuelle initiale.
Note : Vous pouvez déjà apercevoir ici un filtre sur l’affichage de la première ou de la seconde région Azure.
Un clique sur la ligne « Azure Virtual Machine » affiche la machine virtuelle sauvegardée et le statut actuel de l’état de sauvegarde de cette dernière :
Un avertissement est présent car la première sauvegarde journalière n’a pas encore été faite. Cette sauvegarde sera déclenchée selon la police de sauvegarde.
Afin d’aller plus loin dans notre démonstration de la fonctionnalité CRR, nous allons devoir déclencher la première sauvegarde manuellement :
Cette sauvegarde est déclenchée manuellement, la durée de rétention est modifiable.
Le schéma ci-dessous nous montre l’étape de création du snapshot, faite au moment de la sauvegarde. Celui-ci reste à « proximité » des disques de la machine virtuelle. Les données seront transférées au coffre de sauvegarde ultérieurement.
Vous pouvez suivre l’avancement de la sauvegarde en consultant les jobs de sauvegarde. Le processus de sauvegarde initial est rapide, mais le transfert de données vers le coffre prend un peu de temps :
Une heure plus tard, la première sauvegarde de ma machine virtuelle est entièrement terminée et transférée vers le coffre de sauvegarde :
Le snapshot est fait et les données de sauvegarde ont bien été transférées au coffre de sauvegarde.
L’écran ci-dessous indique que l’avertissement précédent a disparu et que la sauvegarde faite manuellement est de type « Application consistent ».
Les sauvegardes cohérentes dans les applications capturent le contenu et les opérations d’E/S en attente de la mémoire. Les instantanés de cohérence d’application utilisent l’enregistreur VSS (ou un pré/post-script pour Linux) pour vérifier la cohérence des données d’application avant une sauvegarde.
Cohérence du système de fichiers
Les sauvegardes cohérentes de système de fichiers assurent la cohérence en prenant une capture instantanée de tous les fichiers au même moment.
Cohérence en cas d’incident
Des instantanés de cohérence des incidents sont pris généralement si une machine virtuelle Azure s’arrête au moment de la sauvegarde. Seules les données déjà présentes sur le disque au moment de la sauvegarde sont capturées et sauvegardées.
Un retour dans le coffre de sauvegarde nous montre un premier travail effectué dans la seconde région Azure :
Un clic sur l’objet donne toutes les informations relatives aux sauvegardes :
La sauvegarde étant faite ce matin, le point de sauvegarde n’est pas encore transposé sur la seconde région Azure. Il va falloir faire preuve de patience pour finir la restauration de la machine virtuelle sur la seconde région Azure :
Etape IV : Préparation à la restaurationde la machine virtuelle
L’objectif de ce Cross Region Restore est bien de créer une nouvelle machine virtuelle dans la seconde région Azure. Vous trouverez toutes les informations relatives à restauration ici. En attendant de pouvoir avancer sur la restauration, j’en profite pour créer un compte de stockage, nécessaire à la future restauration.
Afin de faciliter la lecture ultérieure au travers du portail Azure, je vous conseille de créer les prochaines ressources dans un nouveau groupe de ressources, lui-même placé dans la seconde région Azure. Ce compte de stockage doit donc être créé de la façon suivante :
Le compte stockage doit être sur la seconde région Azure, de performance Standard et en redondance LRS.
Etape V : Restauration de la machine virtuelle sur la seconde région Azure
Quelques heures plus tard, je suis enfin en mesure de continuer l’opération de restauration. Je retourne donc sur le coffre de sauvegarde pour constater que la seconde région comporte bien le premier point de restauration :
Un nouveau clique sur l’item « Azure Virtual Machine » montre le premier point de restauration transféré entre les deux régions.
L’opération de transfert entre les régions aura donc pris plusieurs heures, mais s’est fait de manière transparente.
Note : La restauration ne peut se faire que si certaines ressources sont déjà en place dans la région de destination. Nous avions déjà vu dans l’étape précédente la création d’un compte stockage, utilisé en tampon. A celui-ci, il faudra également créer un réseau virtuel, pour relier la nouvelle machine virtuelle :
Pensez donc à créer le VNet au préalable pour terminer cette restauration.
Afin de suivre l’avancement de la restauration, un tour dans les travaux du coffre de sauvegarde permet d’obtenir plus d’informations :
Les jobs de CRR ne se trouvent pas dans la page principale, mais dans la liste de travaux de la région secondaire.
Cette opération prend quelques dizaines de minutes.
Ce processus n’est pas aussi rapide qu’un failover déclenché par Azure Site Recovery. Son objectif est lui aussi différent.
Le processus de restauration aura donc pris une peu moins de 30 minutes.
Afin de constater la création des nouvelles ressources Azure, je retourne sur le nouveau groupe de ressources créé sur « West Europe ». J’y constate la présence d’une nouvelle machine virtuelle et de toutes ses ressources associées :
Toutes les ressources présentes ici sont bien positionnées sur la seconde région Azure.
La nouvelle machine virtuelle est bien opérationnelle.
Un essai de connexion RDP est possible :
Les codes d’administration sont les mêmes que ceux renseignés sur la machine virtuelle initiale.
Je retrouve bien la session d’administration ????.
Conclusion
Au final, la fonctionnalité Cross Region Restore d’Azure Backup fonctionne très bien entre région Azure. C’est une solution pour repartir en cas de désastre. A ne pas confondre avec une véritable solution de Disaster Recovery, elle permet par contre de conserver une meilleur contrôle des sauvegardes faites par Azure Backup.
Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Backup ????
Dans cet article, nous allons détailler l’outil appelé Azure Resource Mover et regarder les étapes nécessaires à la migration de ressources Azure d’une région A à une région B.
Qu’est-ce qu’Azure Resource Mover ?
Microsoft a mis à disposition un outil très pratique, appelé Azure Resource Mover. Cet outil vous sera utile si vous souhaitez déplacer des ressources d’une région Azure à une autre. Vous trouverez l’article de documentation Microsoft via ce lien.
Voici également un petit rappel sur « Qu’est-ce qu’une région Azure ?«
Région Azure : Une région Azure est un ensemble de centres de données, déployés dans un périmètre défini par la latence et reliés par un réseau régional dédié. Avec plus de régions mondiales que tout autre fournisseur de cloud, Azure offre à ses clients la flexibilité de déployer des applications là où ils en ont besoin. Une région Azure a une tarification et une disponibilité de service distinctes.
Carte des régions Azure à travers le monde. Cette carte évolue très régulièrement.
Qu’apporte Azure Resource Mover dans un processus de migration intra-région ?
Ce nouvel outil facilite grandement le processus de migration puisqu’il fournit une interface unique avec un système d’étapes et de contrôle des dépendances. Cela permet donc de :
Réduire la complexité et le temps de migration
Identifier les dépendances des ressources Azure
Déplacer les ressources de manière groupée
Nettoyer automatiquement les ressources dans la région initiale
Fonctionner en mode Test : vous pouvez encore annuler si vous ne souhaitez pas effectuer la migration
Les autres types de migration sur Azure
Il existe des besoins autres que la migration sur une autre région. Microsoft met donc à disposition deux autres types de migration :
Déplacement de ressources Azure sur un autre groupe de ressources
Déplacement de ressources Azure sur une autre souscription Azure
Ce dernier cas peut s’avérer intéressant si l’on souhaite justement abandonner le paiement PAYG (Pay-As-You-Go ou encore appelé paiement à la demande par carte bancaire) pour s’orienter vers d’autres canaux de distribution, tels que le CSP ou encore EA.
Grandes étapes
Voici la liste des grandes étapes que vous allez déclencher dans Azure Resource Mover :
Dans certains cas et également dans mon exemple plus bas, il est possible de relancer l’étape 4 à plusieurs reprises sous forme de cycle. Azure Resource Mover apporte donc une excellente visibilité sur les étapes et les cycles restants et leur ordonnancement.
Liste des ressources migrables avec Azure Resource Mover
À l’aide de Resource Mover, vous pouvez actuellement déplacer les ressources suivantes d’une région à une autre :
Machines virtuelles Azure et disques associés
Cartes réseau
Groupes à haute disponibilité
Réseaux virtuels Azure
Adresses IP publiques
Groupes de sécurité réseau
Équilibreurs de charge internes et publics
Bases de données Azure SQL et pools élastiques
Note : Vous ne pouvez pas sélectionner des disques managés comme ressources à déplacer entre des régions. Les disques sont cependant copiés lors d’un déplacement d’une machine virtuelle. Vous pourrez retrouver la liste complète avec tous les types de ressources Azure ici, accompagnés des 3 possibilités de migration.
Processus de migration via Azure Resource Mover.
Etape I : Création du projet de migration
Cette étape s’effectue directement dans le groupe contenant des ressources Azure à migrer. Il suffit alors de sélectionner les ressources et d’utiliser la fonction correspondante dans la barre d’action.
Pour simplifier les étapes, il est préférable de regrouper au préalable toutes les ressources à migrer dans un seul et même groupe de ressources.
L’écran suivant nous présente les informations de base sur les ressources sélectionnées et nous demande également de choisir la région de destination.
Il est indiqué dans les annotations que la migration des ressources sur une autre souscription peut être faite dans un second temps. Prenez donc le temps de la réflexion sur votre meilleur « itinéraire de migration ».
L’écran ci-dessous reprend la liste des ressources précédemment sélectionnées dans le groupe de ressources :
Dans mon exemple, une ressource est manquante dans cette liste, je peux cliquer sur le lien pour avoir plus d’informations.
Un encadré s’ouvre à droite et liste les ressources exclues par Azure Resource Mover. Cette information est précieuse car elle vous permet directement d’écarter ou de repenser certains projets de migration.
Pas d’inquiétude dans mon cas puisque le disque rattaché à ma machine virtuelle sera bien copié.
La confirmation sur l’écran suivant va lancer le projet et de vous proposer le démarrage de la phase suivante, déclenchée elle aussi à votre demande :
Ce bouton ne déclenche aucun traitement irréversible 🙂
Une fois ce traitement validé, l’étape II va pouvoir être déclenchée dans Azure Resource Mover.
Etape II : Configuration des ressources de destination
Cette étape est facultative. Elle permet néanmoins d’effectuer des modifications aux ressources créées. Dans mon exemple, je dispose d’une machine n’ayant pas de zone de disponibilité. Je veux migrer cette machine virtuelle en lui précisant sur quelle zone de disponibilité je la souhaite : Région « North Europe Zone 3 ».
Un clique sur la configuration de la machine virtuelle m’ouvre l’écran ci-dessous.
Je spécifie ici la zone 3 au sein de la région North Europe.
Je profite également pour faire une modification sur l’adresse IP publique rattachée à ma machine virtuelle. Souhaitant mettre en place cette VM dans une de zone de disponibilité, je dois changer le SKU de cette dernière en Standard pour que la migration se fasse sans souci :
Changement de SKU pour l’adresse IP publique en standard.
Etape III : Validation des dépendances
Comme dans beaucoup de cas, les ressources Azure sont interconnectées entre elles. L’exemple le plus évident est bien la machine virtuelle. De base, une machine virtuelle créé les ressources Azure suivantes :
Machine virtuelle
Disque OS
Carte réseau
Disque de données (facultatif)
Groupe de sécurité réseau (facultatif)
Adresse IP publique (facultative)
Le processus de validation des dépendances va donc vérifier que rien n’est oublié dans ce projet de migration.
A partir de cet écran et comme indiqué en haut à gauche, nous sommes bien dans Azure Resource Mover.
Une fois la validation des dépendances effectuée, il arrive que certaines erreurs remontent afin d’être résolues avant la migration. Un clique sur le lien vous donne toutes les informations nécessaires pour les comprendre.
Dans le cas présent, cette erreur est considérée comme « normale » puisque cette alerte concerne le disque OS. Le processus va se donc régler de lui-même cette erreur par la suite.
D’autres erreurs peuvent aussi remonter. Ici par exemple une migration vers l’Asie m’est bloquée à cause de la taille de ma machine virtuelle.
Etape IV : Migration
Comme vous le voyez dans la colonne Status sur toutes mes ressources Azure, il est indiqué que ces dernières sont en attente de la préparation au déplacement. Dans mon exemple de machine virtuelle, je dois effectuer la migration en deux cycles pour palier l’erreur du disque managé :
Cycle A : migration du groupe de ressources uniquement
Cycle B : migration des autres ressources
Cycle A – Préparation à la migration
Il s’agit de la première étape de la migration à proprement parlé.
Je commence donc mon cycle A avec uniquement mon groupe de ressources et clique sur Prépare.
Pour continuer, je clique sur Prépare.
A ce moment-là et après un court traitement de la part d’Azure, je constate que le statut de mon groupe de ressources a changé :
Le statut est passé de Prépare à Initialisation de la migration.
Cycle A –Initialisation de la migration
Je continue donc le processus de migration du groupe de ressources en le sélectionnant à nouveau et en cliquant sur Initier la migration :
L’erreur sur la machine est toujours présente mais cela ne gêne pas en soi.
Peu de choix sont possibles sur les écrans de confirmation 🙂.
Une fois l’initialisation lancée, je peux déjà constater la création d’un nouveau groupe de ressources sur ma région de destination :
La présence d’un second groupe de ressources est aussi constatée sur la région de destination.Le statut est passé d’Initialisation de la migration à Confirmation de la migration.
Cycle A –Confirmation de la migration
Cette dernière étape est nécessaire pour valider la migration des ressources sélectionnées. Je reste donc sur mon groupe de ressources et la déclenche dans la foulée :
Azure Resource Mover créé dans cette étape de nouvelles ressources. On retrouve dans le groupe de ressources de destination le disque qui sera utilisé pour la nouvelle machine virtuelle :
Le disque de la machine virtuelle est lui aussi créé dans le futur groupe de ressources.
De plus, d’autres ressources sont créées dans le second groupe vu précédemment. Ce groupe de ressources va donc servir à la transition des données de la machine virtuelle :
Est présent dans ce groupe un coffre et un compte de stockage pour le cache de transition.Le groupe de ressources a encore changé de statut. L’erreur sur la machine virtuelle a disparu.
Je vais pouvoir attaquer le cycle B avec les autres ressources à migrer. J’effectuerai la suppression de toutes les ressources sur la région initiale une fois que la migration sera entièrement terminée.
Cycle B – Préparation à la migration
Comme pour le premier cycle, nous répétons les mêmes étapes avec les autres ressources Azure que nous souhaitons migrer.
Vous ne pouvez pas vous tromper dans les étapes à suivre.
L’étape de préparation prendra plus de temps que lors du cycle A.
Cycle B – Initialisation de la migration
En seconde étape, je continue le processus de migration en sélectionnant les ressources et en cliquant sur Initier la migration :
Une fois cette étape terminée, un tour dans le nouveau groupe de ressources montre que les autres ressources sont venues se rajouter au disque. A noter que la copie d’écran ci-dessous nous montre maintenant deux disques dont un appelé réplica :
La présence de 2 disques nous rappelle le fonctionnement d’Azure Site Recovery dans le cadre d’un DR.
Cycle B – Confirmation de la migration
Nous lançons donc la dernière étape encore une fois pour valider la migration des ressources sélectionnées :
Un rapide contrôle dans la liste des machines virtuelles nous montre que la VM de la première région a bien été éteinte, tandis que celle dans la seconde région est maintenant allumée :
Point important : L’adresse IP publique de la seconde machine virtuelle dans la seconde région ne sera jamais identique à la première. Les adresses IP publiques ne se transfèrent pas entre régions. Il s’agit ici d’une nouvelle adresse IP publique.
Un second contrôle sur la machine virtuelle de la seconde région indique bien la zone 3, comme paramétré dans Azure Resource Mover.
Etape V : Suppression des ressources
La dernière étape de ce processus de migration comprend la suppression des anciennes ressources encore présentes dans la première région. Elle peut être faite via Azure Ressource Mover ou directement via le groupe de ressource en lui-même :
A ce point, toutes les ressources présentes ici se retrouve dans le même status final.
Le message d’erreur vous indique que le groupe de ressources initial ne peut être supprimé via Azure Ressources Mover :
Vous pouvez malgré tout continuer cette étape de suppression avec les autres ressources.
Les ressources sélectionnées précédemment ont donc terminé le processus d’Azure Resource Mover :
Il ne reste plus qu’à s’occuper du groupe de ressources.
Une suppression manuelle reste donc à faire dans la première région Azure :
Le groupe de ressources non supprimé contient encore la dépendance de la machine virtuelle pris en compte par Azure Resource Mover.
Une seconde suppression est également à faire pour entièrement terminer le processus. il s’agit ici du projet créé par Azure Resource Mover, mais aussi du compte de stockage et du coffre créé pour assurer la copie des données du disque de la machine virtuelle entre les deux régions.
A noter que la suppression de l’ensemble ne peut se faire qu’après le retrait des verrous posés sur les ressources :
Conclusion
Au final, Azure Resource Mover est un très bon outil de migration entre différentes régions Azure. Gardez encore en tête que certaines limitations subsistent et que les migrations très complexes à étapes sensibles seront peut-être gérées en dehors de cet outil.
Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Resource Mover ????
La mise en place d’Azure Windows Virtual Desktop s’accompagne de bonnes pratiques, dont plusieurs sont dédiées à Microsoft Teams. Dans cet article nous allons détailler l’installation de Microsoft Teams sur Azure Virtual Desktop, ainsi que la mise en pratique de quelques options pouvant améliorer l’expérience des utilisateurs.
Installation de Microsoft Teams
Une des premières bonnes pratiques concernant Azure Virtual Desktop est de travailler avec des images de l’OS. L’image de votre OS va vous permettre de maîtriser vos déploiements en les sécurisant et en les automatisant.
Il est donc conseillé d’installer Microsoft Teams sur votre image, avant de commencer le déploiement des ressources dédiées à AVD. Sachez que l’installation de Teams n’est pas comprise dans les images Windows 10 multisessions avec les applications Office 365, mises à disposition par Microsoft. Cette installation est donc systématiquement à part. Un lien vers la documentation Microsoft dédiée à ce sujet est toujours utile pour vous aider dans cette mise en place.
Etape 0 : PrérequistechniquesTeams
Comme indiqué par Microsoft, il est nécessaire d’installer sur Teams sur une machine virtuelle ayant à minima les performances suivantes :
Paramètre
Système d’exploitation de station de travail
vCPU
2 cœurs
Mémoire RAM
4 Go
Stockage
8 Go
Note : A contrario, il est également dit par Microsoft qu’Azure Virtual Desktop recommande des machines virtuelles à 4 coeurs.
Etape I : Activation de l’optimisation Teams pour AVD
Cette étape est essentielle dans l’installation de Teams dans un environnement Windows 10 multisessions. Les machines virtuelles d’AVD n’ont souvent peu de puissance graphique, ce qui signifie que l’exécution d’un chat vidéo entraînera une consommation élevée de CPU et conduira à des problèmes de performance.
Même en passant à un chat vocal, la qualité de l’appel peut encore être mauvaise et la consommation de CPU trop élevée. Les organisations déploient souvent AVD dans une capacité multi-utilisateurs. Cela signifie que plusieurs utilisateurs accèdent à une même machine virtuelle et qu’ils partagent donc un processeur. Les administrateurs informatiques peuvent aider à résoudre les problèmes liés à l’épuisement du processeur grâce à la redirection audiovisuelle (AV).
La redirection audiovisuelle utilise la puissance des appareils des utilisateurs finaux pour charger les chats vidéo et vocaux. Cela signifie que les utilisateurs s’appuieront sur le CPU et le GPU de leur appareil pour charger le chat et que la machine AVD n’aura plus une consommation CPU élevée. De plus, l’interface utilisateur sera considérablement améliorée car la qualité de l’audio-visuel sera presque la même que celle des équipes locales. Pour activer l’optimisation des médias pour Teams, ajouter la clé de registre suivante sur l’image AVD :
Exécuter cette commande PowerShell en administrateur.
Vous pouvez déployer l’application de bureau Teams pour AVD en utilisant une installation par machine. Pour installer Microsoft Teams, le script ci-dessous va vous aider en installant les 3 composants suivants :
L’installation de Teams se termine et aucun redémarrage n’est nécessaire après l’exécution de ce script. Vous devriez pouvoir vous connecter directement à Teams et cliquer sur votre image pour vérifier sa bonne installation AVD.
Ce contrôle de l’optimisation Teams pourra se faire directement via un utilisateur dans l’environnement AVD.
Comme à chaque fois, merci à Dean pour ses vidéos bien pratiques.
Etape III : Optimisations possibles sur Teams
Certaines optimisations post-installation sur Teams peuvent intéressantes selon les souhaits de configuration ou si un manque de performances est constaté par vos utilisateurs.
Désactivation de l’accélération matérielle
Dans certains cas, il a été constaté que la désactivation de l’accélération matérielle augmentait les performances vidéo de Teams. Cette fonctionnalité est désactivable directement depuis les paramétrage de l’outil client, via une clé de registre ou encore via un règle GPO :
Un redémarrage de Teams est nécessaire après avoir coché la case dans les paramètres.
Seconde méthode, la clef de registre ci-dessous va désactiver la fonction quand sa valeur est égale à 1 :
Dernière méthode, la création de GPO pour FSLogix nécessite la récupération des fichiers ADMX et ADML. Vous pouvez effectuer cette étape d’installation via ce lien.
Désactivation du « receive segment coalescing » RSC sur la partie réseau
Dans d’autres cas, il a été constaté que la désactivation de l’option de recombinaison des paquets réseaux rétablissait les performances vidéo de Teams. Cette fonctionnalité est désactivable directement via une ligne de commande PowerShell :
Get-NetAdapterRSC
# Chercher le nom de l'adaptateur réseau primaire utilisé par AVD
Disable-NetAdapterRSC -Name "Nom de l'adaptateur réseau"
Redirection du cache Teams hors du profil utilisateur FSLogix
Note : Cette fonctionnalité n’est possible que si vous avez installé FSLogix au préalable sur votre image. Suivez l’étape ci-dessous si ce n’est pas encore le cas dans votre environnement. Si FSLogix est déjà en place et fonctionnel, passez à la suite.
Le script PowerShell ci-dessous installe et configure FSLogix. Vous pouvez retrouver toutes les options de la solution FSLogix ici. La variable $connectionString doit reprendre le nom du compte de stockage et le nom du file share. Voici un exemple dans un environnement où ebgkhbywivnfzjy est le nom de mon compte de stockage et profiles le nom de mon file share :
L’accès au file share aux les utilisateurs AVD va nécessiter l’application de droits RBAC et NTFS. L’opération dépend d’un certain nombre de facteurs, je vous conseille la documentation suivante pour un domaine Azure AD DS, et cette seconde documentation pour un domaine AD DS.
Une fois que Teams a été installé conformément aux directives d’installation et que l’utilisateur a démarré Teams pour la première fois, la taille du conteneur de profil augmente considérablement en quelques minutes.
Taille du profil avant l’ouverture de Teams.
Quelques minutes après l’ouverture de Teams montre que le profil grandit beaucoup !
Taille du profil après l’ouverture de Teams.
Il est alors possible d’appliquer une optimisation sur Teams pour exclure la prise en charge du cache Teams. La mise en place de cette fonction va nécessiter plusieurs actions :
Ajout d’un fichier de configuration XML sur le compte de stockage utilisé pour FSLogix
Ajout d’une règle de registre dans la configuration FSLogix sur les machines virtuelles AVD
Le script ci-dessous est assez complet et nécessite de remplir un certain nombre de variables :
Identifiant de la souscription
Nom du groupe de ressources du compte de stockage FSLogix
Nom du compte de stockage FSLogix
Nom du file share FSLogix
Clef primaire ou secondaire du compte de stockage
# Step 1
# Variable to Modify
$SubscriptionId = ""
$ResourceGroupName = ""
# The Ressource Group of your storage Account
$StorageAccountName = ""
$AzufileShareName = ""
$StorageAccountKey = ""
# Step 2
# Module and Connection
Install-Module AZ
Import-Module AZ
Install-Module azuread
Import-Module azuread
# Connection Needed for Azure
Connect-AzAccount
Select-AzSubscription -SubscriptionId $SubscriptionId
# Connection Needed for Azure AD
Connect-AzureAD
# Step 3
# Variable to not modify"
$xmllocation= "\\$StorageAccountName.file.core.windows.net\$AzurefileShareName\$Directory"
# Step 4
# Run the code below to test the connection and mount the share
$connectTestResult = Test-NetConnection -ComputerName "$StorageAccountName.file.core.windows.net" -Port 445
if ($connectTestResult.TcpTestSucceeded)
{
net use T: "\\$StorageAccountName.file.core.windows.net\$AzufileShareName" /user:Azure\$StorageAccountName $StorageAccountKey
}
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."
}
# Step 4 Directory Creation for Teams Exclusion
# Variable to not modify
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$DirectoryID= "T:\Teams"
$Directory= "Teams-Exclusion"
New-Item -Path $DirectoryID -ItemType Directory
# Step 5 Download the Xmlredirection
# Variable to not modify"
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
$xmllocation= "\\$StorageAccountName.file.core.windows.net\$AzurefileShareName\$Directory"
$xmlurl= "https://raw.githubusercontent.com/Aldebarancloud/WVDCourse/main/redirections.xml"
$connectionString= "\\$StorageAccountName.file.core.windows.net\$AzurefileShareName\$Directory"
Invoke-WebRequest -Uri $xmlurl -OutFile $xmllocation
Un contrôle dans le compte de stockage permet de s’assurer la bonne présence du fichier de configuration XML.
Une fois le script lancé, il est nécessaire d’ajouter sur l’image AVD une règle de registre pour FSLogix appellant ce fichier XML de configuration. Il faut donc remplacer les xxx par le nom de votre compte de stockage dans cette commande PowerShell :
Une fois la configuration finie, il faut penser à supprimer le profil de l’utilisateur sur le compte de stockage FSLogix afin de repartir sur une base « propre ». L’utilisateur peut alors lancer sa session AVD et Teams. Un rapide contrôle sur le compte de stockage nous permet de vérifier l’évolution de la taille sur profil utilisateur
Ouverture de la session AVD et de la session Teams par un utilisateur de test.
La taille du profil utilisateur n’augmente plus au lancement de Teams.
Conclusion
Au final, Microsoft Teams reste un outil formidable de communication bien intégré dans la suite Office 365. Il mérite toute sa place dans Azure Virtual Desktop. Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Virtual Desktop ????
Première nouvelle, Windows Virtual Desktop change de nom ! De manière assez logique et cohérente, vous pourrez le retrouver sous AVD. Microsoft rebaptise donc son service « Windows Virtual Desktop » (WVD) en « Azure Virtual Desktop ».
Dans la foulée, Microsoft a annoncé la mise en place d’un Quickstart dans le but de faciliter le déploiement d’AVD sur des nouveaux environnements Azure, vierges ou ayant déjà éléments d’architecture.
Nous allons détailler ensemble dans cet article toutes les fonctionnalités de ce Quickstart, encore en preview à l’heure où ces lignes sont écrites.
Résumé du Quickstart d’AVD :
Voici dans ce lien les informations de départ concernant ce nouveau Quickstart. Dans ce billet de Stefan Georgiev, nous pouvons y apprendre quelques points importants :
Cette fonctionnalité est toujours en preview
Ce Quickstart apporte une création rapide d’un environnement AVD en seulement quelques clics
Il facilite grandement le déploiement d’un environnement AVD en prenant en charge les éléments de base suivants :
Création d’un domaine si inexistant
Création des composantes d’AVD
Création d’un compte de stockage pour les profils via FSLogix
Installation de FSLogix sur les machines virtuelles d’AVD
Création de groupes d’utilisateurs
Application des droits NTFS / RBAC pour le compte de stockage FSLogix
Evidement et vous l’avez compris, la simplicité de ce type de déploiement entraine la mise à l’écart de fonctionnalités spécifiques à votre déploiement. Je ne suis pas inquiet pour la suite, car ce Quickstart est encore en preview et va s’améliorer au fil des remontées des testeurs.
Il est donc possible de faire des remontées directes à Microsoft par ce lien.
Si seulement le Quickstart d’AVD pouvait faire tout ça d’un coup 😉
Etape 0 : Rappel des prérequis
Comme indiqué dans le billet de Stefan, certains prérequis sont nécessaires au déploiement de votre Quickstart. Il faut disposer au préalable de :
Souscription Azure active
Tenant Azure AD
Un compte avec le profil d’administrateur global sur Azure AD
Un compte disposant des droits de propriétaire sur la souscription active
Active directory déjà en place ? Avoir également un compte d’administration du domaine
Le Quickstart en détail
Avant tout, la fonctionnalité de Quickstart dans AVD n’est pas encore disponible dans le portail Azure de base, mais par le lien donné ici.
Une fois sur le bon portail Azure, vous pouvez chercher AVD dans la barre principale. Le Quickstart est alors disponible sur le menu de gauche.
La création du Quickstart va demander à passer en revue plusieurs champs avant de pouvoir exécuter les différents scripts automatisés :
Premier onglet définissant les principales caractéristiques du déploiement d’AVD.
Souscription : Choisissez ici la souscription Azure devant héberger l’ensemble des ressources Azure, créées par le Quickstart.
Configuration de la souscription : Deux choix sont possibles et cela dépend de votre situation actuelle. Possédez-vous déjà un domaine Active Directory ? Il peut s’agir soit d’un domaine managé par Azure (Azure AD Domain Services) ou soit d’un domaine géré sur une machines virtuelle.
Préfixe des groupes de ressources : Plusieurs groupes de ressources seront créés selon les différents scénarios, cela permet d’identifier facilement le contenu de chacun d’eux.
Localisation : On choisit ici la région Azure utilisée pour la création des ressources. Ce qui est dommage actuellement, c’est que cette liste est pour l’instant incomplète car elle semble ne reprendre que la liste des régions disponibles pour les métadatas d’AVD. Nul doute que Microsoft va rajouter par la suite plus de régions Azure, ou bien rajouter un second champ de localisation pour choisir où héberger les machines virtuelles et le domaine managé.
Compte Azure : Compte exécutant les scripts de création du Quickstart. Il doit donc être administrateur global du tenant et propriétaire de la souscription indiquée plus haut. Pour éviter un blocage durant le déploiement du Quickstart, ce dernier doit être exempté de MFA le temps de l’opération.
Compte administrateur du domaine : Ce compte est utilisé pour joindre les machines virtuelles d’AVD au domaine Active Directory créé ou existant. Point important : si le domaine n’est pas créé sur votre environnement, ce compte ne doit pas exister ! A l’inverse, si un domaine Active Directory, managé ou non, est déjà présent : ce compte devra exister avant le lancement du Quickstart.
Identité : En fonction de la configuration de la souscription indiquée plus haut, vous avez un ou plusieurs choix disponibles. Le but ici est de savoir si le déploiement doit se faire sur un domaine managé (Azure AD Domain Services), existant ou non, ou sur un domaine Active Directory sur une machine virtuelle existante.
Remarques : Afin de vous éviter des erreurs dans le déploiement du Quickstart, je souhaite vous faire une remarque sur deux prérequis importants si vous choisissez de partir sur un domaine Active Directory existant sur machines virtuelles :
Le contrôleur de domaine VM ne doit pas déjà avoir d’extensions DSC de type Microsoft.Powershell.DSC.
Le contrôleur de domaine VM doit avoir Azure AD Connect d’installé et de configuré.
Machines virtuelles
Comme pour un déploiement AVD en dehors du Quickstart, les machines virtuelles AVD sont déployables dans la même façon.
Machines virtuelles partagées : cette option reprend la question posée dans un déploiement AVD classique. S’agit-il d’un environnement AVD partagé entre utilisateurs ou personnel (une machine virtuelle par utilisateur) ?
Image source + image : On retrouve ici la possibilité de bénéficier d’images gérées par Microsoft, ou propres et personnalisées par vos soins.
Taille des machines virtuelles : comme toujours, cela dépend du budget alloué et des ressources nécessaires aux utilisateurs. Voici un lien détaillant les bonnes pratiques préconisées par Microsoft.
Nombre de machines virtuelles : Faites-vous plaisir 🙂
Assignations aux utilisateurs
En fonction du scénario de configuration de la souscription, le nombre d’options de cet écran peut varier.
Création d’utilisateur de validation : Le Quickstart d’AVD se propose de créer automatiquement un utilisateur de test pour vérifier le bon fonctionnement de la solution.
Assignation d’utilisateurs existants : Cette option est disponible si un domaine Active Directory est déjà présent. Il permet d’assigner un groupe d’utilisateurs au groupe d’application d’AVD pendant le déploiement du Quickstart.
Afin de vous aider au mieux sur les différents scénarios possibles du Quickstart, nous allons détailler les 3 grands cas possibles.
Cas I : Souscription vide
Il s’agit du cas le plus simple, on va donc partir ici de … rien !
Le but est donc bien de créer un domaine Azure AD Domain Services. Ce service est directement managé par Microsoft. Pour rappel, ce vidéo explique bien de quoi il en retourne :
Voici un tableau détaillant les principales différences entre un domaine managé et non managé.
Voici donc les éléments renseignées lors de ma création :
Finalement, la seule erreur possible serait d’indiquer un compte de domaine existant 😉
En parlant d’erreur lors du déploiement via le Quickstart d’AVD, voici ce qui se passe si vous réutilisez un compte existant pour l’administration du domaine managé Azure AD DS :
L’erreur est, disons-le, très peu explicite.
{ "status": "Failed", "error": { "code": "DeploymentFailed", "message": "At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.", "details": [ { "code": "Conflict", "message": "{\r\n \"status\": \"Failed\",\r\n \"error\": {\r\n \"code\": \"ResourceDeploymentFailure\",\r\n \"message\": \"The resource operation completed with terminal provisioning state 'Failed'.\"\r\n }\r\n}" } ] }}
Pourquoi cette erreur ? Pour ceux ayant déjà déployé par le passé un service Azure AD DS, il est connu que la synchronisation des mots de passe entre Azure AD et Azure AD DS ne se fait que lors des méthodes suivantes :
Réinitialisation du mot de passe des utilisateurs existants avant la création d’Azure AD DS
Création de nouveaux utilisateurs après la mise en service d’Azure AD DS
Les écrans suivants ne présentent peu d’intérêt :
La création du cas I du Quickstart AVD avec un nouvel Azure AD DS prend du temps : 1 heure et 38 minutes pour moi !
Une fois le déploiement terminé avec succès, vous pouvez retourner dans votre liste des groupes de ressources sur le portail Azure :
3 Groupes de ressources sont créées durant le processus de déploiement du Cas I d’AVD.
Le groupe de ressources « x-deployment » contient les runbooks servant au déploiement de la solution.
Le groupe de ressources « x-prerequisite » contient ici les ressources liées au domaine managé Azure AD DS.
Dans ce groupe de ressource, on remarque que le SKU employé par défaut pour Azure AD DS est la version « Enterprise ». Une option serait intéressante pour définir le SKU adapté au moment de la création du Quickstart.
La modification du SKU du service Azure AD DS est toujours possible après le déploiement.
Le script de déploiement Quickstart a aussi pensé à la modification des enregistrements DNS sur réseau virtuel, malin !
Le groupe de ressources « x-wvd » contient toutes les ressources nécessaires à l’exploitation d’AVD.
On retrouve donc dans ce groupe les ressources Azure suivantes :
Host Pool AVD
Application group AVD
Workspace AVD
X Machines virtuelles AVD
X Disques managés pour les machines virtuelles
X interfaces réseaux pour les machines virtuelles
Compte de stockage pour la gestion des profils utilisateurs FSLogix
Identité managée pour la mise en place des droits NTFS sur le file share
Ces ressources sont assez classiques dans un déploiement AVD. Les points vraiment intéressants sont les actions faites directement sur le compte de stockage :
Association du compte de stockage au domaine managé Azure AD DS
Création du file-share « profiles »
Ajout des droits RBAC « Storage File Data SMB Share Contributor » pour le groupe d’utilisateurs AVD
Ajout des droits NTFS « Modify » pour le groupe d’utilisateurs AVD
C’est bien sur ce dernier point que l’identité managée a été nécessaire. Elle a permis d’accéder au file share du compte de stockage via la clé du compte pour y rajouter les droits NTFS.
Au final, l’utilisateur de test peut donc ouvrir l’application Remote Desktop d’AVD afin de vérifier le bon fonctionnement du Quickstart :
PS : Pensez à faire un clic droit sur l’icône pour retirer l’option « tous les écrans », paramétrée par défaut.
L’ouverture de la session par l’utilisateur de test sur AVD créé bien le dossier du profil utilisateur sur le compte de stockage paramétré pour FSLogix.
Conclusion du cas I : Très facile à déployer malgré le temps long. On retrouve bien les avantages d’un Quickstart pour monter et démontrer la solution en quelques clics.
Cas II : Souscription disposant déjà d’un domaine managé Azure AD Domain Services
Le second cas décrit dans cette section s’adapte pour un environnement ayant déjà déployé le service Azure AD DS. Quelques options sont donc à renseigner sur le premier onglet du Quickstart d’AVD :
Dans le cas II, le compte d’administration du domaine managé doit déjà exister, à l’inverse du compte dans le cas I.
Le cas II demande également de renseigner les éléments réseaux afin de permettre la jointure des machines virtuelles d’AVD au domaine Azure AD DS existant.
Dans mon exemple de cas II, j’ai réutilisé le domaine managé Azure AD DS créé via mon cas I.
J’ai également réutilisé le groupe d’utilisateurs d’AVD créé dans le cas I pour également l’assigner au groupe d’applications AVD créé par mon cas II.
La création du cas II du Quickstart d’AVD avec un Azure AD DS existant a été bien plus rapide que le cas I : environ 20 minutes.
Une fois le déploiement terminé avec succès, vous pouvez retourner dans votre liste des groupes de ressources Azure :
3 Groupes de ressources sont créés durant le processus de déploiement du Cas II d’AVD.
Le groupe de ressources « x-AD-deployment » contient moins de runbooks que celui du cas I servant au déploiement de la solution.
Le groupe de ressources « x-ex-deployment » ne contient plus ici les ressources liées au domaine managé Azure AD DS, mais seulement les runbooks servant à s’associer avec ce dernier.
Le groupe de ressources « exi-wvd » contient toutes les ressources nécessaires à l’exploitation d’AVD.
Le même utilisateur de test dispose donc du second environnement AVD dans son application Remote Desktop.
Conclusion du cas II : Comme le cas I, celui-ci est aussi très facile à déployer. Malgré le fait que l’environnement de domaine est existant, le Quickstart recréé bien un second compte de stockage et y applique tous les éléments liés aux paramétrages FSLogix.
Cas III : Souscription disposant déjà d’un domaine Active Directory sur une machine virtuelle
Remarques : Déjà indiqué plus haut dans cet article, deux prérequis sont importants si vous choisissez de partir sur un domaine Active Directory existant sur une machine virtuelle :
Le contrôleur de domaine VM ne doit pas avoir d’extensions DSC de type Microsoft.Powershell.DSC.
Le contrôleur de domaine VM doit avoir Azure AD Connect d’installé et de configuré.
En reprenant le parcours de configuration du cas III, seule la dernière option se retrouve modifiée par rapport au cas II :
De nouveaux champs apparaissent également sur la seconde page, dédiée aux machines virtuelles d’AVD :
Groupe de ressources du contrôleur de domaine
Machine virtuelle avec le rôle de contrôleur de domaine
Les points rappelés plus haut vous éviterons les erreurs de déploiements suivantes :
Erreur lors de l’exécution du Quickstart d’AVD car le contrôleur de domaine avait déjà une extension DSC d’installée. » ‘Microsoft.Powershell.DSC’ with handler ‘Microsoft.Powershell.DSC’ already added »
Erreur lors de l’exécution du Quickstart d’AVD car le contrôleur de domaine n’avait pas AD Connect d’installé et de configuré. « The specified module ‘ADSync’ was not loaded because no valid »
La création du Quickstart d’AVD via le cas III a été un peu plus longue que sur le cas II : 27 minutes environ.
Le groupe de ressources « x-deployment » contient uniquement les runbooks servant au déploiement de la solution.
Le groupe de ressources « x-wvd » contient toutes les ressources nécessaires à l’exploitation d’AVD.
Conclusion du cas III : Comme le cas II, ce Quickstart s’adapte bien aux scénarios hybride avec un environnement de domaine non managé existant. Comme pour tous les Quickstarts, il recréé dans le cas III un nouveau compte de stockage et y applique tous les éléments liés au paramétrages FSLogix.
La jointure du domaine non managé se fait sans aucune difficulté dans le cas III.
Conclusion
Au final, cette première preview publique du Quickstart d’AVD fonctionne très bien et démontre un réel intérêt pour les déploiements rapides avec un paramétrage de base. Le gros du travail reste toujours sur la customisations de l’image servant aux machines virtuelles d’Azure Virtual Desktop.
Enfin et comme indiqué en début de cet article, n’hésitez pas à tester la solution et faites par de vos remarques ici 🙂
Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences sur Azure Virtual Desktop ????
Attendu depuis plusieurs mois, il est maintenant possible de mettre en place un MDM via l’outil Intune pour des machines virtuelles partagées Azure Virtual Desktop. Il s’agit toujours d’une nouvelle feature en Preview, mais qui va à terme simplifier le maintien opérationnel de ce service de Remote Desktop proposé par Azure.
Pour vous re-situer dans le sujet, voici deux vidéos sélectionnées par mes soins sur qu’est ce qu’Intune et les différences et les synergies possibles avec Configuration Manager :
Points clefs d’Intune.
Merci à Jean-Sébastien 🙂
L’objectif de cet article est donc de vous parcourir avec vous toutes les étapes nécessaires à la mise en place de cette association.
Rappel :
Comme indiqué dans son article sur les machines virtuelles partagées, Microsoft nous explique que la prise en charge actuelle d’Intune est uniquement orientée sur la configuration des VMs. De ce fait et pour que l’application se fasse correctement, il sera donc nécessaire de cibler les polices sur des groupes de machines et non des groupes d’utilisateurs.
Etape 0 : Prérequis
Certaines conditions sont donc obligatoires pour profiter d’Intune sur un environnement Azure Virtual Desktop :
Windows 10 multisessions, version 1903 ou ultérieure
Azure Virtual Desktop host pool configuré en version partagé
Version de l’agent Azure Virtual Desktop égale ou supérieure à 2944.1400
L’une des exigences pour gérer votre environnement Windows 10 AVD avec Endpoint Manager est l’utilisation de la jointure hybride avec Azure AD. Lorsque vous configurez vos périphériques pour qu’ils rejoignent Azure AD, ces périphériques seront visibles et gérables à la fois dans votre AD sur site et dans Azure AD.
Etape I : Mise en place d’un serveur Active Directory sur une machine virtuelle
Comme rappelé plus haut, il est donc nécessaire de disposer d’un serveur Active Directory, géré sur une machine virtuelle et non pas via le service managé par Azure Active Directory Domain Services (AADDS). Vous devrez donc créer une machine virtuelle sous Windows Server et y installer le rôle Active Directory.
Vous pouvez mettre en place très facilement cet ensemble VM + DC via le template proposé par Microsoft juste ici.
Champs à renseigner pour déployer le custom template de domain (Microsoft)
Le déploiement complet de la machine virtuelle et du domain prend environ 20 minutes.
Le template modifie même le serveur DNS du réseau virtuel sur lequel il est déployé, la vie est belle !
Pensez également à créer dans votre AD un ou plusieurs utilisateurs de test pour la solution Azure Virtual Desktop.
Création d’une première OU pour les machines virtuelles AVD et d’une seconde OU pour les utilisateurs AVD.
Etape II : Installation d’AD Connect
Une fois déployé, nous allons mettre en place la liaison entre le serveur Active Directory et Azure AD. Pour cela, nous allons utiliser l’outil Azure AD Connect, téléchargeable directement ici. Idéalement installé sur une machine dédiée et jointe au domaine, vous pouvez l’installer directement sur votre contrôleur de domaine pour environnement de test.
Si vous souhaitez en savoir plus sur cet utilitaire et son installation, voici une vidéo proposée par l’Azure Academy :
Merci à Dean Cefola ????
Synchronisation des 2 OUs précédemment créés sur le serveur Active Directory.
L’installation est terminée et la synchronisation se lance à l’issue de cette dernière. J’en ai profité pour activer le SSO, fonctionnel au sein de AVD.
Une fois déployé, vous devriez retrouver votre groupe et vos utilisateurs AVD créés sur l’AD directement sur Azure AD :
La mention DIRECTORY SYNCED vous indique que ces utilisateurs ne sont pas à l’origine créé par Azure AD.
Etape III : Mise en place de l’Hybrid Join via Azure AD Connect
Cet étape demande à retourner sur la configuration d’Azure AD Connect. En effet, il faut activer cette option dans un second temps :
Lancez Azure AD Connect et cliquez sur le bouton Configurer
Cliquez sur Configurer les options du dispositif dans la liste des tâches supplémentaires
Passez en revue la page et cliquez sur Suivant
Saisissez les informations d’identification d’un compte d’administrateur global Azure AD, puis cliquez sur Suivant
Sélectionnez Configure Hybrid Azure AD join et cliquez sur Next
Sélectionnez la configuration du système d’exploitation de l’appareil (Windows 10 actuel ou systèmes d’exploitation plus anciens de « niveau inférieur ») qui sera prise en charge et cliquez sur Suivant
Cliquez sur le bouton Modifier et saisissez vos informations d’identification d’administrateur d’entreprise, puis cliquez sur Suivant
Cliquez sur Configurer pour commencer le processus
Lorsque le message Configuration terminée s’affiche, vous pouvez quitter l’assistant
Etape IV : Activation de l’enrôlement automatique vers Intune
Pour que l’inscription soit automatique sur Intune et qu’ils soient managés par ce dernier, il est nécessaire de faire quelques vérifications de configuration sur Azure AD. Rendez-vous donc sur la page d’Azure AD :
Certains tenants peuvent avoir à la fois Microsoft Intune et Microsoft Intune Enrollment. Assurez-vous que vos paramètres d’inscription automatique sont configurés sous Microsoft Intune (et non Microsoft Intune Enrollment).
Vérifier l’URL de découverte MDM pour l’inscription automatique et assurez-vous que l’inscription automatique est activée pour les utilisateurs désirés.
Etape V : Création d’une GPO d’auto-enrôlement
À partir de Windows 10, version 1607, une fois que l’entreprise a enregistré un appareil Windows à son Active Directory local, cet appareil sera automatiquement enregistré dans Azure AD.
Une fois la stratégie de groupe créée et activée sur l’Active Directory local, une tâche est créée en arrière-plan pour lancer l’inscription à l’aide de la configuration existante du service MDM à partir des informations Azure AD de l’utilisateur, et sans son interaction. Effectuez les étapes ci-dessous pour configurer une stratégie de groupe afin d’inscrire un groupe d’appareils dans Intune :
Naviguer vers le dossier C:\Program Files (x86)\Microsoft Group Policy\Windows 10 May 2020 Update (2004) et copiez le dossier PolicyDefinitions dans F:\SYSVOL\domain\Policies.
Redémarrez le contrôleur de domaine pour rendre la police disponible.
Créez un objet de stratégie de groupe (GPO) et activez la stratégie de groupe Configuration de l’ordinateur > Stratégies > Modèles d’administration > Composants Windows > MDM > Activer l’inscription automatique au MDM en utilisant les informations d’identification Azure AD par device.
Dans le cadre d’un environnement AVD partagé, il est nécessaire de sélectionner « Device Credential ».
Important
Sur tous les Windows 10, versions 2004, 20H2 et 21H1, il y a actuellement un problème qui fait que les actions à distance dans Microsoft Endpoint Manager, comme la synchronisation à distance, ne fonctionnent pas correctement. En conséquence, l’application de toute politique en attente affectée à des périphériques peut prendre jusqu’à 8 heures. Pour résoudre ce problème, veuillez effectuer les étapes suivantes sur vos machines virtuelles avant de les inscrire dans Microsoft Endpoint Manager en utilisant dans votre GPO la clé de registre suivante :
Une fois la GPO terminée, il ne vous reste qu’à rattacher celle-ci au groupe de machines virtuelles AVD.
Etape VI : Création de l’environnement AzureVirtual Desktop
Dans tous les cas, la création d’une environnement Azure Virtual Desktop nécessite une jointure à un domaine existant. Il peut être géré sur une machine virtuelle Windows Server, ou managé par Microsoft via le service AADDS. L’étape de création de AVD va s’occuper de générer les ressources Azure suivantes :
Host Pool AVD
Session hosts (machine virtuelles AVD)
Workspace
Application groupe
J’ai donc procédé à la création suivante pour Azure Virtual Desktop :
La première étape consiste à créer le host pool et à définir si ce dernier est partagé avec la règle de load balancing désirée.
Le second onglet se concentre sur les machines virtuelles créées et rattachées au Host Pool AVD.
La partie basse de l’onglet des machines virtuelles est dédiée à la jointure avec le domain existant et les comptes d’administration.
Une fois la création du workspace et les tags renseignés, comptez une dizaine de minutes pour retrouver l’environnement AVD entièrement déployé.
Une fois le déploiement AVD terminé, il vous faut retourner sur le service pour assigner à l’application group créé un groupe d’utilisateurs AVD :
Affecter ici le groupe d’utilisateurs créé dans Active Directory et synchronisé sur Azure AD via Azure AD Connect.
Etape VII : Affecter les VMs AVD au groupe de machines AD et forcer les GPO
Les machines virtuelles créées par le service Azure Virtual Desktop se trouvent dans la bonne OU mais doivent être encore affectées au groupe de machines AVD pour recevoir la GPO créée précédemment.
Un redémarrage des machines virtuelles AVD actualisera sur ces dernières les groupes et les GPO à appliquer. Vous pouvez vérifier que tout s’est bien passé avec un compte administrateur :
La commande GPRESULT /R /SCOPE COMPUTER vous permettra de vous assurer que la machine virtuelle applique ce qu’il faut.
La commande RSoP.msc vous permettra de vous assurer que la machine virtuelle applique ce qu’il faut.
Un tour dans le registre Windows vous montre également que la clef de registre a bien été correctement déployée grâce à la GPO.
Etape VIII : Synchronisation AD > Azure AD grâce à AD Connect
Azure AD Connect est configuré par défaut pour synchroniser les objets toutes les 30 minutes. Un tour dans le programme Synchronization Service Manager nous permet de voir la prochaine synchronisation :
Il est possible de forcer une synchronisation plus tôt, si cela est nécessaire.
Une fois la synchronisation effectuée vers Azure AD, vous devriez retrouver les machines virtuelles AVD dans la section Device votre Azure AD :
Il est possible que la colonne REGISTERED indique encore Pending pendant un certain temps.15 minutes plus tard et sans rien faire, elles retrouvent bien un statut REGISTERED.
Dans certains cas, le statut peut perdurer en Pending. Voici un bon article qui explique comment s’en sortir. Quelques minutes plus tard, les choses comment aussi à bouger pour la colonne MDM :
Cette copie d’écran démontre que la machine virtuelle vm-2 est routée vers System Center Configuration Manager, ce qui n’est évidemment pas le cas.
Note :
Il sera possible que les choses changent quand un utilisateur se connecte aux machines virtuelles AVD. La copie d’écran ci-dessous montre que le tir est rectifié, comme vous pouvez le voir dans la colonne MDM : Intune.
OUF ????
La seconde arrive !
All good.
Si cela ne se passe pas comment attendu dans votre environnement, vous pouvez consulter les messages d’erreur directement dans les logs d’Event Viewer ou consulter cette page de troubleshoot.
Pour vérifier cette erreur, recherchez l’ID d’événement 76 (message d’événement : Inscription automatique À la gestion des données de la gestion des données : Échec (code d’erreur Win32 inconnu : 0x8018002b)). Cet événement indique un échec d’inscription automatique.
Etape IX : Configuration des VMs AVD sur Intune :
Pour rappel, Intune est l’ancien nom pour Microsoft Endpoint Manager, vous pouvez vous connecter à l’admin center par ce lien. Si toutes les étapes précédentes se sont bien passées, vous devriez retrouver les machines virtuelles AVD dans la section Windows Devices :
Vous allez pouvoir configurer différents types de police. Vous devez créer une nouvelle stratégie de conformité et la cibler sur le groupe de périphériques contenant vos VM multisessions. Les configurations de conformité ciblées sur l’utilisateur ne sont pas prises en charge.
Polices de conformité et accès conditionnel
Vous pouvez sécuriser vos VM multisessions Windows 10 Enterprise en configurant des politiques de conformité et des politiques d’accès conditionnel dans le centre d’administration Endpoint Manager. Les politiques de conformité suivantes sont prises en charge sur les VM multisessions de Windows 10 Enterprise :
Version minimale du système d’exploitation
Version maximale du système d’exploitation
Constructions de système d’exploitation valides
Mots de passe simples
Type de mot de passe
Longueur minimale du mot de passe
Complexité du mot de passe
Expiration du mot de passe (jours)
Nombre de mots de passe précédents pour empêcher la réutilisation
Microsoft Defender Antimalware
Intelligence de sécurité Microsoft Defender Antimalware à jour
Pare-feu
Antivirus
Antispyware
Protection en temps réel
Version minimale de Microsoft Defender Antimalware
Score de risque Defender ATP
Toutes les autres politiques sont signalées comme non applicables.
Les politiques d’accès conditionnel prennent en charge les configurations basées sur les utilisateurs et les périphériques pour Windows 10 Enterprise multisession.
Déploiement d’applications
Toutes les applications Windows 10 peuvent être déployées sur Windows 10 Enterprise multisessions avec les restrictions suivantes :
Toutes les applications doivent être configurées pour s’installer dans le contexte système/appareil et être ciblées sur les appareils. Les applications Web sont toujours appliquées dans le contexte utilisateur par défaut, elles ne s’appliqueront donc pas aux VM multisessions
Toutes les applications doivent être configurées avec l’intention d’affectation Required ou Uninstall app. L’intention de déploiement Available apps n’est pas prise en charge sur les VM multisession
Si une application Win32 configurée pour être installée dans le contexte du système a des dépendances ou des relations de substitution avec toute application configurée pour être installée dans le contexte de l’utilisateur, l’application ne sera pas installée. Pour s’appliquer à une VM multisession Windows 10 Enterprise, créez une instance distincte de l’application du contexte système ou assurez-vous que toutes les dépendances de l’application sont configurées pour être installées dans le contexte système
Azure Virtual Desktop RemoteApp et l’attachement d’applications MSIX ne sont pas actuellement pris en charge par Microsoft Endpoint Manager
Déploiement de scripts
Les scripts configurés pour s’exécuter dans le contexte système sont pris en charge sur Windows 10 Enterprise multisessions. Cela peut être configuré sous Paramètres de script en définissant Exécuter ce script en utilisant les informations d’identification connectées sur Non
Mise à jour de Windows pour les entreprises
Les politiques de Windows Update for Business ne sont pas actuellement prises en charge pour Windows 10 Enterprise multisessions.
Actions à distance
Les actions à distance suivantes des périphériques de bureau Windows 10 ne sont pas prises en charge et seront grisées dans l’interface utilisateur et désactivées dans Graphique pour les VM multisessions Windows 10 Enterprise :
Réinitialisation du pilote automatique
Rotation des clés BitLocker
Nouveau départ
Verrouillage à distance
Réinitialisation du mot de passe
Effacer
Fin de vie
La suppression des VM d’Azure laissera des enregistrements de périphériques orphelins dans Microsoft Endpoint Manager. Ils seront automatiquement nettoyés selon les règles de nettoyage configurées pour le locataire.
Configurations supplémentaires qui ne sont pas prises en charge sur les VM multisessions de Windows 10 Enterprise.
L’inscription à Out of Box Experience (OOBE) n’est pas prise en charge pour Windows 10 Enterprise multisessions. Cette restriction signifie que :
Windows Autopilot et Commercial OOBE ne sont pas pris en charge.
La page d’état des inscriptions n’est pas prise en charge.
Conclusion
C’était un plaisir de tester cette nouvelle feature pour Azure Virtual Desktop. J’attends avec impatience que plus de polices soient disponibles pour les machines virtuelles en Windows 10 multisessions. Pensez à partager dans les commentaires vos autres sources d’apprentissage ! ????
Des machines virtuelles sont créées en permanence sur Azure, et très régulièrement sur Windows Serveur. Sans se poser de question, le choix de l’image présélectionne sans votre avis la taille du disque OS, sans aucun pouvoir de modification.
Mais comment faire si l’on souhaite autre chose que la taille par défaut de 128GB pour notre lecteur C ?
Nous allons voir ensemble dans cet article les différentes possibilités, avant et après la création d’une machine virtuelle, pour changer très facilement la taille du disque OS.
Cas classique : Image Windows Server
Commençons par le cas standard, la création d’une machine virtuelle avec Windows Serveur entraîne la création d’un disque OS.
Sélectionnons ici par exemple une image source Windows Server 2019.
Dans le second onglet de création de la machine virtuelle, je n’ai pas de choix concernant la taille de mon disque OS :
Cet onglet me propose de choisir les performances du disque OS, mais pas sa taille. La taille est par contre bien un choix disponible sur les disques de données ajoutés.
Rappel : les performances du disque vont influer sur la SLA de la machine virtuelle, que vous pouvez retrouver en pourcentages ici.
Une fois la machine virtuelle créée, je ne peux que constater la taille de mon disque OS, assez facilement depuis la section des disques :
Un clique sur le disque OS vous amène sur sa page dédiée.
Redimensionnement du disque OS sur une machine virtuelle existante
Une alerte est mentionnée en haut de page : la taille d’un disque ne peut se faire que si ce dernier est détaché de la machine virtuelle ou que si cette dernière est éteinte :
Cas A : Redimensionnement à la baisse
Une fois la machine virtuelle arrêtée, un redimensionnement à la baisse va obligatoirement échouer, dans le but de prévenir la perte de données :
Erreur remontée par Azure au moment du redimensionnement à la baisse.
Cas B : Redimensionnement à la hausse
Cela ne sera pas le cas dans le cas d’un redimensionnement à la hausse, comme vous pouvez le voir en dessous :
La taille du disque OS a bien été augmentée. Notez que le nombre max d’IOPS a aussi fait un bon.
Dernière chose à faire, agrandir la partition du lecteur C directement depuis la machine virtuelle :
Comment faire donc pour effectuer pour disposer d’un lecteur C plus petite taille ? Sachant que l’OS est loin de remplir le lecteur C, plusieurs options s’offrent à nous :
Création d’une machine virtuelle avec une image portant la mention [smalldisk]
Redimensionnement du disque OS, après déploiement de la machine virtuelle
Remarque importante : Prenez garde avec la taille des disques, un disque trop réduit vous apportera peu d’IOPS et donc des performances disques insuffisantes :
Néanmoins, cette démarche peut être utile dans certains cas et donc générer une économie de coûts.
1er cas : Image Windows Server 2019 [smalldisk]
Si, avant la création de la machine virtuelle, vous savez déjà que votre disque C peut être plus réduit, vous pouvez alors partir sur des images spécifiques. Voici par exemple la liste des [smalldisk] disponibles pour Windows Serveur :
Si vous avez des difficultés de visualisation du nom complet des images, un passage du curseur sur un choix vous donnera son nom complet.
Une fois la machine provisionnée sur votre souscription Azure, vous constaterez que la taille du disque OS est de 30GB. Cette taille est donc plus réduite que la précédente. Vous pourrez toujours changer celle-ci à la hausse simplement en éteignant votre machine virtuelle.
Notez qu’une taille custom du disque entraine toujours une facturation égale à la taille supérieure : ici 32GB.
2ème cas : Redimensionnement du lecteur C puis du disque OS
Il arrive dans certains cas que la machine virtuelle existe déjà. Il va donc falloir commencer le processus par redimensionner le lecteur C. Je suis donc tombé sur cet excellent article (en anglais) et écrit par Jack Rudlin. Les étapes nécessaires pour y parvenir sont :
Réduction de la partition de l’OS dans Windows
Redimensionnement du disque OS dans Azure
Lancement du script sous PowerShell
Extension de la partition du système d’exploitation
Je recréé donc une nouvelle machine virtuelle, afin de faire avec vous cette opération de réduction « à chaud » :
Comme indiqué ici, la taille custom de mon disque OS est de 127GB.
Important : comme indiqué dans l’article de Jack et dans la source Microsoft, il est fortement recommandé de faire un snapshot du disque avant toute opération pour sauvegarder les données.
Dans un premier temps, nous nous connectons en RDP sur la machine virtuelle. Cet accès nous permet de changer la taille du lecteur C via un une première requête PowerShell, disposants des droits d’administration :
Get-Partition -DiskNumber 0
Cette requête nous donne le numéro de partition, utilisé après pour le redimensionnement.
La requête ci-dessus prend en compte le numéro du disque pour nous présenter les partitions associées.
Cette simple commande redimensionne la partition du lecteur C.
L’effet de la requête est immédiatement visible 🙂
Comme indiqué sur le blog de Jack, vous pouvez rencontrer une erreur si la taille visée est trop petite.
La suite va se faire en dehors de la machine virtuelle. Il faut commencer par éteindre la machine virtuelle pour effectuer la copie des données :
Machine virtuelle arrêtée et dont les ressources ne sont plus allouées. Rappel : une désallocation des ressources entraînent un forte disque de perte des données disque D : temporaire.
Il donc falloir ici utiliser le module AZ sur votre poste via PowerShell pour continuer la suite des opérations. Voici une vidéo qui explique bien comment y arriver facilement :
Merci à David Lamb 🙂
La suite se fait avec le lancement du script donné par Jack, disponible depuis son GitHub via ce lien.
Aussi je vous conseille de passer par PowerShell ISE pour modifier facilement le script, car plusieurs variables vont devoir être modifiées :
Ressource ID du disque OS à modifier, que vous pouvez retrouver dans les propriétés du disque OS
Nom de la VM, que vous pouvez retrouver sur la page de la machine virtuelle
Nom de la souscription Azure, que vous pouvez retrouver sur la page de la machine virtuelle
Ressource ID du disque OS que vous pouvez retrouver dans les propriétés du disque OS.
Nom de la VM que vous pouvez retrouver sur la page de la machine virtuelle.
Nom de la souscription Azure que vous pouvez retrouver sur la page de la machine virtuelle.
Avant de lancer le script :
Celui-ci demande de posséder un certains nombres de droits pour effectuer toutes les tâches
Dans mon exemple (généralement non recommandé), j’ai utilisé un utilisateur avec le profil d’administrateur global du tenant Azure
A minima, vous devez disposer au moins des rôles de contributeur VM et de contributeur de compte de stockage dans Azure
Dans le détail, le script de Jack effectue les actions suivantes :
Création d’un compte de stockage temporaire
Création d’un container temporaire dans le nouveau compte de stockage
Copie du disque OS dans le compte de stockage temporaire sous forme de page blob
Modification la taille du page blob pour que le disque d’OS soit réduit
Reconversion du disque non managé en disque managé
Remplacement du disque OS actuel de la VM par le nouveau disque OS plus petit
Redémarrage de la machine virtuelle
Nettoyage du compte de stockage temporaire et de l’ancien disque managé
Le processus peut également être suivi depuis le portail Azure en constatant l’évolution du compte de stockage créé par le script de Jack :
Compte de stockage temporaire créé par le script.
Copie du disque OS en disque non managé (page blob).
Copie du disque non managé sur un second avec une taille réduite.
Suppression du page blob ayant la taille originale.
Un nouveau disque managé est créé à partir du dernier page blob et porte la mention « -new ».
Suppression du dernier page blob une fois la transformation faite en disque managé.
Comme on le constate sur la machine virtuelle utilisée dans mon exemple, le script détache l’ancien disque OS et rattache aussi le disque OS à taille réduite.
La machine virtuelle est redémarrée automatiquement par le script.
Suppression du compte de stockage temporaire en fin de script.
Il faut compter une bonne quinzaine de minutes pour que le script arrive à sa fin. Une connexion en RDP à cette dernière permet de réaliser la dernière étape du processus.
Compte tenu des volumes renseignés dans notre exemple, un reliquat d’espace est disponible sur le disque OS (522MB) :
Ce surplus peut être réintégré sur le lecteur C, comme indiqué sur cette image.
Fin de l’opération 🙂
Il faut donc compter au total une bonne vingtaine de minutes pour effectuer ce processus.
Conclusion
Il est donc bien possible de redimensionner un disque OS à plusieurs moments. Pensez toujours à faire des sauvegardes avant ce type d’opération ! Pensez à partager dans les commentaires vos autres sources d’apprentissage ????
Annoncé fin mars 2021 pour les environnements personnels Azure Virtual Desktop, Azure Preview propose maintenant cette même fonction pour les environnements AVD mutualisés (Pooled).
Voici un petit rappel de la solution par Dean d’Azure Academy.
La vidéo de Dean met en oeuvre la solution sur un environnement AVD personnel, qui fonctionne aussi pour les environnements mutualisés, et applique les point suivants :
Activation de l’option « Start VM On Connect » sur le Host Pool
Création d’un rôle custom pour donner le droit à AVD de démarrer les VMs
Affectation du rôle custom à la souscription ou au groupe de ressources
Déconnexion des sessions inactives via GPO
Activation de l’arrêt automatique des machines virtuelles à une heure fixe
Mise en place : La mise en place de cette solution est bien expliquée dans la vidéo de Dean, vous pouvez aussi suivre la documentation de Microsoft juste ici.
Rappel : La fonction est encore en public preview pour les environnements AVD mutualisés, il faut donc utiliser le portail adéquat.
Testez vous-même
De mon côté, j’ai souhaité tester la solution sur différents cas de figure :
Test sur un AVD en mode personnalisé : OK
Test sur un AVD en mode mutualisé (Windows 10 multisession) : OK
Test sur un AVD en mode mutualisé (Windows Server 2019) : OK
J’ai aussi fait un test plus poussé dans le cadre d’un environnement AVD mutualisé comprenant plusieurs machines virtuelles :
Nombre de machines virtuelles : 2
Algorithme d’équilibrage de charge : Breadth-first
Nombre maximal de sessions : 5
Voici ce qui s’est passé au niveau des machines virtuelles :
Environnement de départ, toutes les VMs sont OFF.
Connexion du premier utilisateur, une seule VM s’allume.
Connexion du second utilisateur, la seconde VM ne s’allume pas car l’utilisateur se retrouve connecté à la première VM.
J’ai donc refait un autre test en modifiant le nombre maximal de sessions :
Nombre de machines virtuelles : 2
Algorithme d’équilibrage de charge : Breadth-first
Nombre maximal de sessions : 1
Les premières étapes n’ont pas changé, mais j’ai bien eu autre chose lorsque le second utilisateur a tenté de se connecter :
Le second utilisateur doit bien attendre le démarrage de la seconde VM pour s’y connecter.
Les deux VMs sont bien allumées dans ce cas.
Conclusion
Au final, la fonctionnalité est bien opérationnelle et s’adapte bien à différents cas d’architecture Azure Virtual Desktop. Seul petit bémol concernant la fonction Breadth-first qui demande encore quelques ajustements pour bien allumer les autres VMs afin de répartir les utilisateurs ????
Mon expérience sur l’examen Microsoft Security, Compliance, and Identity Fundamentals (SC-900)
Pour mon second article concernant les certifications dans Cloud de Microsoft, je vais vous faire le débrief à chaud ????. Pour rappel, la page d’inscription se trouve ici, et le contenu de la certification est téléchargeable là.
Dans son contenu, je trouve que cette certification est très bien faite, car elle couvre un large spectre de la sécurité dans et autour du Cloud Microsoft. De mon point vue, les professionnels lancés sur le Cloud utilisent toujours plusieurs “modules” et ont besoin de tous les sécuriser :
Tous les ouvrants (Portes, fenêtres, trappe à chat, …)
Tous les équipements (Cuisinière, chaudière, machine à laver, …)
Tous les comportements (Enfants, chiens, chats)
Pardonnez-moi ces figures de styles, mais il est tard ????
La comparaison est facile mais le Cloud est une « grosse maison » nécessitant elle aussi de la vigilance et des mesures
Pour revenir au sujet principal, je vais essayer de découper chaque grand thème pour vous éclairer au mieux :
Modèle Zéro-Trust :
L’objectif principal est bien évidement de garantir en permanence que votre environnement est sain.
Cet objectif est atteint par la mise en place de moyens de protection définis et qui ne doivent pas être dérogés, à savoir :
Les terminaux sont eux aussi contrôlés. Le principe de compliance des terminaux dans Intune est un bon moyen de s’assurer que certaines données et donc certaines applications exigent ce prérequis pour laisser passer l’utilisateur.
La télémétrie est omniprésente. Les données et la télémétrie omniprésentes sont utilisées pour comprendre l’état actuel de la sécurité. Je pense ici à Microsoft Defender for Endpoint par exemple.
Zéro Trust veut dire zéro confiance. Il faut donc brider les accès ou les droits inutiles. Il est facile d’opérer de la sorte avec l’attribution de rôles temporaires (PIM) mais aussi grâce à des revues d’accès périodiques.
J’ai eu quelques questions sur le modèle Zéro-Trust, et je vous conseille de bien le comprendre. Voici une vidéo qui parcours le sujet en profondeur.
Modèle de responsabilité partagé :
Comme chez tous Cloud providers, un modèle de responsabilité partagé est instauré pour mettre les choses au clair en hébergeur et hébergé. Ici la question est assez générale, mais garder toujours en tête que vous êtes responsable de vos données et que Microsoft est responsable de l’infrastructure !
Chiffrement :
Une ou des questions aussi tombées pour moi était sur ce sujet. Rien de tel que la définition officielle : Le cryptage est la méthode par laquelle des informations sont converties en un code secret qui cache la véritable signification de ces informations.
Le chiffrement ne concerne pas que les fichiers comme vous pouvez le voir ici.
Microsoft Trust Portal :
Sauf erreur, ce point est aussi abordé dans la MS-900. Ce portail Microsoft fournit une variété de contenu, d’outils et d’autres ressources sur les pratiques Microsoft en matière de sécurité, de confidentialité et de conformité.
Autant dire que les normes internationales ou nationales impactant le monde de la sécurité ou de la conformité se trouveront ici. On ne vous demandera pas de toutes les connaitre, mais de savoir que ces informations sont bien recensées ici.
Concept relatif à l’identité :
C’est un vaste sujet … mais je pense que la compréhension de celle-ci est fondamentale, car l’identité est au cœur du Cloud. Dans ce domaine la certification va parler principalement d’Azure Active Directory, mais pas seulement.
La différence entre autorisation (Authz) et authentification (Authn) est toujours bonne à connaitre.
Azure Active Directory :
Il faudra aller plus loin que la connaissances générales du portail Azure AD, car certaines questions portent sur des fonctionnalités assez précises.
Ce schéma est juste là pour vous faire peur, on n’ira pas jusque-là dans la SC-900 😉
Explication des différents signaux dans le processus d’authentification avec accès conditionnel.
Deux modèles d’identité sont représentés ici : Cloud et Hybrid.
On retrouve le principe d’accès conditionnel ici.
Azure AD est à mon sens le thème le plus exprimé dans cette certification. Prenez garde à ne pas négliger ce sujet. Il suffit de regarder la liste des services à connaitre dans le contenu de la certification :
Méthodes d’Authentification
Types d’identité
Self-service password reset
Password protection ????
Authentification multifacteurs
Windows Hello for Business
Identités hybrides
Types d’utilisateurs (interne, Guest, …)
Accès conditionnel
Rôles
Privileged Identity Management (PIM)
Identity Protection
J’ai eu plusieurs questions sur ce dernier point. Vous trouverez ces principales fonctionnalités ici.
Sécurité au sein d’Azure :
Beaucoup de services aux fonctionnalités variées sont disponibles sur Azure. Certains sont plus utilisés que d’autres, mais connaître leurs principales caractéristiques est demandé dans cette certification. Par exemple :
A quoi sert Azure Bastion ? A créer une connexion sécurisée pour, par exemple, se connecter aux machines virtuelles sans exposer celles-ci avec une adresse IP publique.
A quoi servent les Network Security groups ? A filtrer le trafic réseau avec des règles de sécurité qui autorisent ou rejettent le trafic réseau entrant et sortant.
A quoi Azure Blueprint ? A première vue, on ne pensera pas à ce service pour la sécurité, pourtant Azure Blueprint va permettre l’intégration de rôles et de polices dans la récurrence des déploiements = sécurité !
Les composants de sécurité ne font pas tous dans votre examen, certains concepts sont aussi interrogés dans cette certification. Je pense par exemple au Secure Score. Intégré au Security Center, il va évaluer continuellement vos ressources, vos abonnements et votre organisation en recherchant d’éventuels problèmes de sécurité. Tout cela est compté sous forme de points ou de pourcentages :
Azure Defender et Azure Sentinel sont deux formidables outils, mais il peut être difficile de les comprendre au premier abord :
Azure Defender : version avancée d’Azure Security Center :
CSPM (gestion de la posture de sécurité cloud) – Security Center est disponible gratuitement pour tous les utilisateurs Azure.
Protection de charge de travail cloud (CWP) – Azure Defender, garantit une protection avancée et intelligente de vos ressources et charges de travail Azure et hybrides.
Microsoft Azure Sentinel = SIEM (Security Information and Event Management) et SOAR (Security Orchestrated Automated Response). Il va pouvoir se connecter à un grand nombre de sources de données pour placer votre œil en face de l’alerte de manière efficace et vous donner des moyens directs d’agir.
J’ai trouvé une vidéo aussi qui détaille bien les deux produits pour vous faire une meilleure idée :
Merci à John Savill 🙂
Intune (Microsoft Endpoint Manager) :
La gestion des Endpoints reste un aspect important de la sécurité, et Intune est là pour vous simplifier la vie. Lorsque les appareils sont inscrits et gérés dans Intune, les administrateurs peuvent par exemple :
Consulter les appareils inscrits et obtenir un inventaire des appareils qui accèdent aux ressources de l’organisation.
Configurer les appareils pour qu’ils respectent vos normes de sécurité et d’intégrité. Par exemple, vous souhaitez probablement bloquer les appareils jailbreakés.
Envoyer des certificats aux appareils pour que les utilisateurs puissent accéder facilement à votre réseau Wi-Fi ou utiliser un VPN pour se connecter à votre réseau.
Consulter les rapports sur les utilisateurs et les appareils conformes et non conformes.
Supprimer les données de l’organisation si un appareil est perdu, volé ou n’est plus utilisé.
On peut voir dans cette image que Intune peut aussi gérer des données d’entreprise dans des appareils personnels.
Sécurité au sein de Modern Workplace (Microsoft 365) :
On se rapproche ici de beaucoup de sujets abordés sur la certification MS-500. Rassurez-vous ! Aucun cas technique spécifique ne sera abordé dans cette SC-900, mais encore une fois il vous faut comprendre les principaux de concepts pour protéger votre environnement.
Vous retrouverez donc beaucoup d’éléments de sécurité liés aux comportements des utilisateurs dans Microsoft 365, mais aussi sur les données et leur protetion. Attendez-vous à avoir des questions d’ordre général :
Quelles sont les mesures en rapport avec Data Loss Prevention?
A quoi servent les sensitive labels ?
Que peut-on faire avec le service eDiscovery ?
DLP ?
Conclusion
Pour finir, beaucoup de concepts sont abordés dans cette certification. Après l’examen, je peux vous dire que cette certification pourrait être vue comme une première étape d’introduction à la MS-500.
Prenez le temps de suivre le programme donné par Microsoft ici.
Prenez surtout le temps de vous familiariser avec ces multiples portails :
Comme vous le voyez, il existe une multitude de portail à explorer pour maîtriser le sujet ! Mais tout n’est pas à connaitre, testez-les et voyez leurs fonctionnalités ne vous fera pas de mal ????
Je trouve aussi que les Training Days organisés par Microsoft sont un bon moyen de se préparer à cet examen.
Pensez à partager dans les commentaires vos autres sources d’apprentissage, ou votre feedback sur l’examen ????