App Layering

Mise à jour de la couche

Les étapes de mise à jour du logiciel dans un système d’exploitation, une plate-forme ou une couche d’application sont pratiquement les mêmes. Vous ajoutez une version à la couche, installez la mise à niveau ou le correctif sur la machine de packaging, vérifiez, puis finalisez la couche. Une fois mis à jour, vous déployez la nouvelle version de couche, qui varie en fonction du type de couche.

La couche de plate-forme est la couche de priorité la plus élevée et critique pour le déploiement d’images, en particulier en ce qui concerne les périphériques, tels que vos réseaux. Chaque fois que vous mettez à jour le logiciel d’infrastructure, vous devez ajouter une nouvelle version à la couche de plate-forme.

Vous ajoutez une version à la couche de plate-forme en utilisant la nouvelle couche de système d’exploitation comme base. Une fois que la machine de packaging a démarré, arrêtez la machine pour la finalisation. La couche de plate-forme rassemble les composants critiques de la nouvelle version de la couche OS et les met à jour dans la plate-forme afin qu’ils correspondent à la version du système d’exploitation.

Ajouter une version à la couche

Par exemple, pour ajouter une version à une couche du système d’exploitation :

  1. Dans la console de gestion Citrix App Layering, sélectionnez Couches > Couches du système d’exploitation
  2. Sélectionnez une couche du système d’exploitation et cliquez sur Ajouter une versiondans l’onglet Informations sur la version.
  3. Dans les détails de la version :
    1. Pour Version de base, sélectionnez la version à utiliser comme base pour la nouvelle version de couche. La valeur par défaut est la dernière version.
    2. Entrez un nom pour la nouvelle version. Il peut s’agir de la version du système d’exploitation ou d’autres informations d’identification.
  4. Sélectionnez une configuration de connecteur pour l’hyperviseur dans lequel vous créez votre couche.
  5. Entrez un nom de fichier pour le disque d’empaquetage et sélectionnez le format de disque à utiliser si vous utilisez le partage de fichiers de l’appliance, au lieu d’une configuration de connecteur. Ce disque est utilisé pour la machine de packaging (la machine virtuelle) sur laquelle vous installez l’application.
  6. Vérifiez vos paramètres et cliquez sur Ajouter une version. Cette opération exécute une tâche pour créer une version du système d’exploitation. Lorsque la tâche est terminée, elle affiche l’état Action requise. Lorsque vous sélectionnez la tâche et que vous cliquez sur Afficher les détails, le texte suivant s’affiche :

“Le disque de packaging a été publiée. La machine virtuelle « <… > » se trouve dans le dossier « <… > » du centre de données « <… > ». Mettez sous tension cette machine virtuelle pour installer votre application. Une fois l’installation terminée, mettez la machine virtuelle hors tension avant de cliquer sur Finaliser dans la barre d’actions. »

Ensuite, vous pouvez déployer une machine de packaging pour cette version de couche de système d’exploitation.

Déployer une machine de packaging sur votre hyperviseur

La machine de packaging est une machine virtuelle sur laquelle vous installez les mises à jour ou les applications à inclure dans la couche. La machine de conditionnement est une machine virtuelle temporaire qui est supprimée une fois que la couche du système d’exploitation a été finalisée.

La description de la tâche contient des instructions permettant de naviguer jusqu’à l’emplacement dans votre hyperviseur où l’empaquetage de cette couche a été créé.

  1. Pour créer la machine de packaging dans votre hyperviseur, commencez par la tâche de disque de packaging développé présentée à l’étape 2.
  2. Connectez-vous à votre client hyperviseur.
  3. De retour dans la console de gestion, suivez les instructions de la tâche de disque d’packaging étendu pour accéder à la machine d’packaging.

Installez la mise à jour du SE

  1. Connectez-vous à distance à la machine de packaging. Assurez-vous de vous connecter au compte utilisateur que vous avez utilisé pour créer le système d’exploitation.
  2. Installez les mises à jour ou les applications que vous souhaitez inclure dans la nouvelle version de la couche du système d’exploitation, telles que les mises à jour Windows ou les applications antivirus.
  3. Si une installation d’application nécessite un redémarrage du système, redémarrez-le manuellement. La machine d’packaging ne redémarre pas automatiquement.
  4. Assurez-vous que la machine d’packaging est dans l’état que vous souhaitez qu’elle soit pour l’utilisateur :
    1. Si les applications que vous installez nécessitent une installation après l’installation ou l’enregistrement de l’application, suivez ces étapes dès maintenant.
    2. Supprimez tous les paramètres, configurations, fichiers, lecteurs mappés ou applications que vous ne souhaitez pas inclure sur la machine d’packaging.

Ensuite, vous arrêtez la machine de packaging et vérifiez que la couche est prête à être finalisée.

Remarque :

Lorsque vous mettez à niveau Windows 10 d’une version majeure vers une autre (1703 à 1709, par exemple), l’installation précédente de Windows est conservée dans un dossier C:\Windows.old. Dans App Layering, vous ne devez pas supprimer ce dossier. Notre logiciel doit copier nos pilotes et autres fichiers de Windows.old vers Windows une fois la mise à niveau terminée. Nous allons nettoyer Windows.old lorsque vous finaliserez la couche du système d’exploitation.

Vérifiez la couche et arrêtez la machine de packaging

L’étape suivante consiste à vérifier que la couche est prête à être finalisée. Pour être prêt pour la finalisation, tout traitement post-installation requis, par exemple un redémarrage ou un processus ngen Microsoft, doit être terminé.

Pour vérifier que les processus en suspens sont terminés, vous pouvez exécuter l’outil Arrêter pour finaliser (icône ci-dessous), qui apparaît sur le bureau de la machine de packaging.

Pour utiliser l’outil Arrêter pour finaliser :

  1. Si vous n’êtes pas connecté à la machine de packaging, connectez-vous à distance en tant qu’utilisateur qui a créé la machine.
  2. Double-cliquez sur l’icône Arrêter pour finaliser . Une fenêtre de ligne de commande affiche des messages détaillant le processus de vérification de la couche.
  3. Si une opération en attente doit être terminée avant que la couche puisse être finalisée, vous êtes invité à la terminer. Par exemple, si une opération ngen Microsoft doit se terminer, vous pouvez essayer d’accélérer l’opération ngen, comme indiqué ci-dessous.
  4. Une fois toutes les opérations en attente terminées, double-cliquez à nouveau sur l’icône Arrêter pour finaliser . Cela éteint la machine de packaging.

La couche est prête à être finalisée.

Si la configuration de connecteur que vous avez sélectionnée est définie sur Décharger la composition, la couche est automatiquement finalisée. Sinon, l’étape suivante consiste à finaliser la couche manuellement, comme décrit dans la procédure suivante.

Messages d’intégrité de couche

Les messages d’intégrité de la couche suivants indiquent les opérations en file d’attente qui doivent être terminées avant que la couche soit prête à être finalisée :

  • A RunOnce script is outstanding - please check and reboot the Packaging Machine.
  • A post-installation reboot is pending - please check and reboot the packaging machine.
  • A Microsoft ngen operation is in progress in the background. - An MSI install operation is in progress - please check the packaging machine.
  • A reboot is pending to update drivers on the boot disk - please check and reboot the packaging machine.
  • A Microsoft ngen operation is needed.
  • `Le client Software Center est configuré pour fonctionner, mais le fichier SMSCFG.INI est toujours présent. Pour en savoir plus sur le déploiement de SCCM dans un environnement virtuel, consultez l’article Microsoft TechNet intitulé Implémentation du SCCM dans un environnement XenDesktop VDI. `

Pour plus d’informations sur la signification des messages d’intégrité de la couche et sur la façon de les déboguer, consultez la section Débogage des problèmes d’intégrité de la couche dans Citrix App Layering 4.x et versions ultérieures.

Vous ne pouvez pas contourner les messages d’intégrité de la couche en arrêtant la machine. Le logiciel App Layering s’arrête et vous renvoie à la machine de packaging jusqu’à ce que les processus soient terminés.

Si une opération ngen Microsoft est en cours, vous pouvez peut-être l’accélérer, comme décrit dans la section suivante.

Accélérez les opérations Ngen.exe Microsoft, si nécessaire

Une fois toutes les mises à jour logicielles installées, vous devez permettre à Ngen.exe de recompiler essentiellement le code d’octets .NET en images natives et de construire les entrées de registre pour les gérer.

Ngen.exe est le générateur d’images natives Microsoft, qui fait partie du système .NET. Windows détermine quand exécuter Ngen.exe en fonction du logiciel en cours d’installation et de ce que Windows détecte dans la configuration.

Important : Lorsque Ngen.exe est en cours d’exécution, vous devez le laisser se terminer. Une opération Ngen.exe interrompue peut entraîner le non-fonctionnement des assemblages .NET ou d’autres problèmes dans le système .NET.

Normalement, Ngen.exe est une opération en arrière-plan qui s’interrompt en cas d’activité au premier plan. Si vous souhaitez accélérer une opération Ngen.exe, vous pouvez placer la tâche au premier plan pour la terminer le plus rapidement possible.

Pour mettre la tâche au premier plan :

  1. Ouvrez une invite de commandes en tant qu’administrateur.
  2. Accédez au répertoire Microsoft.NET\Framework de la version actuellement utilisée :

    cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX <!--NeedCopy-->

  3. Si vous utilisez .NET Framework 3 ou une version ultérieure, entrez la commande Ngen.exe suivante pour exécuter tous les éléments mis en file d’attente. Cette commande traite les installations de composants mis en file d’attente avant de créer des assemblys.

    ngen eqi 3 <!--NeedCopy-->

    La tâche Ngen.exe passe au premier plan dans l’invite de commande et répertorie les assemblages en cours de compilation. C’est OK si vous voyez des messages de compilation.

    Assurez-vous que tous les processus Ngen.exe ont été exécutés jusqu’à leur fin. Vous pouvez utiliser le Gestionnaire des tâches pour voir si une instance de MSCORSVW.EXE est en cours d’exécution. Si c’est le cas, laissez-le se terminer ou exécutez ngen eqi 3.

    Attention : Ne redémarrez pas pour arrêter la tâche. Autoriser la tâche à terminer !

  4. Si vous utilisez .NET Framework 2 ou une version antérieure, entrez la commande Ngen.exe suivante pour exécuter les éléments mis en file d’attente.

    ``` ngen update /force

    
    Cela place la tâche ngen au premier plan dans l'invite de commandes et répertorie les assemblys en cours de compilation.
    
    >**Remarque :**
    >ce n'est pas grave si des messages d' **échec de compilation** s'affichent.
    >Vérifiez dans le Gestionnaire des tâches si une instance de MSWORD.EXE est en cours d'exécution. Si c'est le cas, vous devez l'autoriser à se terminer ou réexécuter 'ngen update /force\`. Ne redémarrez pas pour arrêter la tâche. Laissez-le se terminer.
    
    Vérifiez l'état d'une opération `Ngen.exe` en ouvrant une invite de commandes en tant qu'administrateur et en exécutant cette commande : ```ngen queue status<!--NeedCopy-->
    

    Attention : Ne redémarrez pas pour arrêter la tâche. Autoriser la tâche à terminer !

  5. Lorsque toutes les opérations sont terminées, arrêtez la machine virtuelle à l’aide du raccourci Arrêter pour finaliser disponible sur votre bureau.

Finaliser la couche manuellement

Une fois que la machine de packaging est créée et que toutes les applications ou mises à jour sont installées, vous pouvez finaliser la couche.

Remarque : Lorsque vous finalisez une nouvelle version d’une couche de système d’exploitation, le système supprime la machine de packaging afin de ne pas engager plus de coûts.

Lorsqu’une couche est prête à être finalisée :

  1. Revenez à la console de gestion.
  2. Dans le module Couches, sélectionnez le couche.
  3. Sélectionnez Finaliser dans la barre d’actions.
  4. Surveillez la barre des tâches pour vérifier que l’action se termine correctement et que la couche est déployable.
Mise à jour de la couche