Migrer XenApp 6.x
REMARQUE : Vous ne pouvez pas utiliser le produit Citrix Smart Migrate avec cette version de XenApp et XenDesktop. Cependant, l’outil de migration est disponible.
Vous pouvez utiliser l’outil de migration décrit dans cet article pour migrer de XenApp 6.x vers XenApp 7.6. Ensuite, vous pouvez effectuer une mise à niveau de XenApp 7.6 vers une version LTSR prise en charge ou la version actuelle de Citrix Virtual Apps and Desktops.
Outil de migration XenApp 6.x
L’outil de migration XenApp 6.x est une collection de scripts PowerShell contenant des cmdlets qui migrent les données de stratégie et de batterie de serveurs XenApp 6.x (6.0 ou 6.5). Sur le serveur contrôleur XenApp 6.x, vous exécutez des cmdlets d’exportation qui collectent ces données dans des fichiers XML. Ensuite, à partir du contrôleur XenApp 7.6, vous exécutez des cmdlets d’importation qui créent des objets à l’aide des données collectées lors de l’exportation.
La séquence suivante résume le processus de migration. Les détails sont fournis ultérieurement.
- Sur un contrôleur XenApp 6.0 ou 6.5 :
- Importez les modules d’exportation PowerShell.
- Exécutez les cmdlets d’exportation pour exporter les données de stratégie et de batterie de serveurs vers des fichiers XML.
- Copiez les fichiers XML (et le dossier d’icônes si vous avez choisi de ne pas les intégrer dans les fichiers XML lors de l’exportation) vers le contrôleur XenApp 7.6.
- Sur le contrôleur XenApp 7.6 :
- Importez les modules d’importation PowerShell.
- Exécutez les cmdlets d’importation pour importer les données de stratégie et de batterie de serveurs (applications), en utilisant les fichiers XML comme entrée.
- Effectuez les étapes post-migration.
Avant d’exécuter une migration réelle, vous pouvez exporter vos paramètres XenApp 6.x, puis effectuer un aperçu de l’importation sur le site XenApp 7.6. L’aperçu identifie les points de défaillance possibles afin que vous puissiez résoudre les problèmes avant d’exécuter l’importation réelle. Par exemple, un aperçu pourrait détecter qu’une application portant le même nom existe déjà sur le nouveau site XenApp 7.6. Vous pouvez également utiliser les fichiers journaux générés par l’aperçu comme guide de migration.
Sauf indication contraire, le terme 6.x fait référence à XenApp 6.0 ou 6.5.
Nouveautés de cette version
Cette version de décembre 2014 (version 20141125) contient les mises à jour suivantes :
- Si vous rencontrez des problèmes lors de l’utilisation de l’outil de migration sur une batterie XenApp 6.x, signalez-les à https://discussions.citrix.com/forum/1411-xenapp-7x/.
- Nouveau packaging - le fichier
XAMigration.zipcontient désormais deux packages distincts et indépendants :ReadIMA.zipetImportFMA.zip. Pour exporter depuis un serveur XenApp 6.x, vous n’avez besoin que deReadIMA.zip. Pour importer vers un serveur XenApp 7.6, vous n’avez besoin que deImportFMA.zip. - L’applet de commande
Export-XAFarmprend en charge un nouveau paramètre (EmbedIconData) qui élimine la nécessité de copier les données d’icônes dans des fichiers séparés. - L’applet de commande
Import-XAFarmprend en charge trois nouveaux paramètres :-
MatchServer- importe les applications des serveurs dont les noms correspondent à une expression -
NotMatchServer- importe les applications des serveurs dont les noms ne correspondent pas à une expression -
IncludeDisabledApps- importe les applications désactivées
-
- Les applications pré-lancées ne sont pas importées.
- L’applet de commande
Export-Policyfonctionne sur XenDesktop 7.x.
Package de l’outil de migration
L’outil de migration est disponible sur le site de téléchargement Citrix XenApp 7.6. Le fichier XAMigration.zip contient deux packages distincts et indépendants :
-
ReadIMA.zip- contient les fichiers utilisés pour exporter les données de votre batterie XenApp 6.x, ainsi que les modules partagés.
| Module ou fichier | Description |
|---|---|
| ExportPolicy.psm1 | Module de script PowerShell pour l’exportation des stratégies XenApp 6.x vers un fichier XML. |
| ExportXAFarm.psm1 | Module de script PowerShell pour l’exportation des paramètres de la batterie XenApp 6.x vers un fichier XML. |
| ExportPolicy.psd1 | Fichier manifeste PowerShell pour le module de script ExportPolicy.psm1. |
| ExportXAFarm.psd1 | Fichier manifeste PowerShell pour le module de script ExportXAFarm.psm1. |
| LogUtilities.psm1 | Module de script PowerShell partagé qui contient des fonctions de journalisation. |
| XmlUtilities.psd1 | Fichier manifeste PowerShell pour le module de script XmlUtilities.psm1. |
| XmlUtilities.psm1 | Module de script PowerShell partagé qui contient des fonctions XML. |
-
ImportFMA.zip- contient les fichiers utilisés pour importer des données dans votre batterie XenApp 7.6, ainsi que des modules partagés.
| Module ou fichier | Description |
|---|---|
| ImportPolicy.psm1 | Module de script PowerShell pour l’importation de stratégies vers XenApp 7.6. |
| ImportXAFarm.psm1 | Module de script PowerShell pour l’importation d’applications vers XenApp 7.6 |
| ImportPolicy.psd1 | Fichier manifeste PowerShell pour le module de script ImportPolicy.psm1. |
| ImportXAFarm.psd1 | Fichier manifeste PowerShell pour le module de script ImportXAFarm.psm1. |
| PolicyData.xsd | Schéma XML pour les données de stratégie. |
| XAFarmData.xsd | Schéma XML pour les données de la batterie XenApp. |
| LogUtilities.psm1 | Module de script PowerShell partagé qui contient des fonctions de journalisation. |
| XmlUtilities.psd1 | Fichier manifeste PowerShell pour le module de script XmlUtilities.psm1. |
| XmlUtilities.psm1 | Module de script PowerShell partagé qui contient des fonctions XML. |
Limitations
- Tous les paramètres de stratégie ne sont pas importés. Consultez Paramètres de stratégie non importés. Les paramètres non pris en charge sont ignorés et notés dans le fichier journal.
- Bien que tous les détails de l’application soient collectés dans le fichier XML de sortie pendant l’opération d’exportation, seules les applications installées sur le serveur sont importées dans le site XenApp 7.6. Les bureaux publiés, le contenu et la plupart des applications diffusées en continu ne sont pas pris en charge (consultez les paramètres du cmdlet
Import-XAFarmdans Étape par étape : importer des données pour les exceptions). - Les serveurs d’applications ne sont pas importés.
- De nombreuses propriétés d’application ne sont pas importées en raison des différences entre les technologies Independent Management Architecture (IMA) de XenApp 6.x et FlexCast Management Architecture (FMA) de XenApp 7.6. Consultez Mappage des propriétés d’application.
- Un groupe de mise à disposition est créé pendant l’importation. Consultez Utilisation avancée pour plus de détails sur l’utilisation des paramètres pour filtrer ce qui est importé.
- Seuls les paramètres de stratégie Citrix créés avec la console de gestion AppCenter sont importés. Les paramètres de stratégie Citrix créés avec les objets de stratégie de groupe (GPO) Windows ne sont pas importés.
- Les scripts de migration sont destinés uniquement aux migrations de XenApp 6.x vers XenApp 7.6.
- Les dossiers imbriqués à plus de cinq niveaux de profondeur ne sont pas pris en charge par Studio et ne seront pas importés. Si la structure de vos dossiers d’application inclut des dossiers de plus de cinq niveaux de profondeur, envisagez de réduire le nombre de niveaux de dossiers imbriqués avant l’importation.
Considérations de sécurité
Les fichiers XML créés par les scripts d’exportation peuvent contenir des informations sensibles sur votre environnement et votre organisation, telles que les noms d’utilisateur et de serveur, ainsi que d’autres données de configuration de batterie, d’application et de stratégie. Stockez et manipulez ces fichiers dans des environnements sécurisés.
Examinez attentivement les fichiers XML avant de les utiliser comme entrée lors de l’importation de stratégies et d’applications, pour vous assurer qu’ils ne contiennent aucune modification non autorisée.
Les attributions d’objets de stratégie (précédemment appelées filtres de stratégie) contrôlent la manière dont les stratégies sont appliquées. Après l’importation des stratégies, examinez attentivement les attributions d’objets pour chaque stratégie afin de vous assurer qu’il n’y a pas de vulnérabilités de sécurité résultant de l’importation. Différents ensembles d’utilisateurs, d’adresses IP ou de noms de clients peuvent être appliqués à la stratégie après l’importation. Les paramètres d’autorisation et de refus peuvent avoir des significations différentes après l’importation.
Journalisation et gestion des erreurs
Les scripts fournissent une journalisation étendue qui suit toutes les exécutions de cmdlets, les messages informatifs, les résultats d’exécution des cmdlets, les avertissements et les erreurs.
- La plupart des utilisations des cmdlets Citrix PowerShell sont journalisées. Toutes les cmdlets PowerShell des scripts d’importation qui créent de nouveaux objets de site sont journalisées.
- La progression de l’exécution du script est journalisée, y compris les objets en cours de traitement.
- Les actions majeures qui affectent l’état du flux sont journalisées, y compris les flux dirigés depuis la ligne de commande.
- Tous les messages affichés dans la console sont journalisés, y compris les avertissements et les erreurs.
- Chaque ligne est horodatée à la milliseconde près.
Citrix recommande de spécifier un fichier journal lorsque vous exécutez chacune des cmdlets d’exportation et d’importation.
Si vous ne spécifiez pas de nom de fichier journal, le fichier journal est stocké dans le dossier d’accueil de l’utilisateur actuel (spécifié dans la variable PowerShell $HOME) si ce dossier existe. Sinon, le fichier est placé dans le dossier d’exécution actuel du script. Le nom de journal par défaut est XFarmYYYYMMDDHHmmSS-xxxxxx où les six derniers chiffres sont un nombre aléatoire.
Par défaut, toutes les informations de progression sont affichées. Pour supprimer l’affichage, spécifiez le paramètre NoDetails dans la cmdlet d’exportation et d’importation.
Généralement, un script arrête l’exécution lorsqu’une erreur est rencontrée, et vous pouvez exécuter à nouveau le cmdlet après avoir corrigé les conditions d’erreur.
Les conditions qui ne sont pas considérées comme des erreurs sont journalisées. Beaucoup sont signalées comme des avertissements, et l’exécution du script se poursuit. Par exemple, les types d’applications non pris en charge sont signalés comme des avertissements et ne sont pas importés. Les applications qui existent déjà sur le site XenApp 7.6 ne sont pas importées. Les paramètres de stratégie obsolètes dans XenApp 7.6 ne sont pas importés.
Les scripts de migration utilisent de nombreux cmdlets PowerShell, et toutes les erreurs possibles peuvent ne pas être journalisées. Pour une couverture de journalisation plus complète, utilisez les fonctionnalités de journalisation de PowerShell. Par exemple, les transcriptions PowerShell enregistrent tout ce qui est affiché à l’écran. Pour plus d’informations, consultez l’aide des cmdlets Start-Transcript et Stop-Transcript.
Exigences, préparation et bonnes pratiques
Pour migrer, vous devez utiliser le SDK Citrix XenApp 6.5. Téléchargez ce SDK depuis https://www.citrix.com/downloads/xenapp/sdks/powershell-sdk.html.
Lisez cet article en entier avant de commencer une migration.
Vous devez comprendre les concepts de base de PowerShell. Bien qu’une expertise approfondie en matière de script ne soit pas requise, vous devez comprendre les cmdlets que vous exécutez. Utilisez le cmdlet Get-Help pour consulter l’aide de chaque cmdlet de migration avant de l’exécuter. Par exemple : Get-Help -full Import-XAFarm.
Spécifiez un fichier journal sur la ligne de commande et examinez toujours le fichier journal après avoir exécuté un cmdlet. Si un script échoue, vérifiez et corrigez l’erreur identifiée dans le fichier journal, puis exécutez à nouveau le cmdlet.
Bon à savoir :
- Pour faciliter la livraison d’applications lorsque deux déploiements sont en cours d’exécution (la batterie de serveurs XenApp 6.x et le nouveau site XenApp 7.6), vous pouvez agréger les deux déploiements dans StoreFront ou Web Interface. Consultez la documentation du produit pour votre version de StoreFront ou Web Interface (Gérer > Créer un magasin).
- Les données d’icône d’application sont gérées de l’une des deux manières suivantes :
- Si vous spécifiez le paramètre
EmbedIconDatadans le cmdletExport-XAFarm, les données d’icône d’application exportées sont intégrées dans le fichier XML de sortie. -
Si vous ne spécifiez pas le paramètre
EmbedIconDatadans le cmdletExport-XAFarm, les données d’icône d’application exportées sont stockées dans un dossier nommé en ajoutant la chaîne-iconsau nom de base du fichier XML de sortie. Par exemple, si le paramètreXmlOutputFileestFarmData.xml, alors le dossierFarmData-iconsest créé pour stocker les icônes d’application.Les fichiers de données d’icône dans ce dossier sont des fichiers
.txtqui sont nommés en utilisant le nom de navigateur de l’application publiée. Bien que les fichiers soient des fichiers.txt, les données stockées sont des données d’icône binaires encodées, qui peuvent être lues par le script d’importation pour recréer l’icône de l’application. Pendant l’opération d’importation, si le dossier d’icônes n’est pas trouvé au même emplacement que le fichier XML d’importation, des icônes génériques sont utilisées pour chaque application importée. - Les noms des modules de script, des fichiers manifestes, du module partagé et des cmdlets sont similaires. Utilisez la complétion par tabulation avec prudence pour éviter les erreurs. Par exemple,
Export-XAFarmest un cmdlet.ExportXAFarm.psd1etExportXAFarm.psm1sont des fichiers qui ne peuvent pas être exécutés. - Dans les sections pas à pas, la plupart des valeurs de paramètre
<string>sont entourées de guillemets. Ceux-ci sont facultatifs pour les chaînes de caractères à mot unique.
Pour l’exportation depuis le serveur XenApp 6.x :
- L’exportation doit être exécutée sur un serveur XenApp 6.x configuré avec le mode serveur contrôleur et hôte de session (communément appelé contrôleur).
- Pour exécuter les cmdlets d’exportation, vous devez être un administrateur XenApp® avec l’autorisation de lire les objets. Vous devez également disposer des autorisations Windows suffisantes pour exécuter des scripts PowerShell. Les procédures pas à pas contiennent des instructions.
-
Assurez-vous que la batterie XenApp 6.x est en bon état avant de commencer une exportation. Sauvegardez la base de données de la batterie. Vérifiez l’intégrité de la batterie à l’aide de l’utilitaire Citrix IMA Helper (CTX133983) : depuis l’onglet IMA Datastore, exécutez une vérification principale (Master Check) (puis utilisez l’option
DSCheckpour résoudre les entrées non valides). La résolution des problèmes avant la migration permet d’éviter les échecs d’exportation.Par exemple, si un serveur a été supprimé incorrectement de la batterie, ses données peuvent rester dans la base de données ; cela pourrait entraîner l’échec des cmdlets dans le script d’exportation (par exemple,
Get-XAServer -ZoneName). Si les cmdlets échouent, le script échoue. - Vous pouvez exécuter les cmdlets d’exportation sur une batterie en production qui a des connexions utilisateur actives. Les scripts d’exportation lisent uniquement la configuration statique de la batterie et les données de stratégie.
Pour l’importation vers le serveur XenApp 7.6 :
- Vous pouvez importer des données vers des déploiements XenApp 7.6 (et les versions ultérieures prises en charge). Vous devez installer un contrôleur et un Studio XenApp 7.6, et créer un site avant d’importer les données que vous avez exportées de la batterie XenApp 6.x. Bien que les VDA ne soient pas requis pour importer les paramètres, ils permettent de rendre disponibles les types de fichiers d’application.
- Pour exécuter les cmdlets d’importation, vous devez être un administrateur XenApp avec l’autorisation de lire et de créer des objets. Un administrateur complet dispose de ces autorisations. Vous devez également disposer des autorisations Windows suffisantes pour exécuter des scripts PowerShell. Les procédures pas à pas contiennent des instructions.
- N’ayez aucune autre connexion utilisateur active pendant une importation. Les scripts d’importation créent de nombreux nouveaux objets, et des perturbations pourraient survenir si d’autres utilisateurs modifient la configuration en même temps.
N’oubliez pas que vous pouvez exporter des données, puis utiliser le paramètre -Preview avec les cmdlets d’importation pour voir ce qui se passerait lors d’une importation réelle, sans rien importer réellement. Les journaux indiquent exactement ce qui se passerait lors d’une importation réelle. Si des erreurs se produisent, vous pouvez les résoudre avant de commencer une importation réelle.
Étape par étape : exporter les données
Suivez les étapes suivantes pour exporter les données d’un contrôleur XenApp 6.x vers des fichiers XML.
-
Téléchargez le package de l’outil de migration
XAMigration.zipdepuis le site de téléchargement de Citrix. Pour plus de commodité, placez-le sur un partage de fichiers réseau accessible à la fois par la batterie XenApp 6.x et le site XenApp 7.6. DécompressezXAMigration.zipsur le partage de fichiers réseau. Il y a deux fichiers zip :ReadIMA.zipetImportFMA.zip. -
Connectez-vous au contrôleur XenApp 6.x en tant qu’administrateur XenApp avec au moins une autorisation en lecture seule et une autorisation Windows pour exécuter des scripts PowerShell.
-
Copiez
ReadIMA.zipdu partage de fichiers réseau vers le contrôleur XenApp 6.x. Décompressez et extrayez ReadIMA.zip sur le contrôleur vers un dossier (par exemple :C:\XAMigration). -
Ouvrez une console PowerShell et définissez le répertoire actuel sur l’emplacement du script (par exemple :
cd C:\XAMigration). -
Vérifiez la stratégie d’exécution des scripts en exécutant
Get-ExecutionPolicy. -
Définissez la stratégie d’exécution des scripts sur au moins
RemoteSignedpour permettre l’exécution des scripts (par exemple :Set-ExecutionPolicy RemoteSigned). -
Importez les fichiers de définition de module
ExportPolicy.psd1etExportXAFarm.psd1:Import-Module .\ExportPolicy.psd1Import-Module .\ExportXAFarm.psd1Bon à savoir :
- Si vous avez l’intention d’exporter uniquement les données de stratégie, vous pouvez importer uniquement le fichier de définition de module
ExportPolicy.psd1. De même, si vous avez l’intention d’exporter uniquement les données de batterie, importez uniquementExportXAFarm.psd1. - L’importation des fichiers de définition de module ajoute également les compléments PowerShell requis.
- N’importez pas les fichiers de script
.psm1.
- Si vous avez l’intention d’exporter uniquement les données de stratégie, vous pouvez importer uniquement le fichier de définition de module
-
Pour exporter les données de stratégie, exécutez l’applet de commande
Export-Policy.Paramètre Description -XmlOutputFile “ .xml" Nom du fichier de sortie XML. Ce fichier contient les données exportées. Doit avoir une extension .xml. Le fichier ne doit pas exister, mais si un chemin est spécifié, le chemin parent doit exister. Par défaut : Aucun. Ce paramètre est obligatoire. -FichierJournal “ " Nom du fichier journal. Une extension est facultative. Le fichier est créé s’il n’existe pas. Si le fichier existe et que le paramètre NoClobber est également spécifié, une erreur est générée. Sinon, le contenu du fichier est écrasé. Par défaut : Voir Journalisation et gestion des erreurs. -NoLog Ne pas générer de sortie de journal. Cela annule le paramètre LogFile s’il est également spécifié. Par défaut : Faux. Une sortie de journal est générée. -NoClobber Ne pas écraser un fichier journal existant spécifié dans le paramètre LogFile. Si le fichier journal n’existe pas, ce paramètre n’a aucun effet. Par défaut : Faux. Un fichier journal existant est écrasé. -NoDetails Ne pas envoyer de rapports détaillés sur l’exécution du script à la console. Par défaut : Faux. Des rapports détaillés sont envoyés à la console. -SuppressLogo Ne pas imprimer le message XenApp 6.x to XenApp/XenDesktop 7.6 Migration Tool Version #yyyyMMdd-hhmm#dans la console. Ce message, qui identifie la version du script, peut être utile lors du dépannage. Par conséquent, Citrix recommande d’omettre ce paramètre. Par défaut : Faux. Le message est imprimé dans la console.Exemple : L’applet de commande suivante exporte les informations de stratégie vers le fichier XML nommé
MyPolicies.xml. L’opération est enregistrée dans le fichier nomméMyPolicies.log.Export-Policy -XmlOutputFile ".\MyPolicies.XML" -LogFile ".\MyPolicies.Log" <!--NeedCopy--> -
Pour exporter les données de la batterie, exécutez l’applet de commande
Export-XAFarm, en spécifiant un fichier journal et un fichier XML.
| Paramètre | Description |
|---|---|
| -XmlOutputFile “ |
Nom du fichier de sortie XML. Ce fichier contient les données exportées. Doit avoir une extension .xml. Le fichier ne doit pas exister, mais si un chemin est spécifié, le chemin parent doit exister. Par défaut : Aucun. Ce paramètre est obligatoire. |
| -FichierJournal “ |
Nom du fichier journal. Une extension est facultative. Le fichier est créé s’il n’existe pas. Si le fichier existe et que le paramètre NoClobber est également spécifié, une erreur est générée. Sinon, le contenu du fichier est écrasé. Par défaut : Voir Journalisation et gestion des erreurs. |
| -NoLog | Ne génère pas de sortie de journal. Ce paramètre remplace le paramètre LogFile s’il est également spécifié. Par défaut : Faux. La sortie du journal est générée. |
| -NoClobber | N’écrase pas un fichier journal existant spécifié dans le paramètre LogFile. Si le fichier journal n’existe pas, ce paramètre n’a aucun effet. Par défaut : Faux. Un fichier journal existant est écrasé. |
| -NoDetails | N’envoie pas de rapports détaillés sur l’exécution du script à la console. Par défaut : Faux. Des rapports détaillés sont envoyés à la console. |
| -SuppressLogo | N’affiche pas le message XenApp 6.x to XenApp/XenDesktop 7.6 Migration Tool Version #yyyyMMdd-hhmm# dans la console. Ce message, qui identifie la version du script, peut être utile lors du dépannage. Par conséquent, Citrix recommande d’omettre ce paramètre. Par défaut : Faux. Le message est affiché dans la console. |
| -IgnoreAdmins | N’exporte pas les informations d’administrateur. Voir Utilisation avancée pour des informations sur l’utilisation. Par défaut : Faux. Les informations d’administrateur sont exportées. |
| -IgnoreApps | N’exportez pas les informations d’application. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Faux. Les informations d’application sont exportées. |
| -IgnoreServers | N’exportez pas les informations de serveur. Par défaut : Faux. Les informations de serveur sont exportées. |
| -IgnoreZones | N’exportez pas les informations de zone. Par défaut : Faux. Les informations de zone sont exportées. |
| -IgnoreOthers | N’exportez pas les informations telles que la journalisation de la configuration, les évaluateurs de charge, les stratégies d’équilibrage de charge, les pilotes d’imprimante et les groupes de travailleurs. Par défaut : Faux. Les autres informations sont exportées. Remarque : Ce commutateur vous permet de poursuivre une exportation lorsqu’une erreur se produit qui n’affecterait pas les données réelles utilisées pour le processus d’exportation ou d’importation. |
| -AppLimit | Nombre d’applications à exporter. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Toutes les applications sont exportées. |
| -EmbedIconData | Intègre les données d’icônes d’application dans le même fichier XML que les autres objets. Par défaut : Les icônes sont stockées séparément. Consultez Exigences, préparation et bonnes pratiques pour plus de détails. |
| -SkipApps | Nombre d’applications à ignorer. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune application n’est ignorée. |
Example: The following cmdlet exports farm information to the XML file named MyFarm.xml. The operation is logged to the file MyFarm.log. A folder named "MyFarm-icons" is created to store the application icon data files. This folder is at the same location as MyFarm.XML.
`Export-XAFarm -XmlOutputFile ".\MyFarm.XML" -LogFile ".\MyFarm.Log"`
Une fois les scripts d’exportation terminés, les fichiers XML spécifiés sur les lignes de commande contiennent les données de stratégie et de batterie XenApp. Les fichiers d’icônes d’application contiennent des fichiers de données d’icônes, et le fichier journal indique ce qui s’est produit pendant l’exportation.
Étape par étape : importer des données
N’oubliez pas que vous pouvez exécuter un aperçu de l’importation (en exécutant la cmdlet Import-Policy ou Import-XAFarm avec le paramètre Preview). Vous pouvez ensuite consulter les fichiers journaux avant d’effectuer une importation réelle.
Suivez les étapes ci-dessous pour importer des données vers un site XenApp 7.6, en utilisant les fichiers XML générés à partir de l’exportation.
-
Connectez-vous au contrôleur XenApp 7.6 en tant qu’administrateur disposant des autorisations de lecture-écriture et des autorisations Windows pour exécuter des scripts PowerShell.
-
Si vous n’avez pas décompressé le package de l’outil de migration
XAMigrationsur le partage de fichiers réseau, faites-le maintenant. CopiezImportFMA.zipdu partage de fichiers réseau vers le contrôleur XenApp 7.6. Décompressez et extrayezImportFMA.zipsur le contrôleur vers un dossier (par exempleC:\XAMigration). -
Copiez les fichiers XML (les fichiers de sortie générés lors de l’exportation) du contrôleur XenApp 6.x vers le même emplacement sur le contrôleur XenApp 7.6 où vous avez extrait les fichiers
ImportFMA.zip.Si vous avez choisi de ne pas intégrer les données d’icône d’application dans le fichier de sortie XML lorsque vous avez exécuté
Export-XAFarm, copiez le dossier et les fichiers de données d’icône au même emplacement sur le contrôleur XenApp 7.6 que le fichier XML de sortie contenant les données d’application et les fichiersImportFMA.zipextraits. -
Ouvrez une console PowerShell et définissez le répertoire actuel sur l’emplacement du script (par exemple :
cd C:\XAMigration). -
Vérifiez la politique d’exécution des scripts en exécutant
Get-ExecutionPolicy. -
Définissez la politique d’exécution des scripts sur au moins
RemoteSignedpour permettre l’exécution des scripts (par exemple :Set-ExecutionPolicy RemoteSigned). -
Importez les fichiers de définition de module PowerShell
ImportPolicy.psd1etImportXAFarm.psd1:Import-Module .\ImportPolicy.psd1Import-Module .\ImportXAFarm.psd1Bon à savoir :
- Si vous avez l’intention d’importer uniquement des données de stratégie, vous pouvez importer uniquement le fichier de définition de module
ImportPolicy.psd1. De même, si vous avez l’intention d’importer uniquement des données de batterie, importez uniquementImportXAFarm.psd1. - L’importation des fichiers de définition de module ajoute également les snap-ins PowerShell requis.
- N’importez pas les fichiers de script
.psm1.
- Si vous avez l’intention d’importer uniquement des données de stratégie, vous pouvez importer uniquement le fichier de définition de module
-
Pour importer les données de stratégie, exécutez la cmdlet
Import-Policy, en spécifiant le fichier XML contenant les données de stratégie exportées.Paramètre Description -XmlInputFile “ .xml" Nom du fichier d’entrée XML. Ce fichier contient les données collectées lors de l’exécution de la cmdlet Export-Policy. Doit avoir une extension.xml. Par défaut : Aucun. Ce paramètre est obligatoire.-FichierXsd “ " Nom du fichier XSD. Les scripts d’importation utilisent ce fichier pour valider la syntaxe du fichier d’entrée XML. Consultez Utilisation avancée pour des informations sur l’utilisation. Par défaut : PolicyData.XSD -FichierJournal “ " Nom du fichier journal. Si vous avez copié les fichiers journaux d’exportation sur ce serveur, envisagez d’utiliser un nom de fichier journal différent avec la cmdlet d’importation. Par défaut : Voir Journalisation et gestion des erreurs. -NoLog Ne génère pas de sortie de journal. Cela annule le paramètre LogFile, s’il est également spécifié. Par défaut : Faux. La sortie du journal est générée. -NoClobber N’écrase pas un fichier journal existant spécifié dans le paramètre LogFile. Si le fichier journal n’existe pas, ce paramètre n’a aucun effet. Par défaut : Faux. Un fichier journal existant est écrasé. -NoDetails N’envoyez pas de rapports détaillés sur l’exécution du script à la console. Par défaut : Faux. Des rapports détaillés sont envoyés à la console. -SuppressLogo N’imprimez pas le message XenApp 6.x to XenApp/XenDesktop 7.6 Migration Tool Version #yyyyMMdd-hhmm#sur la console. Ce message, qui identifie la version du script, peut être utile lors du dépannage. Par conséquent, Citrix recommande d’omettre ce paramètre. Par défaut : Faux. Le message est imprimé sur la console.-Preview Effectuez un aperçu de l’importation : lisez les données du fichier d’entrée XML, mais n’importez pas d’objets sur le site. Le fichier journal et la console indiquent ce qui s’est produit pendant l’aperçu de l’importation. Un aperçu montre aux administrateurs ce qui se passerait lors d’une importation réelle. Par défaut : Faux. Une importation réelle a lieu. Exemple : L’applet de commande suivante importe les données de stratégie du fichier XML nommé
MyPolcies.xml. L’opération est enregistrée dans le fichier nomméMyPolicies.log.Import-Policy -XmlInputFile ".\MyPolicies.XML" -LogFile ".\MyPolicies.Log" <!--NeedCopy--> -
Pour importer des applications, exécutez l’applet de commande
Import-XAFarm, en spécifiant un fichier journal et le fichier XML contenant les données de la batterie exportées.Paramètre Description -XmlInputFile “ .xml" Nom du fichier d’entrée XML. Ce fichier contient les données collectées lors de l’exécution de l’applet de commande Export-XAFarm. Doit avoir une extension .xml. Par défaut : Aucun. Ce paramètre est obligatoire. -FichierXsd “ " Nom du fichier XSD. Les scripts d’importation utilisent ce fichier pour valider la syntaxe du fichier d’entrée XML. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : XAFarmData.XSD -FichierJournal “ " Nom du fichier journal. Si vous avez copié les fichiers journaux d’exportation sur ce serveur, envisagez d’utiliser un nom de fichier journal différent avec l’applet de commande d’importation. Par défaut : Voir Gestion des journaux et des erreurs. -NoLog Ne génère pas de sortie de journal. Cela annule le paramètre LogFile, s’il est également spécifié. Par défaut : Faux. La sortie du journal est générée. -NoClobber N’écrase pas un fichier journal existant spécifié dans le paramètre LogFile. Si le fichier journal n’existe pas, ce paramètre n’a aucun effet. Par défaut : Faux. Un fichier journal existant est écrasé. -NoDetails N’envoie pas de rapports détaillés sur l’exécution du script à la console. Par défaut : Faux. Des rapports détaillés sont envoyés à la console. -SuppressLogo N’affiche pas le message XenApp 6.x to XenApp/XenDesktop 7.6 Migration Tool Version #yyyyMMdd-hhmm#dans la console. Ce message, qui identifie la version du script, peut être utile lors du dépannage. Par conséquent, Citrix recommande d’omettre ce paramètre. Par défaut : Faux. Le message est affiché dans la console.-Preview Effectue une importation d’aperçu : lit les données du fichier d’entrée XML, mais n’importe pas les objets sur le site. Le fichier journal et la console indiquent ce qui s’est produit pendant l’importation d’aperçu. Un aperçu montre aux administrateurs ce qui se passerait lors d’une importation réelle. Par défaut : Faux. Une importation réelle a lieu. -NomDuGroupeDeMiseÀDisposition “ " Nom du groupe de mise à disposition pour toutes les applications importées. Voir Utilisation avancée pour des informations sur l’utilisation. Par défaut : “ -Delivery Group” -DossierDeCorrespondance “ " Importe uniquement les applications dans les dossiers dont les noms correspondent à la chaîne. Voir Utilisation avancée pour des informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -NeCorrespondPasDossier “ " Importer uniquement les applications situées dans des dossiers dont les noms ne correspondent pas à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -CorrespondreServeur “ " Importer uniquement les applications provenant de serveurs dont les noms correspondent à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. -NeCorrespondPasServeur “ " Importer uniquement les applications provenant de serveurs dont les noms ne correspondent pas à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -CorrespondreGroupeDeTravail “ " Importer uniquement les applications publiées dans des groupes de workers dont les noms correspondent à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -NeCorrespondPasGroupeDeTravail “ " Importer uniquement les applications publiées dans des groupes de workers dont les noms ne correspondent pas à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -CorrespondreCompte “ " Importer uniquement les applications publiées pour des comptes utilisateur dont les noms correspondent à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -NeCorrespondPasCompte “ " Importer uniquement les applications publiées pour des comptes utilisateur dont les noms ne correspondent pas à la chaîne de caractères. Consultez Utilisation avancée pour plus d’informations sur l’utilisation. Par défaut : Aucune correspondance n’est effectuée. -IncludeStreamedApps Importer les applications de type StreamedToClientOrServerInstalled. (Aucune autre application diffusée en continu n’est importée.) Par défaut : Les applications diffusées en continu ne sont pas importées.-IncludeDisabledApps Importer les applications qui ont été marquées comme désactivées. Par défaut : Les applications désactivées ne sont pas importées. Exemple : L’applet de commande suivante importe les applications du fichier XML nommé
MyFarm.xml. L’opération est enregistrée dans le fichier nomméMyFarm.log.Import-XAFarm -XmlInputFile ".\MyFarm.XML" -LogFile ".\MyFarm.Log" <!--NeedCopy--> -
Une fois l’importation terminée avec succès, effectuez les tâches post-migration.
Tâches post-migration
Après avoir importé avec succès les stratégies et les paramètres de batterie de XenApp 6.x dans un site XenApp 7.6, utilisez les instructions suivantes pour vous assurer que les données ont été importées correctement.
Stratégies et paramètres de stratégie
L’importation de stratégies est essentiellement une opération de copie, à l’exception des paramètres et stratégies obsolètes, qui ne sont pas importés. La vérification post-migration implique essentiellement la comparaison des deux côtés.
-
Le fichier journal répertorie toutes les stratégies et tous les paramètres importés et ignorés. Tout d’abord, examinez le fichier journal et identifiez les paramètres et les stratégies qui n’ont pas été importés.
-
Comparez les stratégies XenApp 6.x avec les stratégies importées dans XenApp 7.6. Conservez les mêmes valeurs de paramètres (à l’exception des paramètres de stratégie obsolètes, comme indiqué à l’étape suivante).
- Si vous avez peu de stratégies, vous pouvez effectuer une comparaison visuelle côte à côte des stratégies affichées dans l’AppCenter de XenApp 6.x et des stratégies affichées dans le Studio de XenApp 7.6.
- Si vous avez de nombreuses stratégies, une comparaison visuelle pourrait ne pas être réalisable. Dans de tels cas, utilisez l’applet de commande d’exportation de stratégie (
Export-Policy) pour exporter les stratégies XenApp 7.6 vers un autre fichier XML, puis utilisez un outil de comparaison de texte (tel quewindiff) pour comparer les données de ce fichier aux données du fichier XML utilisé lors de l’exportation de stratégie depuis XenApp 6.x.
-
Utilisez les informations de la section Paramètres de stratégie non importés pour déterminer ce qui a pu changer pendant l’importation. Si une stratégie XenApp 6.x ne contient que des paramètres obsolètes, en tant que stratégie complète, elle n’est pas importée. Par exemple, si une stratégie XenApp 6.x ne contient que des paramètres de test HMR, cette stratégie est ignorée car il n’existe aucun paramètre équivalent pris en charge dans XenApp 7.6.
Certains paramètres de stratégie XenApp 6.x ne sont plus pris en charge, mais la fonctionnalité équivalente est implémentée dans XenApp 7.6. Par exemple, dans XenApp 7.6, vous pouvez configurer un calendrier de redémarrage pour les machines Server OS en modifiant un groupe de mise à disposition. Cette fonctionnalité était auparavant implémentée via les paramètres de stratégie.
-
Examinez et confirmez la manière dont les filtres s’appliquent à votre site XenApp 7.6 par rapport à leur utilisation dans XenApp 6.x. Des différences significatives entre la batterie de serveurs XenApp 6.x et le site XenApp 7.6 pourraient modifier l’effet des filtres.
Filtres
Examinez attentivement les filtres de chaque stratégie. Des modifications peuvent être nécessaires pour s’assurer qu’ils fonctionnent toujours dans XenApp 7.6 comme prévu initialement dans XenApp 6.x.
| Filtre | Considérations |
|---|---|
| Contrôle d’accès | Généralement, le contrôle d’accès contient les mêmes valeurs que les filtres XenApp 6.x d’origine et fonctionne sans nécessiter de modifications. |
| Citrix CloudBridge® | Un booléen simple. Fonctionne généralement sans nécessiter de modifications. (Ce produit est maintenant connu sous le nom de NetScaler SD-WAN.) |
| Adresse IP du client | Répertorie les plages d’adresses IP du client. Chaque plage est soit autorisée, soit refusée. Le script d’importation conserve les valeurs, mais elles peuvent nécessiter des modifications si différents clients se connectent aux machines VDA XenApp 7.6. |
| Nom du client | Similaire au filtre d’adresse IP du client, le script d’importation conserve les valeurs, mais elles peuvent nécessiter des modifications si différents clients se connectent aux machines VDA XenApp 7.6. |
| Unité d’organisation | Les valeurs peuvent être conservées, selon que les unités d’organisation (UO) peuvent être résolues au moment de leur importation. Examinez attentivement ce filtre, en particulier si les machines XenApp 6.x et XenApp 7.6 résident dans des domaines différents. Si vous ne configurez pas correctement les valeurs du filtre, la stratégie pourrait être appliquée à un ensemble incorrect d’UO. Les UO sont représentées uniquement par des noms, il y a donc une faible probabilité qu’un nom d’UO soit résolu en une UO contenant des membres différents de ceux des UO du domaine XenApp 6.x. Même si certaines des valeurs du filtre d’UO sont conservées, examinez attentivement les valeurs. |
| Utilisateur ou groupe | Les valeurs peuvent être conservées, selon que les comptes peuvent être résolus au moment de leur importation. Similaire aux unités d’organisation, les comptes sont résolus en utilisant uniquement les noms. Ainsi, si le site XenApp 7.6 possède un domaine avec les mêmes noms de domaine et d’utilisateur, mais qu’il s’agit en réalité de deux domaines et utilisateurs différents, les comptes résolus peuvent être différents des utilisateurs de domaine XenApp 6.x. Si vous ne révisez pas et ne modifiez pas correctement les valeurs de filtre, des applications de stratégie incorrectes peuvent se produire. |
| Groupe de travailleurs | Les groupes de travailleurs ne sont pas pris en charge dans XenApp 7.6. Envisagez d’utiliser les filtres Groupe de mise à disposition, Type de groupe de mise à disposition et Balise, qui sont pris en charge dans XenApp 7.6 (mais pas dans XenApp 6.x). Groupe de mise à disposition : Permet d’appliquer des stratégies en fonction de ces groupes. Chaque entrée de filtre spécifie un groupe et peut être autorisée ou refusée. Type de groupe de mise à disposition : Permet d’appliquer des stratégies en fonction des types de groupes de mise à disposition. Chaque filtre spécifie un type de groupe qui peut être autorisé ou refusé. Balise : Spécifie l’application de stratégies basée sur les balises créées pour les machines VDA. Chaque balise peut être autorisée ou refusée. |
Pour récapituler, les filtres impliquant des modifications d’utilisateurs de domaine nécessitent la plus grande attention si la batterie XenApp 6.x et le site XenApp 7.6 se trouvent dans des domaines différents. Étant donné que le script d’importation utilise uniquement des chaînes de noms de domaine et d’utilisateur pour résoudre les utilisateurs dans le nouveau domaine, seuls certains comptes peuvent être résolus. Bien qu’il y ait peu de chances que des domaines et des utilisateurs différents aient le même nom, examinez attentivement ces filtres pour vous assurer qu’ils contiennent les valeurs correctes.
Applications
Les scripts d’importation d’applications n’importent pas seulement des applications. Ils créent également des objets tels que des groupes de mise à disposition. Si l’importation d’applications implique plusieurs itérations, les hiérarchies de dossiers d’applications d’origine peuvent changer considérablement.
- Tout d’abord, lisez les fichiers journaux de migration qui contiennent des détails sur les applications importées, les applications ignorées et les cmdlets utilisées pour créer les applications.
- Pour chaque application :
- Vérifiez visuellement que les propriétés de base ont été conservées pendant l’importation. Utilisez les informations de la section Mappage des propriétés d’application pour déterminer quelles propriétés ont été importées sans modification, non importées ou initialisées à l’aide des données d’application XenApp 6.x.
- Vérifiez la liste des utilisateurs. Le script d’importation importe automatiquement la liste explicite des utilisateurs dans la liste de visibilité limitée de l’application dans XenApp 7.6. Vérifiez que la liste reste la même.
- Les serveurs d’applications ne sont pas importés. Cela signifie qu’aucune des applications importées n’est encore accessible. Les groupes de mise à disposition qui contiennent ces applications doivent être associés à des catalogues de machines contenant les machines qui possèdent les images exécutables des applications publiées. Pour chaque application :
- Assurez-vous que le nom de l’exécutable et le répertoire de travail pointent vers un exécutable qui existe sur les machines affectées au groupe de mise à disposition (via les catalogues de machines).
- Vérifiez un paramètre de ligne de commande (qui peut être n’importe quoi, comme un nom de fichier, une variable d’environnement ou un nom d’exécutable). Vérifiez que le paramètre est valide pour toutes les machines des catalogues de machines affectés au groupe de mise à disposition.
Fichiers journaux
Les fichiers journaux sont les ressources de référence les plus importantes pour une importation et une exportation. C’est pourquoi les fichiers journaux existants ne sont pas écrasés par défaut et les noms de fichiers journaux par défaut sont uniques.
Comme indiqué dans Journalisation et gestion des erreurs, si vous utilisez une couverture de journalisation supplémentaire avec les cmdlets PowerShell Start-Transcript et Stop-Transcript (qui enregistrent tout ce qui est tapé et affiché dans la console), cette sortie, ainsi que le fichier journal, fournit une référence complète de l’activité d’importation et d’exportation.
À l’aide des horodatages dans les fichiers journaux, vous pouvez diagnostiquer certains problèmes. Par exemple, si une exportation ou une importation a pris beaucoup de temps, vous pouvez déterminer si une connexion de base de données défectueuse ou la résolution des comptes d’utilisateur a pris la majeure partie du temps.
Les commandes enregistrées dans les fichiers journaux vous indiquent également comment certains objets sont lus ou créés. Par exemple, pour créer un groupe de mise à disposition, plusieurs commandes créent non seulement l’objet Groupe de mise à disposition, mais également d’autres objets tels que des règles de stratégie d’accès qui permettent d’attribuer des objets d’application au groupe de mise à disposition.
Le fichier journal peut également être utilisé pour diagnostiquer un échec d’exportation ou d’importation. Généralement, les dernières lignes du fichier journal indiquent la cause de l’échec. Le message d’erreur d’échec est également enregistré dans le fichier journal. Avec le fichier XML, le fichier journal peut être utilisé pour déterminer quel objet était impliqué dans l’échec.
Après avoir examiné et testé la migration, vous pouvez :
-
Mettre à niveau vos serveurs worker XenApp 6.5 vers des agents de livraison virtuelle (VDA) actuels en exécutant le programme d’installation 7.6 sur le serveur, ce qui supprime le logiciel XenApp 6.5 et installe ensuite automatiquement un VDA actuel. Consultez Mettre à niveau un worker XenApp 6.5 vers un nouveau VDA pour OS Windows Server pour les instructions.
Pour les serveurs worker XenApp 6.0, vous devez désinstaller manuellement le logiciel XenApp 6.0 du serveur. Vous pouvez ensuite utiliser le programme d’installation 7.6 pour installer le VDA actuel. Vous ne pouvez pas utiliser le programme d’installation 7.6 pour supprimer automatiquement le logiciel XenApp 6.0.
-
Depuis Studio dans le nouveau site XenApp, créez des catalogues de machines (ou modifiez les catalogues existants) pour les workers mis à niveau.
-
Ajoutez les machines mises à niveau du catalogue de machines aux groupes de mise à disposition qui contiennent les applications installées sur ces VDA pour OS Windows Server.
Utilisation avancée
Par défaut, la cmdlet Export-Policy exporte toutes les données de stratégie vers un fichier XML. De même, Export-XAFarm exporte toutes les données de la batterie vers un fichier XML. Vous pouvez utiliser des paramètres de ligne de commande pour contrôler plus finement ce qui est exporté et importé.
Exporter des applications partiellement
Si vous avez de nombreuses applications et que vous souhaitez contrôler le nombre d’applications exportées vers le fichier XML, utilisez les paramètres suivants :
-
AppLimit- Spécifie le nombre d’applications à exporter. -
SkipApps- Spécifie le nombre d’applications à ignorer avant d’exporter les applications suivantes.
Vous pouvez utiliser ces deux paramètres pour exporter de grandes quantités d’applications par blocs gérables. Par exemple, la première fois que vous exécutez Export-XAFarm, vous souhaitez exporter uniquement les 200 premières applications, vous spécifiez donc cette valeur dans le paramètre AppLimit.
Export-XAFarm -XmlOutputFile "Apps1-200.xml"
-AppLimit "200"
<!--NeedCopy-->
La prochaine fois que vous exécutez Export-XAFarm, vous souhaitez exporter les 100 applications suivantes. Vous utilisez donc le paramètre SkipApps pour ignorer les applications que vous avez déjà exportées (les 200 premières), et le paramètre AppLimit pour exporter les 100 applications suivantes.
Export-XAFarm -XmlOutputFile "Apps201-300.xml"
-AppLimit "100" -SkipApps "200"
<!--NeedCopy-->
Ne pas exporter certains objets
Certains objets peuvent être ignorés et n’ont donc pas besoin d’être exportés, en particulier ceux qui ne sont pas importés. Consultez Paramètres de stratégie non importés et Mappage des propriétés d’application. Utilisez les paramètres suivants pour empêcher l’exportation d’objets inutiles :
-
IgnoreAdmins- Ne pas exporter les objets administrateur -
IgnoreServers- Ne pas exporter les objets serveur -
IgnoreZones- Ne pas exporter les objets de zone -
IgnoreOthers- Ne pas exporter la journalisation de la configuration, l’évaluateur de charge, la stratégie d’équilibrage de charge, le pilote d’imprimante et les objets de groupe de travailleurs -
IgnoreApps- Ne pas exporter les applications. Ce paramètre vous permet d’exporter d’autres données vers un fichier de sortie XML, puis d’exécuter à nouveau l’exportation pour exporter les applications vers un autre fichier de sortie XML.
Vous pouvez également utiliser ces paramètres pour contourner les problèmes qui pourraient entraîner l’échec de l’exportation. Par exemple, si vous avez un serveur défectueux dans une zone, l’exportation de la zone peut échouer. Si vous incluez le paramètre IgnoreZones, l’exportation se poursuit avec d’autres objets.
Noms des groupes de mise à disposition
Si vous ne souhaitez pas regrouper toutes vos applications dans un seul groupe de mise à disposition (par exemple, parce qu’elles sont accessibles par différents ensembles d’utilisateurs et publiées sur différents ensembles de serveurs), vous pouvez exécuter Import-XAFarm plusieurs fois, en spécifiant des applications différentes et un groupe de mise à disposition différent à chaque fois. Bien que vous puissiez utiliser des cmdlets PowerShell pour déplacer des applications d’un groupe de mise à disposition à un autre après la migration, l’importation sélective vers des groupes de mise à disposition uniques peut réduire ou éliminer l’effort de déplacement des applications ultérieurement.
- Utilisez le paramètre
DeliveryGroupNameavec la cmdletImport-XAFarm. Le script crée le groupe de mise à disposition spécifié s’il n’existe pas. -
Utilisez les paramètres suivants avec des expressions régulières pour filtrer les applications à importer dans le groupe de mise à disposition, en fonction du dossier, du groupe de travailleurs, du compte utilisateur et des noms de serveur. Il est recommandé d’encadrer l’expression régulière de guillemets simples ou doubles. Pour plus d’informations sur les expressions régulières, consultez https://docs.microsoft.com/fr-fr/dotnet/standard/base-types/regular-expressions.
-
MatchWorkerGroupetNotMatchWorkerGroup- Par exemple, pour les applications publiées dans des groupes de travailleurs, l’applet de commande suivante importe les applications du groupe de travailleurs nomméProductivity Appsvers un groupe de mise à disposition XenApp 7.6 du même nom :Import-XAFarm –XmlInputFile XAFarm.xml –LogFile XAFarmImport.log –MatchWorkerGroup ‘Productivity Apps’ –DeliveryGroupName ‘Productivity Apps <!--NeedCopy--> -
MatchFolderetNotMatchFolder - Par exemple, pour les applications organisées dans des dossiers d’applications, l’applet de commande suivante importe les applications du dossier nomméProductivity Appsvers un groupe de mise à disposition XenApp 7.6 du même nom.Import-XAFarm –XmlInputFile XAFarm.xml –LogFile XAFarmImport.log –MatchFolder ‘Productivity Apps’ –DeliveryGroupName ‘Productivity Apps’ <!--NeedCopy-->Par exemple, l’applet de commande suivante importe les applications de tout dossier dont le nom contient
MS Office Appsvers le groupe de mise à disposition par défaut.Import-XAFarm -XmlInputFile .\THeFarmApps.XML -MatchFolder ".*/MS Office Apps/.*" <!--NeedCopy--> -
MatchAccountetNotMatchAccount- Par exemple, pour les applications publiées pour des utilisateurs ou des groupes d’utilisateurs Active Directory, l’applet de commande suivante importe les applications publiées pour le groupe d’utilisateurs nomméFinance Groupvers un groupe de mise à disposition XenApp 7.6 nomméFinance.Import-XAFarm –XmlInputFile XAFarm.xml –LogFile XAFarmImport.log –MatchAccount ‘DOMAIN\\Finance Group’ –DeliveryGroupName ‘Finance’ <!--NeedCopy--> -
MatchServeretNotMatchServer- Par exemple, pour les applications organisées sur des serveurs, l’applet de commande suivante importe les applications associées au serveur non nomméCurrentvers un groupe de mise à disposition nomméLegacy.Import-XAFarm -XmlInputFile XAFarm.xml -LogFile XAFarmImport.log -NotMatchServer 'Current' -DeliveryGroupName 'Legacy' <!--NeedCopy-->
-
Personnalisation
Les programmeurs PowerShell peuvent créer leurs propres outils. Par exemple, vous pouvez utiliser le script d’exportation comme outil d’inventaire pour suivre les modifications dans une batterie XenApp 6.x. Vous pouvez également modifier les fichiers XSD ou (créer vos propres fichiers XSD) pour stocker des données supplémentaires ou des données dans différents formats dans les fichiers XML. Vous pouvez spécifier un fichier XSD non par défaut avec chacune des applets de commande d’importation.
Bien que vous puissiez modifier les fichiers de script pour répondre à des exigences de migration spécifiques ou avancées, le support est limité aux scripts dans leur état non modifié. Le support technique Citrix recommande de revenir aux scripts non modifiés pour déterminer le comportement attendu et fournir un support, si nécessaire.
Dépannage
- Si vous utilisez PowerShell version 2.0 et que vous avez ajouté le composant logiciel enfichable du fournisseur PowerShell de stratégie de groupe Citrix ou le composant logiciel enfichable des commandes courantes Citrix à l’aide de l’applet de commande
Add-PSSnapIn, vous risquez de voir le message d’erreurObject reference not set to an instance of an objectlorsque vous exécutez les applets de commande d’exportation ou d’importation. Cette erreur n’affecte pas l’exécution du script et peut être ignorée en toute sécurité. -
Évitez d’ajouter ou de supprimer le composant logiciel enfichable du fournisseur PowerShell de stratégie de groupe Citrix dans la même session de console où les modules de script d’exportation et d’importation sont utilisés, car ces modules de script ajoutent automatiquement le composant logiciel enfichable. Si vous ajoutez ou supprimez le composant logiciel enfichable séparément, vous risquez de voir l’une des erreurs suivantes :
-
A drive with the name 'LocalGpo' already exists.Cette erreur apparaît lorsque le composant logiciel enfichable est ajouté deux fois. Le composant logiciel enfichable tente de monter le lecteur LocalGpo lorsqu’il est chargé, puis signale l’erreur. -
A parameter cannot be found that matches parameter name 'Controller'.Cette erreur apparaît lorsque le composant logiciel enfichable n’a pas été ajouté mais que le script tente de monter le lecteur. Le script n’est pas conscient que le composant logiciel enfichable a été supprimé. Fermez la console et lancez une nouvelle session. Dans la nouvelle session, importez les modules de script. N’ajoutez ni ne supprimez le composant logiciel enfichable séparément.
-
- Lors de l’importation des modules, si vous cliquez avec le bouton droit sur un fichier
.psd1et sélectionnez Ouvrir ou Ouvrir avec PowerShell, la fenêtre de la console PowerShell s’ouvrira et se fermera rapidement jusqu’à ce que vous arrêtiez le processus. Pour éviter cette erreur, entrez le nom complet du module de script PowerShell directement dans la fenêtre de la console PowerShell (par exemple,Import-Module .\ExportPolicy.psd1). - Si vous recevez une erreur d’autorisation lors de l’exécution d’une exportation ou d’une importation, assurez-vous d’être un administrateur XenApp avec l’autorisation de lire les objets (pour l’exportation) ou de lire et créer les objets (pour l’importation). Vous devez également disposer d’une autorisation Windows suffisante pour exécuter des scripts PowerShell.
- Si une exportation échoue, vérifiez que la batterie de serveurs XenApp 6.x est en bon état en exécutant les utilitaires DSMAINT et DSCHECK sur le serveur contrôleur XenApp 6.x.
- Si vous exécutez une importation en mode aperçu, puis exécutez à nouveau les cmdlets d’importation pour une migration réelle, mais que vous découvrez que rien n’a été importé, vérifiez que vous avez supprimé le paramètre Preview des cmdlets d’importation.
Paramètres de stratégie non importés
Les paramètres de stratégie d’ordinateur et d’utilisateur suivants ne sont pas importés car ils ne sont plus pris en charge. Les stratégies non filtrées ne sont jamais importées. Les fonctionnalités et composants qui prennent en charge ces paramètres ont été remplacés par de nouvelles technologies et de nouveaux composants, ou les paramètres ne s’appliquent pas en raison de modifications architecturales et de plateforme.
Paramètres de stratégie d’ordinateur non importés
- Contrôle d’accès aux connexions
- Niveau serveur de gestion du CPU
- Résolution d’adresse DNS
- Nom de la batterie
- Mise en cache complète des icônes
- Surveillance de l’état de santé, Tests de surveillance de l’état de santé
- Nom d’hôte du serveur de licences, Port du serveur de licences
- Limiter les sessions utilisateur, Limites des sessions administrateur
- Nom de l’évaluateur de charge
- Journalisation des événements de limite de connexion
- Pourcentage maximal de serveurs avec contrôle d’ouverture de session
- Optimisation de la mémoire, Liste d’exclusion des applications d’optimisation de la mémoire, Intervalle d’optimisation de la mémoire, Planification de l’optimisation de la mémoire : jour du mois, Planification de l’optimisation de la mémoire : jour de la semaine, Planification de l’optimisation de la mémoire : heure
- Confiance du client d’application hors ligne, Journalisation des événements d’application hors ligne, Période de licence d’application hors ligne, Utilisateurs d’application hors ligne
- Demander le mot de passe
- Avertissement de redémarrage personnalisé, Texte d’avertissement de redémarrage personnalisé, Heure de désactivation de l’ouverture de session pour le redémarrage, Fréquence de planification du redémarrage, Intervalle de randomisation de la planification du redémarrage, Date de début de la planification du redémarrage, Heure de planification du redémarrage, Intervalle d’avertissement de redémarrage, Heure de début de l’avertissement de redémarrage, Avertissement de redémarrage aux utilisateurs, Redémarrages planifiés
- Mise en miroir *
- Approuver les requêtes XML (configuré dans StoreFront™)
- Filtrage d’adresses d’adaptateur IP virtuel, Liste des programmes de compatibilité IP virtuelle, Compatibilité améliorée IP virtuelle, Liste des programmes de filtrage d’adresses d’adaptateur IP virtuelle
- Nom de la charge de travail
- Édition du produit XenApp, Modèle du produit XenApp
- Port du service XML
* Remplacé par l’Assistance à distance Windows
Paramètres de stratégie utilisateur non importés
- Connexion automatique des ports COM clients, Connexion automatique des ports LPT clients
- Redirection des ports COM clients, Redirection des ports LPT clients
- Noms d’imprimantes clientes
- Limite de connexions simultanées
- Entrée des connexions d’ombre *
- Intervalle du temporisateur de déconnexion persistante, Intervalle du temporisateur de terminaison persistante
- Journaliser les tentatives d’ombre *
- Notifier l’utilisateur des connexions d’ombre en attente *
- Intervalle du temporisateur de déconnexion de pré-lancement, Intervalle du temporisateur de terminaison de pré-lancement
- Importance de la session
- Authentification unique, Magasin central d’authentification unique
- Utilisateurs pouvant observer d’autres utilisateurs, Utilisateurs ne pouvant pas observer d’autres utilisateurs *
* Remplacé par l’Assistance à distance Windows
Types d’applications non importés
Les types d’applications suivants ne sont pas importés.
- Bureaux de serveur
- Contenu
- Applications diffusées en continu (App-V est la nouvelle méthode utilisée pour la diffusion en continu d’applications)
Mappage des propriétés d’application
Le script d’importation des données de la batterie importe uniquement les applications. Les propriétés d’application suivantes sont importées sans modification.
| Propriété IMA | Propriété FMA |
|---|---|
| AddToClientDesktop | ShortcutAddedToDesktop |
| AddToClientStartMenu | ShortcutAddedToStartMenu |
| ClientFolder | ClientFolder |
| CommandLineExecutable | CommandLineExecutable |
| CpuPriorityLevel | CpuPriorityLevel |
| Description | Description |
| Nom d’affichage | Nom publié |
| Activé | Activé |
| Dossier du menu Démarrer | Dossier du menu Démarrer |
| Attendre la création de l’imprimante | Attendre la création de l’imprimante |
| Répertoire de travail | Répertoire de travail |
| Chemin du dossier | Nom du dossier d’administration |
IMA et FMA ont des restrictions différentes sur la longueur du nom de dossier. Dans IMA, la limite de longueur du nom de dossier est de 256 caractères. La limite FMA est de 64 caractères. Lors de l’importation, les applications dont le chemin de dossier contient un nom de dossier de plus de 64 caractères sont ignorées. La limite s’applique uniquement au nom du dossier dans le chemin du dossier. Le chemin de dossier complet peut être plus long que les limites indiquées. Pour éviter que des applications ne soient ignorées lors de l’importation, Citrix recommande de vérifier la longueur du nom du dossier de l’application et de le raccourcir, si nécessaire, avant l’exportation.
Les propriétés d’application suivantes sont initialisées ou non initialisées par défaut, ou définies sur les valeurs fournies dans les données XenApp 6.x :
| Propriété FMA | Valeur |
|---|---|
| Nom | Initialisé avec le nom de chemin complet, qui contient les propriétés IMA FolderPath et DisplayName, mais sans la chaîne de début “Applications\” |
| ApplicationType | HostedOnDesktop |
| CommandLineArguments | Initialisé à l’aide des arguments de ligne de commande XenApp 6.x |
| IconFromClient | Non initialisé ; la valeur par défaut est false |
| IconUid | Initialisé avec un objet icône créé à l’aide des données d’icône XenApp 6.x |
| SecureCmdLineArgumentsEnabled | Non initialisé ; la valeur par défaut est true |
| UserFilterEnabled | Non initialisé ; par défaut, false |
| UUID | Lecture seule, attribué par le Controller |
| Visible | Non initialisé ; par défaut, true |
Les propriétés d’application suivantes sont partiellement migrées :
| Propriété IMA | Commentaires |
|---|---|
| Types de fichiers | Seuls les types de fichiers qui existent sur le nouveau site XenApp sont migrés. Les types de fichiers qui n’existent pas sur le nouveau site sont ignorés. Les types de fichiers sont importés uniquement après la mise à jour des types de fichiers sur le nouveau site. |
| Données d’icône | De nouveaux objets d’icône sont créés si les données d’icône ont été fournies pour les applications exportées. |
| Comptes | Les comptes d’utilisateur d’une application sont répartis entre la liste d’utilisateurs du groupe de mise à disposition (Delivery Group) et l’application. Les utilisateurs explicites sont utilisés pour initialiser la liste d’utilisateurs de l’application. De plus, le compte « Utilisateurs du domaine » (Domain Users) du domaine des comptes d’utilisateur est ajouté à la liste d’utilisateurs du groupe de mise à disposition (Delivery Group). |
Les propriétés XenApp 6.x suivantes ne sont pas importées :
| Propriété IMA | Commentaires |
|---|---|
| ApplicationType | Ignoré. |
| HideWhenDisabled | Ignoré. |
| AccessSessionConditions | Remplacé par les stratégies d’accès du groupe de mise à disposition. |
| AccessSessionConditionsEnabled | Remplacé par les stratégies d’accès du groupe de mise à disposition. |
| ConnectionsThroughAccessGatewayAllowed | Remplacé par les stratégies d’accès du groupe de mise à disposition. |
| OtherConnectionsAllowed | Remplacé par les stratégies d’accès du groupe de mise à disposition. |
| AlternateProfiles | FMA ne prend pas en charge les applications diffusées en continu. |
| OfflineAccessAllowed | FMA ne prend pas en charge les applications diffusées en continu. |
| ProfileLocation | FMA ne prend pas en charge les applications diffusées en continu. |
| ProfileProgramArguments | FMA ne prend pas en charge les applications diffusées en continu. |
| ProfileProgramName | FMA ne prend pas en charge les applications diffusées en continu. |
| RunAsLeastPrivilegedUser | FMA ne prend pas en charge les applications diffusées en continu. |
| AnonymousConnectionsAllowed | FMA utilise une technologie différente pour prendre en charge les connexions non authentifiées (anonymes). |
| ApplicationId, SequenceNumber | Données uniques IMA. |
| AudioType | FMA ne prend pas en charge les options de connexion client avancées. |
| EncryptionLevel | SecureICA est activé/désactivé dans les groupes de mise à disposition. |
| EncryptionRequired | SecureICA est activé/désactivé dans les groupes de mise à disposition. |
| SslConnectionEnabled | FMA utilise une implémentation TLS différente. |
| ContentAddress | FMA ne prend pas en charge le contenu publié. |
| ColorDepth | FMA ne prend pas en charge les apparences de fenêtre avancées. |
| MaximizedOnStartup | FMA ne prend pas en charge les apparences de fenêtre avancées. |
| Barre de titre masquée | FMA ne prend pas en charge les apparences de fenêtre avancées. |
| Type de fenêtre | FMA ne prend pas en charge les apparences de fenêtre avancées. |
| Limite d’instances | FMA ne prend pas en charge les limites d’applications. |
| Plusieurs instances par utilisateur autorisées | FMA ne prend pas en charge les limites d’applications. |
| Vérification d’application d’équilibrage de charge activée | FMA utilise une technologie différente pour prendre en charge l’équilibrage de charge. |
| Prélancement | FMA utilise une technologie différente pour prendre en charge le prélancement de session. |
| Option de mise en cache | FMA utilise une technologie différente pour prendre en charge le prélancement de session. |
| Noms de serveurs | FMA utilise une technologie différente. |
| WorkerGroupNames | FMA ne prend pas en charge les groupes de workers. |