App Layering

Déployer des couches d’application en tant que couches

Grâce à la fonctionnalité des couches élastiques, vous pouvez diffuser des applications étroitement ciblées en dehors de l’image de base. En fait, vous pouvez affecter des couches à des utilisateurs spécifiques à la demande. Lorsque le paramètre Couche élastique est activé dans un modèle d’image, les utilisateurs qui se connectent aux images publiées peuvent se voir attribuer des couches d’application spécifiques en tant que couches élastiques.

A propos des couches élastiques

Une couche élastique est une couche d’application que vous affectez à des utilisateurs et à des groupes individuels pour une diffusion à la demande. Les utilisateurs reçoivent les couches élastiques qui leur sont assignées en plus des applications incluses dans l’image de base.

Les couches élastiques vous permettent de donner à chaque utilisateur un ensemble unique d’applications ainsi que les applications courantes incluses dans l’image de base. Sur les hôtes de session, une couche élastique est utilisée entre les sessions. Sur les postes de travail autonomes, les couches élastiques sont utilisées dans les pools flottants et les groupes partagés.

En fonction des droits de l’utilisateur, les couches élastiques sont livrées aux postes de travail des utilisateurs lors de la connexion. Vous pouvez affecter des couches élastiques aux utilisateurs sur des hôtes de session, ainsi que sur des postes de travail autonomes, à condition que les images aient été publiées à l’aide de la App Layering.

Attributions de couches élastiques

Vous pouvez fournir une version spécifique de la couche d’application aux membres d’un groupe chaque fois qu’ils se connectent à leur poste de travail. Vous affectez la version de la couche d’application en tant que couche élastique. Une copie de la couche est ensuite stockée dans le partage de fichiers réseau de l’appliance et remise à la demande aux utilisateurs et groupes AD affectés, en plus des couches qu’ils reçoivent via l’image de base.

Pour utiliser cette fonctionnalité, vous ajoutez Elastic Assignments en spécifiant quels utilisateurs et groupes reçoivent chaque couche d’application. Vous publiez ensuite votre image de base avec le paramètre Elastic Layering activé.

Comment les utilisateurs accèdent aux couches élastiques qui leur sont assignées

Lorsque les utilisateurs se connectent à leur session ou à leur bureau, les icônes de leurs couches élastiques apparaissent sous forme de raccourcis sur le bureau.

Un utilisateur reçoit une couche élastique dans les cas suivants :

  • La couche est affectée à l’utilisateur (un utilisateur AD dans la console de gestion).
  • La couche est affectée à un groupe AD auquel l’utilisateur appartient.
  • Une machine sur laquelle l’utilisateur se connecte est membre d’un groupe AD qui reçoit la couche élastique.
  • Une machine sur laquelle l’utilisateur se connecte est associée à un groupe AD affecté à la couche via la console de gestion.

Lorsqu’un utilisateur est affecté à plusieurs versions d’une couche

Lorsqu’une couche est assignée directement à un utilisateur, et indirectement à un ou plusieurs groupes de l’utilisateur, elle reçoit la version directement affectée la plus récente. Par exemple :

  • Si la version 2est affectée à l’utilisateur et qu’un groupe auquel il appartient se voit attribuer la version 3, l’utilisateur obtient la version 2.

  • Si plusieurs groupes auxquels l’utilisateur appartient se voient attribuer des versions différentes de la même couche, l’utilisateur reçoit la version la plus récente de la couche affectée.

Lorsqu’un utilisateur reçoit un couche d’application à la fois dans l’image de base et en tant que couche élastique

Lorsqu’un couche d’application est inclus dans l’image de base, ne l’attribuez pas au même utilisateur qu’un couche élastique. Si l’utilisateur se retrouve avec la même couche affectée dans les deux sens, il reçoit la couche élastique, quelle que soit la version.

Logiciels requis

  • .NET Framework 4.5 est requis sur toute image en couches où les couches élastiques sont activées.
  • Les couches d’application que vous souhaitez attribuer en tant que couches élastiques.

Considérations

Couches d’application avec le même couche OS que l’image en couches

Pour de meilleurs résultats, lorsque vous attribuez des couches d’application en tant que couches élastiques, vous pouvez attribuer des couches d’application dotées de la même couche de système d’exploitation que celle utilisée dans l’image en couches. Toutefois, avec cette approche traditionnelle, vous devrez peut-être créer et gérer des copies supplémentaires de certaines couches d’applications, une pour chaque couche de système d’exploitation avec laquelle vous déployez.

Changement de couche d’OS pour les couches élastiques

Pour attribuer une couche élastique aux utilisateurs sur une image en couches utilisant une couche de système d’exploitation différente, vous devez activer cette fonctionnalité dans les propriétés de la couche d’application en cochant la case Autoriser l’attribution élastique de cette couche d’application à toutes les images en couches, quelle que soit la couche du système d’exploitation . Toutes les limites de la stratification élastique sont valides lors du changement de couche du système d’exploitation.

Quand cela pourrait bien fonctionner

Pour les applications simples qui peuvent être installées sur n’importe quel système d’exploitation. Exemple : Notepad++, WinRAR, 7Zip

Quand cela pourrait ne pas bien fonctionner

Pour les applications complexes dont l’installation dépend du système d’exploitation installé. Exemple :

  • Si vous utilisez une couche de système d’exploitation Windows 10 pour créer la couche d’application et que l’image est attribuée en tant que couche de système d’exploitation Server 2019, l’application risque de ne pas fonctionner comme prévu.
  • Les applications qui dépendent d’une version spécifique de .Net risquent de ne pas fonctionner correctement si la version correcte de .Net n’est pas installée sur le nouveau système d’exploitation.

Remarque :

  • Il est recommandé d’utiliser la même classe de système d’exploitation et les mêmes révisions de système d’exploitation proches les unes des autres. Exemple : vous pouvez utiliser deux révisions 22H2 de Windows 10 espacées d’une semaine.
  • Lorsque vous utilisez une image de système d’exploitation différente, vous devez valider les couches que vous attribuez de manière élastique à n’importe quel utilisateur. Si les couches ne sont pas validées, vous devez créer une couche d’application à l’aide de la couche du système d’exploitation utilisée pour l’image et attribuer les couches à l’utilisateur sans cocher la case Autoriser l’attribution élastique de cette couche d’application à toutes les images en couches, quelle que soit la couche du système d’exploitation .
  • Lorsque vous ajoutez des versions à une couche d’application, vous devez utiliser la couche de système d’exploitation incluse dans la couche d’application d’origine.

Limites de superposition élastique

Vous ne pouvez pas utiliser de couche élastique pour ce qui suit :

  • Microsoft Office, Office 365, Visual Studio.
  • Applications avec des pilotes qui utilisent le magasin de pilotes. Exemple : un pilote d’imprimante.
  • Applications qui modifient la pile réseau ou le matériel. Exemple : un client VPN.
  • Applications qui ont des pilotes au niveau du démarrage. Exemple : un analyseur de virus.

Une couche d’application ne conserve pas un utilisateur ou un administrateur local que vous ajoutez pour une application qui en a besoin, contrairement à la couche du système d’exploitation. Par conséquent, ajoutez l’utilisateur ou l’administrateur local à la couche du système d’exploitation avant d’installer l’application. Une fois que la couche d’application fonctionne, vous pouvez l’affecter en tant que couche élastique.

Mode de compatibilité des couches élastiques

Lorsqu’un utilisateur ouvre une session sur un bureau provisionné à l’aide d’une image en couches, la couche élastique est composée dans l’image une fois que l’utilisateur ouvre une session. Si une couche élastique ne se charge pas correctement, essayez d’activer le mode de compatibilité des couches élastiques. Lorsque le mode de compatibilité est activé, la couche élastique commence à se charger avant la fin de la connexion.

Important :

Le mode de compatibilité est requis lors de l’utilisation d’applications publiées car la couche doit être montée avant le lancement. Dans le cas contraire, nous vous recommandons de désactiver le mode de compatibilité, sauf si une couche élastique ne fonctionne pas comme prévu. L’activation de ce paramètre sur un trop grand nombre de couches ralentit les temps de connexion.

Le compte d’utilisateur sous lequel les couches élastiques s’exécutent

Par défaut, lorsque le premier utilisateur a attribué une couche élastique se connecte à son bureau, toutes les couches élastiques affectées à l’utilisateur sont montées. Les autres utilisateurs qui se connectent à la machine hébergeant les couches utilisent la même connexion que le premier utilisateur. La connexion dure 10 heures après la première connexion, puis toutes les couches élastiques sont déconnectées. Dans un environnement axé sur les quarts de travail, les utilisateurs du deuxième quart de travail seraient touchés environ deux heures après le quart de travail (ou 10 heures après que l’utilisateur initial ait ouvert une session pour le premier quart de travail).

Si vous distribuez des couches élastiques dans un environnement basé sur un décalage, vous pouvez modifier le compte par défaut sous lequel toutes les couches élastiques s’exécutent. Au lieu d’exécuter sous le premier utilisateur qui se connecte, vous pouvez modifier l’utilisateur par défaut pour toutes les couches élastiques sur le service ulayer, qui s’exécute sous le compte local SYSTEM. Le compte SYSTEM correspond au compte de machine de domaine de la machine sur laquelle le service ulayer est en cours d’exécution lors de l’accès au partage. Le partage de fichiers contenant vos couches élastiques nécessite un accès read-only, soit pour tous les utilisateurs, soit pour chaque compte de machine.

  • Pour modifier le compte sous lequel les couches élastiques doivent être exécutées, créez la valeur de registre DWORD et définissez-la sur 1 :

    HKEY_LOCAL_MACHINE\Software\Unidesk\Ulayer:AsSelfAppAttach to **1**

  • Pour revenir à l’exécution de couches élastiques sous le premier utilisateur à se connecter, définissez la valeur DWORD du registre sur 0 :

    HKEY_LOCAL_MACHINE\Software\Unidesk\Ulayer:AsSelfAppAttach to **0**

  • Pour supprimer le paramètre afin que les couches élastiques ne puissent s’exécuter qu’en mode par défaut, supprimez la valeur DWORD:

    HKEY_LOCAL_MACHINE\Software\Unidesk\Ulayer:AsSelfAppAttach

Activer les couches élastiques sur vos images de base

Vous pouvez activer les couches élastiques sur vos images de base (superposées) en configurant le modèle d’image que vous utilisez pour les publier :

  1. Dans la console de gestion, sélectionnez le modèle d’image à utiliser pour publier vos images en couches.

  2. Sélectionnez l’onglet Images, puis le modèle d’image sur lequel vous souhaitez activer la superposition élastique.

  3. Sélectionnez Modifier le modèle dans la barre d’actions.

  4. Sélectionnez l’onglet Disque d’image en couches .

  5. Dans le champ Elastic Layering, sélectionnez Application Layering.

  6. Sélectionnez l’onglet Confirmer et terminer, puis cliquez sur Enregistrer le modèle et publier.

  7. Utilisez votre système de provisioning pour distribuer les machines virtuelles.

    Lorsque les utilisateurs se connectent, le bureau inclut une icône pour chacune de leurs couches d’application élastiques.

Exécutez l’analyseur Elastic Fit sur les couches d’application

Avant d’affecter une couche d’application de manière élastique, utilisez Elastic Fit Analyzer pour déterminer la probabilité que l’attribution de la couche soit réussie.

Analyse Elastic Fit

Dans les détails de la couche, l’indice d’ ajustement élastique indique la probabilité que le calque fonctionne lorsqu’il est attribué élastiquement.

Ajustement élastique adapté. Cette couche fonctionne lorsqu’elle est déployée de manière élastique.

Passe élastique

Ajustement élastique médiocre. Il est peu probable que la mise en place élastique de la couche fonctionne lorsqu’elle est déployée de manière élastique. Le couche peut se comporter différemment de ce qu’il fait lorsqu’il est déployé dans une image en couches.

Échec de l'ajustement élastique

Détails élastiques

Pour en savoir plus sur le classement Elastic Fit d’une couche d’application, développez l’analyse Elastic Fit. Si l’ajustement élastique n’est pas idéal, la liste des règles violées s’affiche.

Avertissement de faible gravité. La pose élastique de la couche est peu susceptible d’entraîner un changement de comportement ou de fonctionnalité pour la plupart des applications.

Avertissement de faible gravité

Avertissement de gravité moyenne. La distribution élastique de la couche peut entraîner des changements mineurs de comportement ou de fonctionnalité pour certaines applications.

Avertissement de gravité moyenne

Avertissement de gravité élevée. La distribution élastique de la couche est susceptible d’entraîner des changements significatifs de comportement ou de fonctionnalité pour de nombreuses applications.

Avertissement de gravité élevée

Remarque :

Si vous recevez un avertissement indiquant qu’une modification du fichier de clé principale a été détectée et que vous n’avez pas modifié ce fichier intentionnellement, définissez la valeur de l’indicateur DeleteMasterKeys dans l’emplacement HKLM\System\ControlSet001\Services\Uniservice du Registre sur 1 (vrai). Désormais, lorsque la couche d’application est finalisée, les fichiers de clé principale sont supprimés de la couche. Cette valeur n’est pas persistante et ne fonctionne que par révision. Il doit être défini chaque fois qu’une révision de la couche est créée.

Analyser l’ajustement élastique d’une couche d’application

Toutes les nouvelles versions d’une version de couche sont analysées pour vérifier la compatibilité des couches élastiques lorsqu’elles sont finalisées. Pour analyser les couches d’applications existantes pour Elastic Fit :

  1. Connectez-vous à la console de gestion.
  2. Sélectionnez Calques > Calques d’application.
  3. Sélectionnez la couche à analyser, puis cliquez sur Analyser la couche.
  4. Dans l’onglet Sélectionner les versions, choisissez les Versions de couche à analyser.
  5. Dans l’onglet Confirmer et terminer, cliquez sur Analyser les versions des couches. L’analyse prend quelques secondes.
  6. Pour voir l’analyse Elastic Fit, sélectionnez le module des couches de l’application, placez le pointeur de la souris sur l’icône de la couche et cliquez sur l’icône Infos .
  7. Développez les informations de version pour chaque version de couche et recherchez l’indice Elastic Fit.
  8. Pour obtenir un rapport détaillé, développez les détails de l’ajustement élastique. Si l’ajustement élastique est inférieur à l’idéal, la liste des règles violées s’affichera.
  9. Vous pouvez afficher l’arborescence AD et masquer les règles violées en cliquant sur un bouton reconnaissant que la couche ne fonctionnera probablement pas comme prévu.

Mise à niveau à partir de versions antérieures

Après la mise à niveau à partir d’une première version de couche App Layering, le détail Elastic Fit indique que les versions de couches existantes n’ont pas été analysées. Les versions ont un seul détail d’ajustement élastique haute sévérité et un ajustement élastique médiocre . Pour une lecture précise, exécutez l’analyse sur les versions de couches existantes.

Affecter une couche d’application de manière élastique aux utilisateurs et groupes AD

La première fois que vous attribuez une couche d’application de manière élastique, nous vous recommandons de commencer par une application simple telle que Notepad++ ou GIMP.

  1. Connectez-vous à la console de gestion en tant qu’utilisateur administrateur et sélectionnez Layers > App Layers.
  2. Sélectionnez une couche d’application que vous ne prévoyez pas d’inclure dans l’image de base, puis sélectionnez la version de l’application que vous souhaitez attribuer.
  3. Cliquez sur Update Assignments.
  4. Sélectionnez la version de la couche d’applications que vous souhaitez attribuer aux utilisateurs.
  5. Ignorer l’assignation du modèle Ceci permet d’affecter le calque à un modèle d’image.
  6. Sélectionnez les utilisateurs et les groupes auxquels vous souhaitez recevoir cette version de la couche d’application.
  7. Passez en revue vos sélections, puis cliquez sur Assign Layers.

Lorsque les utilisateurs se connectent, il y a une icône pour chaque couche élastique qui leur a été attribuée.

Affecter de manière élastique une couche d’application aux utilisateurs via des affectations de machines et des associations

Vous pouvez affecter des couches à une machine en l’ajoutant au groupe AD ou en l’associant à celui-ci. Affectez ensuite de manière élastique les couches d’application au groupe AD.

Les couches affectées à la machine sont disponibles pour chaque utilisateur qui se connecte avec succès à cette machine. Le service App Layering recherche toutes les 10 minutes les modifications apportées aux appartenances et aux associations des groupes AD de la machine. Lorsque les utilisateurs se connectent, ils voient une icône pour chaque couche d’application élastique qui leur a été attribuée.

Utiliser Active Directory pour ajouter la machine au groupe AD

En supposant qu’une image en couches publiée démarre dans votre environnement, vous pouvez ajouter la machine à un groupe AD et affecter des couches élastiques au groupe AD.

  1. Utilisez Active Directory (AD) pour ajouter la machine à un groupe AD.

  2. Sélectionnez une couche d’application que vous ne prévoyez pas d’inclure dans l’image de base et affectez élastiquement la couche à un groupe AD.

  3. Vous pouvez attendre qu’AD propage les modifications et que le service App Layering soit appliqué, ou vous pouvez forcer le service App Layering à mettre à jour sa liste de groupes de machines en effectuant l’une des opérations suivantes :

    • Attendez que le service App Layering détecte les modifications (dans les 10 minutes par défaut).

    • Redémarrez le service App Layering.

    • Redémarrez la machine du service App Layering.

    • Exécutez la commande refresh.groups  :

      C:\Program Files\Unidesk\Layering Services\ulayer.exe refresh.groups

Exemple

Vous commencez par un utilisateur AD, un groupe AD et une machine que vous avez provisionnée à l’aide d’une image en couches.

  • Utilisateur AD : Kenya
    • Le Kenya n’a aucune mission élastique.
  • Groupe AD : Marketing
    • Le groupe Marketing comprend le membre Kenya.
  • Machine : ElasticTestMachine
    • L’image de base ElasticTestMachine inclut la couche d’application MS Office.

Dans cet exemple, vous affectez de manière élastique la couche Chrome App à ElasticTestMachine :

  1. Dans AD, vous ajoutez la machine ElasticTestMachine au groupe Marketing AD.
  2. Dans la console de gestion, vous affectez de manière élastique la couche d’application Chrome au groupe marketing .
  3. Lorsque Kenya, qui fait partie du groupe Marketing, se connecte à ElasticTestMachine, elle reçoit à la fois la couche MS Office App, qui se trouve dans l’image de base, et la couche Chrome App.
  4. Lorsqu’un utilisateur qui ne fait pas partie du groupe Marketing se connecte à ElasticTestMachine, il reçoit également les deux couches : MS Office, car il se trouve dans l’image de base, et Chrome, car ElasticTestMachine est membre du groupe Groupe Marketing AD.

Gestion des affectations élastiques

Vous pouvez :

  • Ajoutez une affectation élastique.
  • Mettez à jour une couche d’application et affectez de manière élastique la nouvelle version de la couche.
  • Supprimer les attributions élastiques.
  • Déboguer une affectation élastique.

Mettre à jour une couche d’application et ses attributions élastiques

Vous avez ajouté des affectations élastiques à une couche d’application et les utilisateurs accèdent à l’application comme prévu. Une nouvelle version de l’application est publiée, de sorte que vous la mettez à jour avec une nouvelle version sur la couche. Maintenant, vous devez affecter la nouvelle version aux utilisateurs qui ont la couche.

  1. Connectez-vous à la console de gestion et sélectionnez Layers > App Layers.

  2. Sélectionnez la couche d’application attribuée élastiquement que vous avez mise à jour.

  3. Cliquez sur Informations sur la version > Mettre à jour les

  4. Sélectionnez la nouvelle version.

  5. Ignorez l’onglet Attribution du modèle d’image

  6. L’onglet Elastic Assignment contient une liste d’utilisateurs et de groupes auxquels une version différente de la couche sélectionnée a été affectée. Sélectionnez les utilisateurs et les groupes auxquels vous souhaitez affecter la nouvelle version de la couche.

    Remarques :

    • Si la liste est longue, utilisez le champ Rechercher pour filtrer les résultats.
    • Si la liste est vide, cochez la case Afficher les utilisateurs et les groupes AD déjà présents dans cette version. Une liste de noms grisés apparaît. Ces utilisateurs ont déjà reçu la version.
  7. Sous l’onglet Confirmer et Terminer, vérifiez les utilisateurs et les groupes que vous souhaitez recevoir la nouvelle version.

  8. Cliquez sur Update Assignments.

Supprimer les attributions élastiques d’une couche

  1. Connectez-vous à la console de gestion et sélectionnez Layers > App Layers.

  2. Sélectionnez la couche d’application pour laquelle vous souhaitez supprimer des attributions, puis sélectionnez Supprimer des affectations.

  3. Sélectionnez les modèles attribués dont vous souhaitez supprimer la couche. Les affectations de la couche sont répertoriées.

    Si la liste est longue, utilisez le champ Rechercher pour filtrer les résultats.

  4. Sous l’onglet Confirmer et Terminer, vérifiez que les modèles d’image appropriés sont sélectionnés pour recevoir la nouvelle version.

  5. Cliquez sur Supprimer les affectations.

Résolution des problèmes liés à la couche élastique

Vous pouvez diagnostiquer la source d’un problème de superposition élastique en déterminant si la couche est livrée et si la couche fonctionne correctement. Si nécessaire, collectez des données à des fins d’assistance, comme décrit ici.

Est-ce que le problème est lié à la remise des couches ?

Est-ce que ce que vous vous attendez à voir lorsque cette application est installée là-bas ?

  • Voyez-vous les fichiers et les entrées de Registre de la couche ?
  • Si l’application est supposée être dans le menu Démarrer, est-ce là ?
  • Si vous vous attendez à ce qu’il y ait un raccourci pour l’application sur le bureau de l’utilisateur, y en a-t-il un ?

Si vous découvrez que la livraison de l’application est un problème, vous pouvez collecter les données suivantes, ouvrir un dossier et envoyer les données au support technique.

  1. Collectez les données à partir de ces journaux :

    • Journal des événements des applications Windows : dans l’Observateur d’événements Windows, sous Journaux Windows, exportez le journal des événements de l’application en tant que fichier EVTX.
    • Journal du service App Layering (ulayersvc.log) — C:\ProgramData\Unidesk\Logs\ulayersvc.log
  2. Collectez les valeurs de ces clés de registre :

    • HKEY_LOCAL_MACHINE\SOFTWARE\Unidesk\ULayer:AssignmentFile
    • HKEY_LOCAL_MACHINE\SOFTWARE\Unidesk\ULayer:RepositoryPath
  3. Collectez le contenu des fichiers d’affectation (ElasticClayerAssignments.json) et Layers (Layers.json) à partir du chemin du référentiel.

  4. Contactez le support technique.

La question est-elle opérationnelle ?

L’un de ces comportements peut indiquer un problème de superposition élastique :

  • L’application est en cours de livraison mais ne se lance pas correctement.
  • Une opération au sein de l’application ne fonctionne pas correctement.
  • Un problème de licence ou un problème de sécurité.
  • L’application se lance, mais se comporte mal, par exemple, elle se bloque au démarrage ou démarre mais ne fonctionne pas correctement.

Si le problème avec la couche est opérationnel, testez la couche d’application dans l’image de base pour exclure les problèmes généraux de superposition :

  1. Ajoutez la couche d’application à un modèle d’image et publiez une image en couches qui inclut la couche d’application.
  2. Connectez-vous en tant qu’utilisateur auquel le calque n’est pas affecté de manière élastique et assurez-vous que l’application est opérationnelle dans l’image de base.
  3. Contactez le support technique pour obtenir vos résultats.