Jean-Sébastien DUCHENE Blog's

Actualité, Tips, Articles sur l'ensemble des Technologies Microsoft (Microsoft Intune, ConfigMgr, Microsoft Defender, Microsoft Purview, Microsoft Azure, Windows...)

1. VDI : Aperçu

 

 1.1 Fonctionnement de l’infrastructure VDI de Microsoft

Microsoft Virtual Desktop Infrastructure (VDI) est une solution délivrant des postes de travail centralisés. Le but est de stocker les postes de travail, leur système d’exploitation, leurs applications, leurs données dans un environnement virtuel dans un Datacenter. Les utilisateurs bénéficient ensuite de la puissance du protocole de bureau à distance (RDP) pour accéder à ces environnements de travail. On assimile souvent le VDI comme une technologie d’optimisation des postes de travail tout comme App-V, MED-V …
La technologie VDI de Microsoft fait appel à différentes technologies mise en œuvre par Microsoft et notamment :

  • Son offre de virtualisation de serveurs au travers de son hyperviseur : Hyper-V
  • Son offre de virtualisation de présentation par le biais de Remote Desktop Services

Remote Desktop Services (anciennement Terminal Services) a longtemps eu mauvaise réputation. Microsoft a longuement laissé cette technologie vieillir sans y apporter de plus-value. Windows Server 2008 a commencé à enrayer cette vérité en introduisant de nouveaux rôles et de nouvelles fonctionnalités comme le support du Single Sign On (SSO). Windows Server 2008 R2 a permis d’apporter la transmission de l’expérience utilisateur d’Aero dans cette technologie. Il est aussi maintenant possible de pouvoir visualiser du contenu en haute définition par bureau à distance. Remote Desktop Services offre aussi la possibilité d’acquisition audio et de redirection DirectX 9, 10 et 11.

Présentation des rôles :

  • Hyper-V est l’hyperviseur de Microsoft qui se chargera d’accueillir les environnements virtuels.
  • Remote Desktop Connection Broker (RD Connection Broker) : Le but du Connexion Broker est de faire l’intermédiaire entre les utilisateurs et le service final. Son rôle sert de “conseiller” pour les utilisateurs afin de leur proposer les services et de donner les informations nécessaires à son accès. Il est le plus souvent contacté par la passerelle Remote Desktop (RD Gateway) ou par le portail d’accès Internet (RD Web Access) suite aux demandes des utilisateurs :
    • Il identifie les machines virtuelles pour les utilisateurs afin d’initier la connexion à distance.
    • Il prépare la machine virtuelle en contactant le serveur hébergeant les machines virtuelles au travers du rôle : Remote Desktop Virtualization Host server (Le but est par exemple de réveiller les machines virtuelles d’un état éteint ou en sauvegarder).
    • Il obtient l’adresse IP de la machine virtuelle en contact le rôle Remote Desktop Virtualization Host server.  L’adresse IP est ensuite renvoyée au rôle Remote Desktop Session Host server (anciennement Terminal Server) qui s’exécute dans un mode de redirecteur.   
    • Il supervise les sessions utilisateurs dans le scenario utilisant un pool de machines virtuelles.  Un utilisateur ayant ouvert une session toujours en exécution dans un pool est automatiquement redirigé sur la machine virtuelle correspondante.
  • Remote Desktop Session Host (RD Session Host) server utilisant le mode redirection : Le but du serveur RD Session Host (anciennement Terminal Server) utilisé dans un mode redirection (redirecteur) est de solidement rediriger une connexion RDP à une machine virtuelle.
  • Quand un utilisateur souhaite se connecter à une machine virtuelle, le serveur RD Session Host interroge le serveur RD Connection Broker.
  • Le serveur RD Connection Broker à son tour provisionne une machine virtuelle pour l'utilisateur au travers du serveur RD Virtualization Host et renvoie son adresse IP pour le serveur RD Session Host. Le Serveur RD Session Host redirige ensuite le client RDP pour se connecter à la machine virtuelle en utilisant l’adresse IP.
  • Microsoft recommande d’héberger les rôles  RD Connection Broker et RD Session Host sur la même machine. Cependant le scénario mettant en œuvre les deux rôles sur des machines séparées est aussi supporté ; c’est d’ailleurs ce que nous verrons dans cet article.
  • Remote Desktop Virtualization Host (RD Virtualization Host) est un rôle Remote Desktop Services inclut dans Windows Server 2008 R2. RD Virtualization Host s’intègre avec Hyper-V pour fournir des machines virtuelles qui peuvent être utilisées comme pool de bureaux virtuels ou bureaux virtuels personnels.
    Le serveur RD Virtualization Host a les fonctions suivantes :
    • Superviser les sessions des machines virtuelles et les reporter au serveur RD Connection Broker.
    • Préparer la machine virtuelle pour la connexion bureau à distance quand une requête est faite par le serveur RD Connection Broker.
  • Remote Desktop Web Access (RD Web Access) fournit aux utilisateurs une vue agrégée des applications distantes et des connexions de bureau à distance via un portail Web. En utilisant RD Web Access, un utilisateur peut voir toutes les applications distantes et bureaux virtuels qui lui sont attribuées.
  • Remote Desktop Gateway (RD Gateway) est un rôle optionnel dans le déploiement d’une infrastructure Microsoft VDI. Son objectif est de router les connexions RDP sur Internet en toute sécurité et à travers un firewall. RD Gateway peut être couplé avec ISA Server/Forefront Threat Management Gateway 2010 ou Forefront IAG/Forefront UAG 2010 pour améliorer la sécurisation du processus d’accès aux ressources interne. Nous n’aborderons pas la mise en place de Remote Desktop Gateway dans cet article. Néanmoins le rôle est obligatoire pour rendre disponible les environnements virtuels aux utilisateurs externes. Pour cela, vous pouvez vous rapporter à d’autres sources sur Internet expliquant sa mise en œuvre : http://technet.microsoft.com/en-us/library/dd983941(WS.10).aspx

Microsoft VDI peut être couplé avec Application Virtualization pour facilement déployer les applications sur la base des groupes utilisateurs. App-V est donc une plus-value dans le scénario utilisant un pool de machines virtuelles pour des utilisateurs différents et ne disposant pas des mêmes besoins et applications. Pour plus d’informations sur App-V, nous vous renvoyons vers notre article sur le sujet : http://www.laboratoire-microsoft.org/articles/MDOP2009-Application-Virtualization/

Enfin l’utilisation de System Center Virtual Machine Manager (SCVMM) afin de facilement administrer les différents environnements virtuels est un bon complément à Microsoft VDI. Il devient ainsi possible de provisionner facilement et rapidement des machines virtuelles dans ce type d’environnement.

Maintenant que nous avons abordé les différents rôles, nous allons brièvement décrire les différents échanges entre ceux-ci.

  1. Si l’on considère le scénario d’une connexion Interne au réseau de l’entreprise, les utilisateurs disposent de deux moyens pour se connecter. Ils peuvent utiliser le portail du serveur Remote Desktop Web Access (RD Web Access) ou les fonctionnalités de « RemoteApp and Desktop Connexion ».
  2. Une fois la connexion au service établie (portail) et après authentification des utilisateurs auprès de l’annuaire, la demande est envoyée au serveur Remote Desktop Session Host.
  3. Le serveur Remote Desktop Session Host utilisant un mode redirection, redirige la demande au rôle Remote Desktop Connection Broker pour provisionner une machine à l’utilisateur.
  4. Le Serveur Remote Desktop Connection Broker interroge l’annuaire Active Directory pour savoir si l’utilisateur est habilité à accéder à cette ressource.
  5. Le serveur Remote Desktop Connection Broker à son tour provisionne une machine virtuelle pour l'utilisateur au travers du serveur Remote Desktop Virtualization Host et son infrastructure Hyper-V
  6. Le serveur Remote Desktop Virtualization Host effectue les différentes opérations (réveil, démarrage…) nécessaires à la mise en ligne de la machine virtuelle.
  7. Le serveur Remote Desktop Connection Broker renvoie l’adresse IP de la machine au serveur Remote Desktop Session Host.
  8. Le Remote Desktop Session Host redirige ensuite le client RDP pour se connecter à la machine virtuelle en utilisant l’adresse IP.
  9. Le client est connecté.
  10. Une fois que le client se déconnecte, le serveur Remote Desktop Session Host est informé. Il informe le serveur Remote Desktop Connection Broker afin de libérer les ressources. Dans le cadre du scénario de pool de machine virtuelle, la VM subit une restauration (rollback) à son état initial.

 

Schéma de fonctionnement dans le cas d’une connexion externe au réseau de l’entreprise :


Source: Remote Desktop Services Team Blog

 

 

 1.2 Les deux scenarios offerts par VDI

Microsoft VDI propose deux scénarios d’utilisation :

  • Le mode Bureau Virtuel Personnel (Personal Virtual Desktops) permet de mettre en œuvre des machines virtuelles qui sont assignées par l’administrateur à des utilisateurs de manière permanente. Ce scénario est assimilé à un mode statique.
  • Le mode Pool (ou groupe) de Bureaux Virtuels (Virtual Desktop Pool) permet de regrouper des machines virtuelles configurées de manière identique et qui sont assignées temporairement aux utilisateurs par l’infrastructure VDI. Ce scénario est assimilé à un mode dynamique. Il est important de prendre en considération la gestion des profils utilisateurs. Nous aborderons ce sujet dans l’article.

Ces deux modes de fonctionnement s’adaptent à tous les scénarios de gestion des postes de travail envisageables.

 

 1.3 La haute disponibilité pour Microsoft VDI

Il ne fait aucun doute que dans ce genre de projet la notion de haute disponibilité de l’infrastructure est primordiale et ce afin d’assurer la meilleure continuité du service. L’article n’a pas pour vocation de traiter ce sujet. Néanmoins, vous devez prendre en considération les différentes bonnes pratiques en matière de haute disponibilité pour l’infrastructure de virtualisation Hyper-V.
Vous devez donc prévoir une redondance matérielle pour le stockage, les connectivités réseau … L’implémentation de la répartition de charge est essentielle pour pouvoir assurer la pérennité du service.

Vous pouvez aussi prévoir un cluster de serveur Remote Desktop Connexion Broker. Plus d’informations sur le livre blanc « Deploying Remote Desktop Connection Broker with High Availability » : http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=df3e1876-737e-4f81-9f29-828a67ebbf58

 

 1.4 Windows Server 2008 R2 SP1 et Windows 7 SP1 Better Together!

Le Service Pack 1de Windows 7 et Windows Server 2008 R2 est clairement dédié à la technologie VDI de Microsoft. Il intègre une nouvelle fonctionnalité appelée RemoteFX issue du rachat de Calista en 2008. Avec l’arrivée du Service Pack 1, Microsoft introduit la fonctionnalité RemoteFX permettant de bénéficier des fonctionnalités de calculs graphiques du serveur à l’intérieur d’une machine virtuelle. L’utilisateur ne voit ainsi aucune différence entre une machine physique et virtuelle.

Le Service Pack 1 de Windows Server 2008 R2 introduit aussi une nouveauté dédiée à Hyper-V appelée Dynamic Memory. Cette fonctionnalité permet de configurer une machine virtuelle afin que la quantité de mémoire assignée à la VM s’ajuste en fonction de ses besoins pendant son exécution. Il y a donc une notion d’allocation dynamique de la mémoire au système d’exploitation. Le système d’exploitation virtuel doit aussi être en capacité de gérer cette arrivée de mémoire alors qu’il est en cours d’exécution. Ceci permet d’augmenter le nombre de machines virtuelles sur une machine physique. Le but est d’assurer que la mémoire est distribuée de façon optimale entre les différentes machines virtuelles.

Nous verrons comment implémenter ces deux fonctionnalités plus loin dans l’article.

 

 1.5 VDI et le Licensing

Avant de commencer la présentation de la technologie VDI de Microsoft, nous allons vous présenter les avantages ou les inconvénients du Licensing afin que vous puissiez juger de l’attractivité de la solution.
Le but de VDI est de délivrer un bureau à la demande de l’utilisateur. Le concept est donc véritablement différent de celui appliqué aux machines physiques. De ce fait, Microsoft a établi un modèle de licence spécifique pour pallier aux insuffisances du modèle initial et refléter le nombre de licence utilisé par l’infrastructure VDI. VDI nécessite l’achat d’un certain nombre de licences nécessaires au fonctionnement des différents équipements :

  • Les licences pour les serveurs (Windows Server 2008 R2) et l’hyperviseur
  • Les licences pour les postes de travail virtuels.
  • Les licences pour le produit d’administration des environnements virtuels : System Center Virtual Machine Manager 2008 R2 (Optionnel)
  • Les licences pour le produit d’administration du parc informatique : System Center Configuration Manager 2007 R2 (Optionnel)
  • Les licences pour le produit de supervision du parc informatique : System Center Operations Manager 2007 R2 (Optionnel)
  • Les licences pour la virtualisation d’application permettant une meilleure flexibilité du provisionnement des applications aux utilisateurs par le biais d’Application Virtualization inclut dans MDOP. (Optionnel)
  •  Un mécanisme de fourniture de bureaux comme celui offert par Citrix au travers de XenDesktop. (Optionnel)


Microsoft crée Windows Virtual Enterprise Centralized Desktop (VECD) pour répondre aux problématiques. VECD doit être souscrite quel que soit la technologie VDI utilisée (Microsoft ou non).

Microsoft introduit deux offres utilisant un mode de licence par périphérique client accédant à l’environnement VDI:

  • Microsoft Virtual Desktop Infrastructure Standard Suite (VDI Standard Suite) inclut les licences :
    • La plateforme hyperviseur (Hyper-V Server 2008 R2).
    • Pour la suite d'administration : System Center Virtual Machine Manager 2008 R2, System Center Operations Manager 2007 R2 et System Center Configuration Manager 2007 R2.
    • La virtualisation d'applications avec Application Virtualization (App-V) et MDOP (Microsoft Desktop Optimization Pack).
    • Un agent de connexion via les services Bureau à distance de Windows Server 2008 R2.
  • Microsoft Virtual Desktop Infrastructure Premium Suite (VDI Premium Suite) inclut toutes les fonctionnalités de la suite standard et ajoute :
    • La fonctionnalité complète des services Bureau à distance, y compris l'option de déployer des bureaux basés sur la session en plus des bureaux VDI.
    • Virtualisation Microsoft des applications pour les services Bureau à distance (App-V for Remote Desktop)

De plus, Microsoft et Citrix ont émis un partenariat fort et agressif envers VMWare (le principal concurrent). Ainsi, ils lancent une offre 500 licences gratuites à toute entreprise cliente de VMware et déçu de sa technologie VDI. Microsoft ne fait ainsi plus payer les licences VECD si l’entreprise a souscrite la Software Assurance (SA).

Plus d’informations sur le licensing de VDI sur : http://blogs.technet.com/virtualization/archive/2009/07/13/Microsoft_1920_s-new-VDI-licensing_3A00_-VDI-Suites.aspx

Pour plus d’informations sur le licensing de Windows : Volume Activation 2, vous pouvez lire notre article : http://www.laboratoire-microsoft.org/articles/VolumeActivation2_-_Presentation-Implementation/

L’implémentation de VDI ne permet pas de réduire les coûts d’exploitation des postes de travail car son installation nécessite des coûts matériels, logiciels, et de licences importants. Il permet cependant d’apporter une flexibilité dans l’administration du parc de poste de travail.

 

 1.6 Mise en pratique

Le but de cet article est de couvrir l’implémentation d’une telle infrastructure sans prendre en considération les notions de haute disponibilité qui pourrait découler d’un tel projet. Nous n’aborderons pas non plus les notions de dimensionnement matériel et de choix technologique lié à la mise en place d’une infrastructure Hyper-V. Ce sont néanmoins des paramètres à prendre en considération. Nous vous renvoyons pour cela vers les recommandations officielles émises par Microsoft et vers les différents articles techniques que vous pourrez trouver sur Internet.

Pour mettre en œuvre une telle architecture, nous allons prendre en compte des cas concrets d’utilisation de la technologie VDI.
VDI est souvent mise en avant comme une technologie de demain qui amènera les entreprises à centraliser la gestion des postes de travail en les virtualisant dans des datacenters. Idéalement cette approche prend tout son sens si on utilise les nouveautés émanant des technologies de Cloud Computing.
La mise en œuvre d’un changement aussi radical dans la gestion du parc informatique de l’entreprise est un projet sur plusieurs années et peu d’entreprises ont passé ce cap. C’est cependant la vocation première de la technologie.
VDI est souvent portée comme une solution technique liée aux difficultés rencontrées lors de déploiement et migration de systèmes d’exploitation. Prenez le scenario suivant, une entreprise souhaite migrer son parc Windows XP vers Windows 7. Lors de la phase d’étude, il ressort qu’un certain nombre d’applications métier ne peuvent être portées sur Windows 7. Il n’existe pas de mise à jour et l’éditeur n’a pas non plus sort de nouvelle version. Les diverses tentatives de réparer l’application en utilisant les Shims de Application Compatibility Toolkit ne permettent pas de faire fonctionner pleinement l’application. L’utilisation de la technologie de virtualisation de postes de travail Microsoft Enterprise Desktop Virtualization est envisageable mais le nombre restreint d’utilisateurs (moins de 20% de l’effectif) utilisant l’application ne permet pas un retour sur investissement de la technologie suffisant. L’entreprise est donc condamnée à investir dans MED-V ou à ne pas migrer vers le nouveau système d’exploitation. Néanmoins, VDI peut répondre simplement aux problématiques de migration. En effet, sa souplesse liée au provisionnement de machine virtuelle peut facilement adapter les besoins de l’entreprise. Elle peut donc utiliser la puissance d’Hyper-V pour mettre à disposition un pool de machines virtuelles sous Windows XP afin de rendre disponible l’application aux quelques utilisateurs tout en rendant possible la migration du parc informatique vers Windows 7.
Dans mon cas pratique, le but est de permettre la migration du parc vers Windows 7 tout en mettant à disposition Excel 95 au travers de la suite Office 95 pour les utilisateurs disposant de macro développé pour ce dernier. Nous verrons donc comment mettre à disposition ce pool de machines auprès des utilisateurs.

Le second cas pratique répondra aux attentes de certaines entreprises. Imaginez les scenarios suivants :

  • Une entreprise rachète ou fusionne avec une autre entreprise. Les opérations de rachat sont souvent des opérations longues. Elles nécessitent du temps pour répercuter les changements et que l’aspiration ou la fusion soit totalement effective. Ceci affecte aussi le service informatique et son parc puisque la mutualisation des ressources nécessite des efforts considérables.
  • Une entreprise signe des partenariats avec des prestataires externes. Cette entreprise a donc besoin de mettre à disposition certaines applications et ressources aux partenaires. Il est souvent très compliqué de mettre à disposition les applications à une entreprise externe. Il faut pour cela créer un pont entre les deux organisations (Active Directory Federations Services) et donner les autorisations nécessaires d’accès.

Dans ces deux scénarios la solution la plus simple peut être la mise en œuvre d’une infrastructure VDI donnant l’accès à l’entreprise/prestataire externe à des bureaux virtuels. Ces bureaux virtuels disposent de toutes les ressources et applications nécessaires au partenariat mise en œuvre.
Dans mon cas pratique, nous mettrons à disposition à une entreprise externe et ses utilisateurs, une série de postes de travail virtualités sous Windows 7 afin qu’ils puissent opérer les tâches nécessaires qui découlent de notre partenariat.

La mise en place de ces deux cas pratiques se fera conjointement sur la même infrastructure et répondra ainsi aux deux scénarios de pool de machines virtuelles et de bureaux virtuels personnels.

Revenir au plan : http://microsofttouch.fr/blogs/js/pages/microsoft-virtual-desktop-infrastructure-vdi-sous-tous-ses-angles.aspx

Facebook Like