Product Documentation

Exporter et importer la configuration StoreFront

Oct 31, 2016

Vous pouvez exporter la configuration entière d’un déploiement StoreFront.  Cela inclut aussi bien les déploiements ne contenant qu'un seul serveur que les configurations de groupe de serveurs.  Si un déploiement existant est déjà présent sur le serveur d’importation, la configuration actuelle est supprimée et remplacée par la configuration contenue dans l’archive de sauvegarde.  Si l’installation est effectuée sur un serveur vierge, un nouveau déploiement est créé à l’aide de la configuration importée stockée dans le fichier de sauvegarde.  S’il est crypté, le fichier de sauvegarde de la configuration exportée est disponible au format .zip, ou au format .ctxzip si vous avez choisi de crypter le fichier de sauvegarde lors de sa création.

Éléments à prendre en considération lors de l’exportation et de l’importation d’une configuration StoreFront

Objets d'information d'identification PowerShell utilisés pour le cryptage et le décryptage des fichiers de sauvegarde de StoreFront

Applets de commande PowerShell

Exemples d’exportation et d’importation de configuration

Éléments à prendre en considération lors de l’exportation et de l’importation d’une configuration StoreFront

  • Voulez-vous utiliser l’URL de base de l'hôte contenue dans l’archive de sauvegarde ou spécifier une nouvelle URL de base de l’hôte à utiliser sur le serveur d’importation ?
  • Utilisez-vous actuellement des exemples de SDK d’authentification publiés par Citrix, tels que l’authentification Magic Word ou des personnalisations d’authentification tierces ?  Si c’est le cas, vous devez installer ces packages sur TOUS les serveurs d’importation AVANT d’importer une configuration contenant des méthodes d'authentification supplémentaires.  L’importation de la configuration échoue si les packages du SDK d’authentification requis ne sont installés sur aucun des serveurs d’importation.  Si vous importez une configuration dans un groupe de serveurs, installez les packages d’authentification sur tous les membres du groupe.
  • Vous pouvez crypter ou décrypter vos fichiers de sauvegarde de configuration.  Les applets de commande PowerShell d’exploration et d’importation prennent en charge les deux cas d’utilisation.
  • Vous pouvez décrypter les fichiers de sauvegarde cryptés (.ctxzip) ultérieurement, mais StoreFront ne peut pas recrypter les fichiers de sauvegarde non cryptés (.zip).  Si un fichier de sauvegarde crypté est requis, exportez de nouveau à l’aide d’un objet d'information d'identification PowerShell contenant un mot de passe de votre choix.
  • Le SiteID du site Web IIS où StoreFront est actuellement installé (serveur d'exportation) doit correspondre au SiteID du site cible IIS (serveur d'importation) sur lequel vous voulez restaurer la sauvegarde de la configuration deStoreFront.

Objets d'information d'identification PowerShell utilisés pour le cryptage et le décryptage des fichiers de sauvegarde de StoreFront

Un objet d'information d'identification PowerShell comprend un nom d'utilisateur et un mot de passe de compte Windows.  Les objets d'information d'identification PowerShell garantissent la sécurité de votre mot de passe en mémoire.  

Remarque

Pour configurer une archive de de sauvegarde de la configuration, seul le mot de passe est requis pour effectuer des cryptages et décryptages. Le nom d'utilisateur stocké dans l’objet d'information d'identification n’est pas utilisé.  Vous devez créer un objet d'information d'identification contenant le même mot de passe dans les sessions PowerShell que celui utilisé sur les serveurs d’exportation et d’importation.  Vous pouvez spécifier un utilisateur quelconque dans l’objet d'information d'identification. 

PowerShell nécessite que vous spécifiiez un utilisateur lors de la création d’un nouvel objet d'information d'identification. Pour des raisons pratiques, cet exemple de code retourne uniquement l’utilisateur Windows connecté.

$User = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
$Password = "Pa55w0rd"
$Password = $Password | ConvertTo-SecureString -asPlainText -Force
$CredObject = New-Object System.Management.Automation.PSCredential($User,$Password) 

Applets de commande PowerShell

Export-STFConfiguration

Paramètre

Description

-TargetFolder (chaîne)

Chemin d’accès d’exportation à l’archive de configuration.

Exemple : "$env:userprofile\desktop\"

-Credential (Objet PSCredential)

Spécifiez un objet d'information d'identification pour créer une archive de sauvegarde cryptée .ctxzip durant l’exportation.

L’objet d'information d'identification PowerShell doit contenir le mot de passe à utiliser pour le cryptage et le décryptage.  N’utilisez pas -Credential conjointement avec le paramètre -NoEncryption.

Exemple : $CredObject

-NoEncryption (Commutateur)

Indique que l’archive de sauvegarde doit être un fichier .zip non crypté.

N’utilisez pas -NoEncryption conjointement avec le paramètre -Credential.

-ZipFileName (chaîne)

Nom de l’archive de sauvegarde de la configuration de StoreFront.  N’ajoutez pas d’extension de fichier, telle que .zip ou .ctxzip.  L’extension de fichier est ajoutée automatiquement suivant que le paramètre -Credential ou -NoEncryption est spécifié durant l’exportation.

Exemple : "backup"

-Force (Booléen)

Ce paramètre écrase automatiquement les archives de sauvegarde qui portent le même nom de fichier que les fichiers de sauvegarde existants déjà présents dans l’emplacement d’exportation spécifié. 

Important

Le paramètre -SiteID dans StoreFront 3.5 est obsolète dans la version 3.6.  Il n'est plus nécessaire de spécifier le SiteID lors d'une importation, car le SiteID contenu dans l'archive de sauvegarde est toujours utilisé.  Assurez-vous que le SiteID correspond au site Web de StoreFront déjà configuré dans IIS sur le serveur d'importation.  Les importations de configuration de SiteID 1 vers SiteID 2 (et vice versa) ne sont pas prises en charge.

Import-STFConfiguration

Paramètre

Description

-ConfigurationZip (chaîne)

Chemin d'accès complet de l’archive de sauvegarde que vous voulez importer.  Il doit également inclure l’extension de fichier.  Utilisez l’extension .zip pour les archives de sauvegarde non cryptées et .ctxzip pour celles cryptées.

Exemple : "$env:userprofile\desktop\backup.ctxzip"

-Credential (Objet PSCredential)

Spécifiez un objet d'information d'identification pour décrypter un fichier de sauvegarde crypté durant l’importation.

Exemple : $CredObject

-HostBaseURL (chaîne)

Si ce paramètre est inclus, l’URL de base de l’hôte que vous spécifiez est utilisée à la place de l’URL de base de l’hôte du serveur d’exportation.

Exemple : "https://<serveurimportation>.exemple.com"

 

Unprotect-STFConfigurationBackup

Paramètre

Description

-TargetFolder (chaîne)

Chemin d’accès d’exportation à l’archive de configuration.

Exemple : "$env:userprofile\desktop\"

-Credential (Objet PSCredential)

Utilisez ce paramètre pour créer une copie non cryptée de l’archive de sauvegarde cryptée.  Spécifiez l’objet d'information d'identification PowerShell contenant le mot de passe à utiliser pour le décryptage. 

Exemple : $CredObject

-EncryptedConfigurationZip (chaîne)

Chemin d'accès complet de l’archive de sauvegarde cryptée que vous voulez décrypter.  Vous devez spécifier l’extension de fichier .ctxzip.

Exemple : "$env:userprofile\desktop\backup.ctxzip"

-OutputFolder (chaîne)

Chemin d’accès pour créer une copie non cryptée (.zip) de l’archive de sauvegarde cryptée (.ctxzip).  La copie cryptée d’origine de la sauvegarde est conservée de façon à pouvoir être réutilisée.  Ne spécifiez pas de nom de fichier ni d’extension de fichier pour la copie non cryptée.

Exemple : "$env:userprofile\desktop\"

-Force (Booléen)

Ce paramètre écrase automatiquement les archives de sauvegarde qui portent le même nom de fichier que les fichiers de sauvegarde existants déjà présents dans l’emplacement d’exportation spécifié.

Exemples d’exportation et d’importation de configuration

Importer le SDK StoreFront dans la session PowerShell en cours

Ouvrez la console PowerShell (ISE) sur le serveur StoreFront principal et exécutez :

$SDKModules = 'C:\Program Files\Citrix\Receiver StoreFront\PowerShellSDK\Modules\Citrix.StoreFront'
Import-Module "$SDKModules\Citrix.StoreFront.psd1" -verbose
Import-Module "$SDKModules.Authentication\Citrix.StoreFront.Authentication.psd1" -verbose
Import-Module "$SDKModules.Roaming\Citrix.StoreFront.Roaming.psd1" -verbose
Import-Module "$SDKModules.Stores\Citrix.StoreFront.Stores.psd1" -verbose
Import-Module "$SDKModules.WebReceiver\Citrix.StoreFront.WebReceiver.psd1" -verbose
Import-Module "$SDKModules.SubscriptionsStore\Citrix.StoreFront.SubscriptionsStore.psd1" -verbose

Scénarios impliquant un seul serveur

Créer une sauvegarde non cryptée d’une configuration existante sur un Serveur A et la restaurer sur le même déploiement.

Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -NoEncryption
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.zip"

 

Créer une sauvegarde cryptée d’une configuration existante sur un Serveur A et la restaurer sur le même déploiement.

# Créez un objet d'information d'identification PowerShell
$User = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
$Password = "Pa55w0rd"
$Password = $Password | ConvertTo-SecureString -asPlainText -Force
$CredObject = New-Object System.Management.Automation.PSCredential($User,$Password)
Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -Credential $CredObject
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject


Ôter la protection d’une archive de sauvegarde cryptée existante

$User = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
$Password = "Pa55w0rd"
$Password = $Password | ConvertTo-SecureString -asPlainText -Force
$CredObject = New-Object System.Management.Automation.PSCredential($User,$Password)
Unprotect-STFConfigurationExport -encryptedConfigurationZip "$env:userprofile\desktop\backup.ctxzip" -credential $CredObject -outputFolder "c:\StoreFrontBackups" -Force


Sauvegarder une configuration existante sur un Serveur A et la restaurer sur une nouvelle installation sur un Serveur B

Le Serveur B est un nouveau déploiement conçu pour coexister avec le Serveur A. Spécifiez le paramètre -HostBaseURL.   Le Serveur B est également une nouvelle installation de StoreFront.  

  1. Créez un objet d'information d'identification PowerShell et exportez une copie cryptée de la configuration du Serveur A.
  2. Créez un objet d'information d'identification PowerShell le Serveur B à l’aide du même mot de passe que celui utilisé pour crypter le fichier de sauvegarde. 
  3. Décryptez et importez la configuration du Serveur A sur le Serveur B à l’aide du paramètre -HostBaseURL.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://serverB.example.com

 

Sauvegarder une configuration existante sur un Serveur A et l’utiliser pour remplacer un déploiement existant sur un Serveur B

Le Serveur B est un déploiement existant doté d’une configuration obsolète.  Utilisez la configuration du Serveur A pour mettre à jour le Serveur B.  Le Serveur B est conçu pour coexister avec le Serveur A. Spécifiez le paramètre -HostBaseURL.  

  1. Créez un objet d'information d'identification PowerShell et exportez une copie cryptée de la configuration du Serveur A.
  2. Créez un objet d'information d'identification PowerShell le Serveur B à l’aide du même mot de passe que celui utilisé pour crypter le fichier de sauvegarde. 
  3.  Décryptez et importez la configuration du Serveur A sur le Serveur B à l’aide du paramètre -HostBaseURL.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" –Credential $CredObject -HostBaseURL "https://serverB.example.com"


Créez un clone d’un déploiement existant avec la même URL de base d’hôte, par exemple lors de la mise à niveau vers un nouveau système d'exploitation de serveur et de la mise hors service d’un déploiement StoreFront obsolète.

Le Serveur B 2012R2 est un nouveau déploiement conçu pour remplacer le Serveur A 2008R2 obsolète.  Utilisez le paramètre HostBaseURL de l’archive de sauvegarde. N’utilisez pas le paramètre -HostBaseURL durant l’importation.   Le Serveur B est également une nouvelle installation de StoreFront. 

  1. Créez un objet d'information d'identification PowerShell et exportez une copie cryptée de la configuration du Serveur A 2008R2.
  2. Créez un objet d'information d'identification PowerShell sur le Serveur B 2012R2 à l’aide du même mot de passe que celui utilisé pour crypter le fichier de sauvegarde. 
  3. Décryptez et importez la configuration du Serveur A 2008R2 sur le Serveur B 2012R2 sans utiliser le paramètre -HostBaseURL.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject

 

StoreFront est déjà déployé sur un site Web personnalisé dans IIS. Restaurer la configuration sur un autre déploiement de site Web personnalisé.

StoreFront est déployé sur un site Web personnalisé sur le Serveur A plutôt que sur le site Web par défaut habituel dans IIS.  Le paramètre SiteID IIS pour le second site Web créé dans IIS est 2.  Le chemin d'accès physique au site Web de StoreFront peut se trouver sur un lecteur autre que le lecteur système tel que d:\ où sur le lecteur système par défaut c:\ mais doit utiliser un paramètre SiteID IIS supérieur à 1. 

Un nouveau site Web appelé StoreFront a été configuré dans IIS, qui utilise SiteID = 2.  StoreFront est déjà déployé sur le site Web personnalisé dans IIS et son chemin d’accès physique se trouve sur le lecteur d:\inetpub\wwwrooot\.

localized image
  1. Créez un objet d'information d'identification PowerShell et exportez une copie cryptée de la configuration du Serveur A.
  2. Sur le Serveur B, configurez IIS avec un nouveau site Web appelé StoreFront, qui utilise également SiteID 2.
  3. Créez un objet d'information d'identification PowerShell le Serveur B à l’aide du même mot de passe que celui utilisé pour crypter le fichier de sauvegarde.
  4. Décryptez et importez la configuration du Serveur A sur le Serveur B à l’aide du paramètre -HostBaseURL. Le SiteID contenu dans la copie de sauvegarde est utilisé et doit correspondre au site Web cible sur lequel vous voulez importer la configuration de StoreFront.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://serverB.example.com"

Scénarios de groupe de serveurs

Scénario 1 : sauvegarder une configuration de groupe de serveurs existante et la restaurer plus tard sur le même déploiement de groupe de serveurs.

Une sauvegarde de configuration précédente a été effectuée lorsque seulement deux serveurs StoreFront, 2012R2-A et 2012R2-B, étaient membres du groupe de serveurs.  L’archive de sauvegarde contient un enregistrement de CitrixClusterMembership correspondant au moment où la sauvegarde a été effectuée. Ce dernier contient uniquement les deux serveurs d’origine 2012R2-A et 2012R2-B.  Depuis que la sauvegarde d’origine a été effectuée, le déploiement du groupe de serveurs a pris de l’ampleur afin de s’adapter à la demande croissante, c’est la raison pour laquelle le nœud 2012R2-C a été ajouté au groupe de serveurs.  La configuration StoreFront sous-jacente du groupe de serveurs contenue dans la sauvegarde n’a pas été modifiée.  Le CitrixClusterMembership actuel de trois serveurs doit être conservé même si une ancienne sauvegarde contenant uniquement les deux nœuds du groupe de serveurs d’origine est importée.  Durant l’importation, l’appartenance au cluster actuel est conservée puis réécrite une fois que la configuration a été importée avec succès sur le serveur principal.  L’importation préserve également le CitrixClusterMembership actuel si des nœuds de groupe de serveurs ont été supprimés du groupe de serveurs depuis que la sauvegarde d’origine a été effectuée.

1.  Exportez la configuration du Groupe de serveurs 1 depuis 2012R2-A, qui est le serveur principal utilisé pour gérer le groupe de serveurs.

localized image

2.    Ajoutez ensuite un serveur supplémentaire 2012R2-C au groupe de serveurs existant.

localized image

3.   Restaurez la configuration du groupe de serveurs à un état fonctionnel antérieur.  StoreFront sauvegarde le CitrixClusterMembership actuel de trois serveurs durant le processus d’importation, puis le restaure une fois l’importation terminée.

4.   Réimportez la configuration du Groupe de serveurs 1 sur le nœud 2012R2-A.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject

5.   Propagez la nouvelle configuration importée à tout le groupe de serveurs, de façon à ce que tous les serveurs disposent de la même configuration après l’importation.

Scénario 2 : sauvegarder une configuration existante du Groupe de serveurs 1 et l’utiliser pour créer un nouveau groupe de serveurs sur une nouvelle installation différente.  Vous pouvez ajouter d’autres membres du nouveau groupe de serveurs au nouveau serveur principal.

Le Groupe de serveurs 2 est créé avec deux nouveaux serveurs, 2012R2-C et 2012R2-D.  La configuration du Groupe de serveurs 2 sera basée sur la configuration d’un déploiement existant, le Groupe de serveurs 1, qui contient également deux serveurs, 2012R2-A et 2012R2-B.  Le CitrixClusterMembership contenu dans l’archive de sauvegarde n’est pas utilisé lors de la création d’un nouveau groupe de serveurs.  Le CitrixClusterMembership actuel est toujours sauvegardé puis restauré une fois que l’importation est terminée.  Lors de la création d'un nouveau déploiement à l’aide d’une configuration importée, le groupe de sécurité CitrixClusterMembership contient uniquement le serveur d’importation jusqu’à ce que des serveurs supplémentaires soient associés au nouveau groupe. Le Groupe de serveurs 2 est un nouveau déploiement conçu pour coexister avec le Groupe de serveurs 1. Spécifiez le paramètre -HostBaseURL.  Le Groupe de serveurs 2 sera créé à l’aide d’une nouvelle l’installation de StoreFront par défaut. 

1.  Exportez la configuration du Groupe de serveurs 1 depuis 2012R2-A, qui est le serveur principal utilisé pour gérer le groupe de serveurs.

2.  Importez la configuration du Groupe de serveurs 1 sur le nœud 2012R2-C, qui sera le serveur principal utilisé pour gérer le Groupe de serveurs 2 nouvellement créé. 

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://servergroup2.example.com"

 3.   Ajoutez tout serveur supplémentaire qui fera partie du nouveau déploiement du Groupe de serveurs 2.  La propagation de la configuration nouvellement importée du Groupe de serveurs 1 à tous les nouveaux membres du Groupe de serveurs 2 est automatique, car cela fait partie du processus d’association normal lorsqu’un nouveau serveur est ajouté.

Scénario 3 : sauvegarder une configuration existante du Groupe de serveurs A et l’utiliser pour remplacer la configuration existante du Groupe de serveurs B.

Le Groupe de serveurs 1 et le Groupe de serveurs 2 existent déjà dans deux centres de données distincts.  La plupart des modifications de configuration StoreFront sont effectuées sur le Groupe de serveurs 1, que vous devez appliquer au Groupe de serveurs 2 dans l’autre centre de données.  Vous pouvez porter les modifications du Groupe de serveurs 1 vers le Groupe de serveurs 2.  N’utilisez pas le CitrixClusterMembership dans l’archive de sauvegarde sur le Groupe de serveurs 2.  Spécifiez le paramètre -HostBaseURL durant l’importation, car l’URL de base de l’hôte du Groupe de serveurs 2 ne doit pas être modifiée sur le même nom de domaine complet que celui actuellement utilisé par le Groupe de serveurs 1.  Le Groupe de serveurs 2 est un déploiement existant. 

1.  Exportez la configuration du Groupe de serveurs 1 depuis 2012R2-A, qui est le serveur principal utilisé pour gérer le groupe de serveurs.

2.  Importez la configuration du Groupe de serveurs 1 sur la nouvelle installation par défaut sur le nœud 2012R2-C, qui sera le serveur principal du nouveau Groupe de serveurs 2.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://servergroup2.example.com"