Ce que vous devez connaître sur les UPD (User Profile Disks) sous RDS 2012 et 2012 R2

Publié: 06/11/2015 dans TSE & RDS
Tags:, , , , , , , ,

 

S’applique à : RDS Windows Server 2012 et 2012 R2

Introduction

La gestion des profils utilisateurs dans un environnement RDS préoccupe la plus part des IT en charge de la gestion d’une infrastructure RDS.

Si vous n’utilisez pas de solutions tierces pour gérer les données et paramètres des utilisateurs RDS, vous avez plus de chance d’avoir des problèmes liés à ceux-ci.

Les profils « Itinérants » représente la solution classique que nous étions tous amenés à mettre en place pour la persistance des données de profils utilisateurs du réseau, vous avez probablement essayé de l’implémenter pour un environnement RDS et constaté que celle-ci ne répond pas vraiment au besoin du fait que les profils utilisateurs RDS ne fonctionnent pas de la même manière que les profils des utilisateurs standards du domaine.

Le géant américain a enfin compris la problématique et besoins des clients en matière de gestion de profils utilisateurs RDS et a introduit une nouvelle solution qui s’intègre directement avec le rôle RDS 2012 et 2012, et ce pour les deux scénarios de déploiement : Session & VDI.

Il s’agit de « UPD : User Profils Disks », cette fonctionnalité permet de stocker d’une manière centralisée les données des utilisateurs et des applications dans un seul disque virtuel (VHDx) dédié à chaque profil utilisateur.

Quand un utilisateur distant ouvre une Session sur un serveur RDSH ou lance un Programme RemoteApp, son disque de profil associé est attaché à sa session, il est ensuite détaché lors de la fermeture de sa session, avec ce processus, aucune donnée n’est copiée à l’ouverture et fermeture de la session, ce qui permet d’éviter les erreurs de récupération et synchronisation connues avec les Profils Itinérants.

Prérequis

L’activation des UPDs nécessite les deux éléments suivants :

  • Collection RDS (de Sessions ou de Bureaux Virtuels)
  • Un Partage par Collection (de Sessions ou de Bureaux Virtuels)

En effet, la fonctionnalité UPD peut être activée et configurée au niveau d’une Collection RDS, le stockage des données de profils utilisateurs RDS nécessite un espace de stockage (Partage Réseau, Espace de stockage partagé …)

HowTo : Activer la fonctionnalité UPD dans un environnement RDS 2012 /2012 R2

Suivez les instructions suivantes pour activer et configurer la persistance des données de profils RDS via UPD.

Note : dans l’exemple suivant, la fonctionnalité UPD sera activée au niveau d’une Collection de Session appelée « MesApps », de plus les VHDx associés aux profils utilisateurs RDS seront stockés sur un Partage hébergé sur un DC nommé « LABDC1 » :

  • Un dossier partagé doit être créé avec les informations suivantes :
    • Nom du dossier  : UPD_Utilisateurs
    • Nom du Partage  : UPD_Utilisateurs
    • Permissions Partage : Tout le monde | Lecture (permission par défaut)

UPD_1

  • Le Gestionnaire de Serveur doit être lancé depuis un serveur regroupant les 3 services de rôles RDSH – RDCB – RDWA (Remote Desktop « Session Host – Connection Broker – Web Access »)
  • La Collection « MesApps» est sélectionnée dans notre exemple et ses Propriétés sont éditées depuis le Menu « TÂCHES »
  • Cliquez ensuite sur « Disques de profil utilisateur» et cochez la case « Activer les disques de profil utilisateur », spécifiez ensuite le chemin UNC du dossier partagé créé précédemment, \\LABDC1\UPD_Utilisateurs dans notre exemple. Comme illustré dans l’image ci-après, nous allons limiter la taille des disques (VHDx) de profil utilisateur à 5Go par profil :

UPD_2

Note : Si vous rajoutez des serveurs RDSH supplémentaires dans le déploiement, l’assistant configure automatiquement leurs droits d’accès (Partage & permissions NTFS) au niveau du partage spécifié sur les UPDs, aucune action de votre part n’est donc requise.

  • Cliquez sur « Appliquer » et ensuite « OK ». L’assistant prend en charge les informations de configuration spécifiées et apporte les changements suivants :
    • Crée un disque virtuel « modèle» sur le partage spécifié : UVHD-template.vhdx
    • Positionne le droit « Control total» pour l’ensemble des serveurs RDSH de la Collection sur le partage spécifié et ce au niveau des Permission de partage et NTFS (Sécurité). Dans l’exemple suivant, la Collection de Session « MesApps » regroupe deux serveurs Hôtes de Session (LABRDSH1 & LABRDSH2) :

UPD_3

UPD_4

  • Ouvrez une Session Bureau à distance ou lancez un Programme RemoteApp hébergé sur la Collection « MesApps» et constatez l’apparition de votre disque de profil sur le partage \\LABDC1\UPD_Utilisateurs. le nom du disque généré porte le nom « UVHD » suivi de – et un numéro alphanumérique qui correspond au SID (Security IDentifier) de votre compte utilisateur Active Directory :

UPD_5

  • Notez que les disques virtuels de profil utilisateurs peuvent être montés sur l’Exploration Windows, cela peut vous être utile si vous souhaitez déposer ou récupérer des données directement sur le profil RDS d’un utilisateur distant.

UPD_6

Publicités
commentaires
  1. Jerome dit :

    Bonjour, Avez-vous rencontré le problème de profil temporaire en utilisant le mode UPD ?
    Ferme de 2 serveurs RDSH 1 RDCB et 1 serveur de fichier pour les profils UPD

    • Hicham KADIRI dit :

      Bonjour Jérôme. Oui dans le passé. le chargement des profils tmp signifie que les disques virtuels (VHDx) n’ont pas pu être chargé au logon des utilisateurs Bureau à distance.
      Une question : est-ce que tu as essayé de supprimer le profil d’un utilisateur généré /stocké sur ton serveur RDSH et reouvrir une nouvelle session ?

      • Jerome dit :

        Oui, j’ai même désactiver l’analyse à l’accès de l’antivirus, fait des exclusions pour les fichiers vhdx, exclusion cliché instantané du dossier contenant les vhdx. Lorsque j’interdit les ouvertures de session sur l’un ou l’autre des RDSH, aucun problème de connexion au profil. je pense à une latence réseau ou à l’ordre des GPO. Mon service broker est sur un DC qui est aussi service WebRD et RD licence.
        Un piste que je n’aurai pas exploré.

      • Hicham KADIRI dit :

        Essayez de supprimer la liste de toutes les entrées BAK depuis Regedit.exe >> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

        Une question : depuis quand ce problème est apparu sur vos serveurs RDSH?

        Notez aussi que le déploiment du rôle RDS sur un DC est fortement déconseillé (DC écoute sur les ports 3389 RDP /443 RDWA, services Windows liés à la solution RDS exécutés sur le DC…)

      • Jerome dit :

        Seul le service broker est utilisé sur le DC, la web interface n’est pas en service et le DC ne reçoit pas de session utilisateur. J’ai déjà supprimé les .bak, rien n’y fait.
        J’ai le problème depuis la mise en production

      • Hicham KADIRI dit :

        Les UPD sont hébergés sur quel serveur ? utilises-tu du stockage local ou partagé ? as-tu des problèmes réseaux ponctuels ?

      • Jerome dit :

        Sur un serveur de fichier hébergé sur le même hyper-V autonome et stockage local, certainement le réseau car je ne vois pas ce que ce pourrai être

      • Hicham KADIRI dit :

        Vérifiez votre config réseau physique /réseaux virtuels. essayez entre temps la manip suivante : si cela est possible, créez une nouvelle Collection RDS > Ne pas activer l’UPD au niveau de cette nouvelle Collection > Créer un nouvel remote user dans l’AD > Autoriser cet utilisateur à accéder à la Collection nouvellement créée > Ouvrez une Session Bureau à distance avec le nouveau compte user > Maintenant retournez sur le RDMS > Activez l’UPD au niveau de la nouvelle Collection > Choisissez un dossier partagé (stocké localement sur le même serveur RDCB) > Refaitez un test de Connexion avec le compte user et notez le résultat. Tenez moi informé du résultat.

  2. jb dit :

    Bonjour,
    j’ai exactement le même problème ce matin,
    certains de mes profils utilisateurs sont locked,
    je suis actuellement en cours de recherche …

  3. jb dit :

    ce qui est dingue c’est que dans la console RDS je ne vois pas les utilisateurs de connectés mais sur l’appli SIDDER je vois les disques montés ????

  4. Teddy dit :

    Bonjour,

    Encore un très bon article.

    J’aimerais comprendre en quoi les profils « Itinérants » ne répondent pas vraiment au besoin ?

    Et aussi par la même occasion j’aimerais savoir en quoi les profils utilisateurs RDS ne fonctionnent pas de la même manière que les profils des utilisateurs standards du domaine ?

    • Hicham KADIRI dit :

      un Disque de profil utilisateur est un disque virtuel (VHDx) mappé au Logon et démappé au Logoff. Un profil itinérant est un dossier hébergé sur un share et synchroniser au logon et au Logoff. On connait tous les problèmes de synchro classique liés aux profils itinérants. De plus, un UPD est chargé 10 fois plus qu’un profil itinérant standard (bien évidemment selon dépendra de la taille du profil) mais ce nouveau concept de profil permet d’éviter tous les problèmes liés aux profils utilisateurs ayant besoin de changer de PC /Laptop everyday :). j’espère avoir répondu à votre question. HK

  5. jb dit :

    Salut, pour info mon problème ne s’est pas reproduit, j’ai eu un souci avec le serveur de fichier qui héberge les profils je pense qu’il y avait cause a effet,

    j’ai une autre question
    j’ai vu dans c:\users sur chaque RDSH qu’il y avait un répertoire : UVHDCLEANUPBIN
    il stocke les profils temporairement a ce que je comprend
    peut’on le supprimer
    j’ai fait une taches planifiée qui supprime une fois semaine les profil finissant par BACKUP-*
    est ce que je peux supprimer ce répertoire en même temps ?

    merci

    • Jerome dit :

      Bonjour JB, Quel était ton souci sur ton serveur de fichier ? je soupçonne le miens.

      Voici le type d’erreur sur un RDS lors de l’échec de connexion.

      Nom du journal :Microsoft-Windows-TerminalServices-RemoteConnectionManager/Admin
      Source : Microsoft-Windows-TerminalServices-RemoteConnectionManager
      Date : 25/11/2016 08:35:17
      ID de l’événement :20495
      Catégorie de la tâche :Aucun
      Niveau : Erreur
      Mots clés :
      Utilisateur : Système
      Ordinateur : RDS2.*****.local
      Description :
      Les services Bureau à distance n’ont pas pu attacher de disque de profil utilisateur pour le compte d’utilisateur dont le SID est S-1-5-21-1328952203-2743117469-4275915706-1756. Code d’erreur : 0x21.135

  6. jb dit :

    Salut Jérôme
    en fait nous avions installé un nouveau soft sur le serveur de fichier qui gère des audits concernant les droits NTFS, a priori nous l’avions mal installé car tous les matins notre serveur de fichier était a 80% de cpu, nous avons donc reconfiguré ce logiciel,
    depuis je n’ai plus aucun souci de profils temporaires

    • Hicham KADIRI dit :

      Bonjour jb, lors de la configuration des profils UPD sur une Collection spécifique regroupant des serveurs RDSH, ces derniers se voient automatiquement positionnés certaines droits NTFS sur le répertoire /share hébergeant les disques de profils utilisateurs (disques VHDx). si une couche soft gérant /modifiant les droits NTFS sur un serveur de fichiers stockant les UPDs est déployée, il faudrait étudier la modification /changement généré(e) par celle-ci. je vous recommande la mise en place d’une infra de test (représentative à votre env de prod) >> PoC. déployer ensuite votre solution de management de droits NTFS /WS, étudier ensuite l’impact sur l’utilisation des UPDs et éviter tout déploiement en prod avant de prendre connaissance des éventuels effets de bord dû à cette solution.

  7. jb dit :

    Salut Hicham, merci pour tes réponses, nous avons mis en place Netwrix pour gérer les modifications ntfs sur notre domaine
    j’ai une ferme de tests ou j’effectue quelques essais,
    depuis reconfiguration je n’ai plus de souci,
    par contre sais tu a quoi sert le dossier caché UVHDCLEANUPBIN dans c:\users sur les RDSH ?

    • Jerome dit :

      Bonjour,

      Quel est la bonne pratique pour l’enregistrement DNS pointant sur le nom de la ferme ? Comme avec 2008 R2, pointeur RDS sur les hôtes de bureau à distance + RoundRobin ? Ou seulement pointer sur le broker avec l’ajout dans le registre de « :tsv://MS Terminal Services Plugin.1.nom_collection » ?

      Je pense que mon pb de profil temporaire est lié, sinon voici un lien MS KB RDS
      https://support.microsoft.com/fr-fr/kb/2933664

      • Hicham KADIRI dit :

        Bonjour Jérôme, les options de Load balancing ont changé depuis RDS 2012 et 2012 R2 (mais aussi pour RDS 2016 :)).
        Vous pouvez continuer à utiliser du DNSRR (Round Robin DNS) mais ce n’est pas ce qui recommandé (enfin si, mais pour les LAB /PoC).
        Le DNS RR n’intégre pas de système intelligent pour qui permet de détecter la défaillance d’un hôte pour switcher sur un autre hôte.
        Ce que je recommande à mes clients :
        (si budget OK) : partir sur une solution NLB Hardware, de type F5 Big-IP ou A10 (Network).
        (si pas de buget) : partir sur la fonctionnalité native de WS Server 2012 /2012 R2 >> Microsoft NLB

        Microsoft NLB (ou les solutions tierces comme F5BIP /A10) sont utilisées pour le HA du service Web Acces et Gateway RDS
        Pour le HA du service Broker, un système de haute disponibilité est désormais native, un seul prérequis existe : SQL Server pour héberger la base de données RDCB HA.
        Pour le service Hôte de Session, idem, un système de load balancing existe, il suffit d’avoir de seveurs Hôte de session et +

        si cela vous intéresse, tout est détaillé dans mon livre RDS 2012 R2 guide du consultant, dispo format ebook:PDF (sur YouScribe et BecomeITExpert.com) et broché (sur Amazon).

        J’espère avoir répondu à tes questions.
        HK.

    • Hicham KADIRI dit :

      Le dossier UVHDCLEANUPBIN correspond à emplacement de cache pour les UPD des remote user. quand vous activez la fonctionnalité UPD, les utilisateurs distants ouvrant une session sur un ou plusieurs RDSH mappent leur vDisk au Logon, leurs données personnelles et celles d’Apps sont temporairement chargées pour optimiser la lecture de celles lors de l’utilisation dela session Bureau à distance. un système de CleanUp est lancé automatiquement au moment du logoff (démontage du vDisk).

  8. ludovic dit :

    defrag des « user profil disk » ?

  9. Johan dit :

    Bonjour Hicham et merci pour ce super article,
    Je suis en train de mettre en place un infra RDS sous 2012R2.
    Toutefois je rencontre un souci avec UPD.
    Le stockage des vhdx sera fait sur un serveur de fichier dans le même domaine AD, le partage a été fait et les permissions se sont bien mise en place pour les serveur RDS à l’issue de la configuration UPD de la Collection.
    Le template VHDX s’est bien créé au bon endroit. Tout les résultats sont conformes à cet article.
    Toutefois, je fais des tests et même avec un utilisateur fraîchement créé dans AD, et le résultat est le même :
    – Profil temporaire.
    – Aucune création du vhdx attaché d’un SID…
    il doit y avoir un lézard quelque-part et j’avoue tourner en rond depuis un certain temps maintenant…
    J’ai bien vérifier que le partage est accessible depuis les RDS, broker etc… et c’est qui est le cas.

    Encore merci 🙂

    Johan

  10. Cédric CHAISSAC dit :

    Bonjour Hicham,
    savez-vous comment réduire la taille d’un fichier vhdx ? Certains de nos utilisateurs aillant atteints le quota appliqué, nous leur avons demandé de libérer de la place mais leur disque virtuel reste à la même taille.

    Cédric

    • Hicham KADIRI dit :

      Bonjour Cédric,
      la taille des VHDx ne peut être modifiée après création.
      C’est la raison pour laquelle, il est recommandé de bien étudier cette option dans la phase « Design ».
      Une fois la taille définie sur la taille, la taille des VHDx existants ne peut être augmentée.
      En revanche, vous pouvez utiliser la Cmd-let « Set-RDSessionCollectionConfiguration avec le paramètre -MaxUserProfileDiskSizeGB (et bien sûre -CollectionName pour augmenter la taille des UPDs (VHDx). Tout nouveau VHDx qui sera généré occupera une taille MAX définie via la Cmd-let Set-RDSessionCollectionConfiguration. Les VHDx déjà créés ne sont pas affectés ni modifiés.

  11. frédéric dit :

    Bonjour Hicham,

    J’ai configuré un collection RDS de 4 serveurs avec des UPD sur une cinquième serveur.
    Je cherche à faire du multi session sur cette collection pour un même utilisateur.
    Cette contrainte étant dû à un logiciel métier qu’y n’ouvre qu’une seule instance dans mon environnement, et le fait de faire du multi session permet d’ouvrir 2 instances de ce logiciel et donc de travailler sur deux écrans pour l’utilisateur. Ce qui lui fait gagner énormément de temps.

    Avec les profils itinérants je n’avais pas de problèmes. Cependant, avec les UPD lorsque mon utilisateur ouvre sa première session tout se passe bien, mais lorsqu’il ouvre sa deuxième session j’ai un profil temporaire.

    Après analyse du problème, je comprends que l’utilisateur1 s’étant connecté sur le RDS1 avec son UPD la première session fonctionne bien. Mais lorsque l’utilisateur1 veut ouvrir sa deuxième session sur RDS2, RDS3 ou RDS4 il a un profil temporaire car son UPD est occupé sur RDS1.

    La question que je me pose est donc :
    – Comment gérer le multi session sur une collection RDS afin qu’un utilisateur ouvre sa deuxième session sur me le même serveur RDS déjà ouvert?
    – Ou bien il y a t il un moyen différent de faire du multi-session pour un seul utilisateur sur différent serveur RDS avec la technologie UPD? Ce qui paraît techniquement compliqué …

    Merci de ton aide,

    • Hicham KADIRI dit :

      Bonjour Frédéric, un utilisateur RDS ne peut avoir deux sessions Bureau à distance ouvertes (simultanément) sur un seul et même serveur RDS(h); en revanche, il peut lancer plusieurs instance d’une même Application; par contre, un Rds user X peut lancer plusieurs instances de l’App Y sur une même session Rds; maintenant, si vous avez les UPD, le profil de l’utilisateur RDS sera chargé sur chaque serveur RDS sur lequel il sera connecté, généralement dans ce mode de fonctionnement, le Broker redirigera toujours l’utilisateur au premier serveur sur lequel est déjà connecté. pour conclure, il faut oublier l’ouverture de plusieurs sessions Bureau à distance sur un même serveur avec les UPDs et garder à l’esprit qu’on peut faire du multi instance d’App sur la meme session; j’espère avoir répondu à ta question; goodluck; a+

      • frédéric dit :

        Merci Hicham, cela me confirme bien le problème de mappage d’UDP sur un seul serveur. Néanmoins si je voulais ouvrir plusieurs sessions, c’est justement que j’ai un logiciel métier qui m’interdit de l’ouvrir plusieurs fois sur une même session. Et je ne trouve pas comment tricher sur ce logiciel pour qu’il ouvre plusieurs instances. Merci encore pour ta réponse et réactivité. Ton blog est super!

      • Hicham KADIRI dit :

        Thank’s Fréd :); a bientôt

  12. Frédéric dit :

    Bonjour,
    J’ai mis en place un environnement RDS 2016 (bureaux distant) avec UPD (sur un cluster SOFS 2016) et je constate des avertissement ID 158 : Duplicate GUID sur les serveurs RDSH. Ill ne semble pas y avoir de problème à l’usage. Mais je me demandais si ce message était normal ?

    • Hicham KADIRI dit :

      Yes, l’event 158 remonte un warning car il detecte de multiples devices (disques) avec le même Disk ID (GUID). de mémoire, en activant la MPIO feature, ces messages d’erreurs ne seront plus remontés sur l’event viewer. sinon rien de grave pour votre plateforme RDS. aucun impact, côté srv ou client RDS (fonctionnement, perfs, accès…)

  13. TSILA dit :

    Bonjour,

    J’ai un broker avec 2 RDhost et des upds stockés sur le broker ma question est la suivante:
    Est ce que l’utilisateur peut ouvrir plusieurs session avec son compte utilisateur (une session sur le premier rdhost et une autre sur le deuxième) ou le broker dirigera toujours la connexion vers le serveur sur lequel la session est active??

    • Hicham KADIRI dit :

      Bonjour TSILA,
      Si la session de l’utilisation distant est hébergée sur le premier RD Session Host, et que celle ci est dans un état « Active » ou « Déconnectée », le serveur Broker va toujours rediriger cet utilisateur vers sa session existante. Pour être redirigée vers un autre Serveur Hôte de session du déploiement, la session hébergée sur le premier RD Session Host server doit être fermée (logoff de la session).

      j’espère avoir répondu à votre question.
      A+
      HK.

      • TSILA dit :

        Bonjour merci pour votre retour,Donc il y a pas moyen d ouvrir une session concurrente?

  14. TSILA dit :

    ou d’utiliser des profils itinérants au lieu des upds?

    • Hicham KADIRI dit :

      Les UPDs peuvent être utilisés pour éviter l’utilisation des profils itinérants (pour éviter les erreurs classiques des synchro au logoff /logon); maintenant, rien vous empeche d’utiliser des profils itinérants avec des redirections de folder. par contre, ouvrir deux sessions concurrents sur deux serveurs Hote de session appartenant à une meme collection ne sera pas possible quelque soit l’option utilisée (profils itinérants ou autre).

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s