Exportieren und Importieren der StoreFront-Konfiguration
Hinweis:
Sie können nur StoreFront-Konfigurationen importieren, die dieselbe StoreFront-Version wie die Ziel-StoreFront-Installation aufweisen.
Sie können die gesamte Konfiguration einer StoreFront-Bereitstellung exportieren. Dies umfasst sowohl Einzelserver-Bereitstellungen als auch Servergruppenkonfigurationen. Wenn auf dem importierenden Server bereits eine vorhandene Bereitstellung vorhanden ist, wird die aktuelle Konfiguration gelöscht und dann durch die im Sicherungsarchiv enthaltene Konfiguration ersetzt. Wenn der Zielserver eine saubere Werksstandardinstallation ist, wird eine neue Bereitstellung unter Verwendung der importierten Konfiguration erstellt, die in der Sicherung gespeichert ist. Die exportierte Konfigurationssicherung liegt in Form eines einzelnen .zip-Archivs vor, wenn sie unverschlüsselt ist, oder als .ctxzip, wenn Sie die Sicherungsdatei bei der Erstellung verschlüsseln möchten.
Szenarien, in denen der Konfigurationsexport und -import verwendet werden kann
- Sichern Sie StoreFront-Bereitstellungen nur in einem funktionierenden und vertrauenswürdigen Zustand. Jede Änderung an der Konfiguration erfordert eine neue Sicherung, um die alte zu ersetzen. Sie können vorhandene Sicherungen nicht ändern, da ein Dateihash der Datei backup.zip eine Änderung verhindert.
- Sichern Sie VOR dem Upgrade von StoreFront zur Notfallwiederherstellung.
- Klonen vorhandener Test-StoreFront-Bereitstellungen zur Überführung in die Produktion
- Erstellen von Benutzerakzeptanzumgebungen durch Klonen von Produktionsbereitstellungen in eine Testumgebung.
- Verschieben von StoreFront während OS-Migrationen, z. B. beim Upgrade des Hostings von Windows Server 2019 auf Windows 2022. In-Place-OS-Upgrades werden nicht unterstützt.
- Erstellen zusätzlicher Servergruppen in Multigeo-Bereitstellungen, z. B. in großen Unternehmen mit mehreren Rechenzentren.
Überlegungen beim Exportieren und Importieren einer StoreFront-Konfiguration
- Verwenden Sie derzeit von Citrix® veröffentlichte Authentifizierungs-SDK-Beispiele, wie z. B. die Magic Word-Authentifizierung oder Anpassungen von Drittanbieter-Authentifizierungen? Falls ja, müssen Sie diese Pakete auf ALLEN importierenden Servern installieren, BEVOR Sie eine Konfiguration importieren, die zusätzliche Authentifizierungsmethoden enthält. Der Konfigurationsimport schlägt fehl, wenn die erforderlichen Authentifizierungs-SDK-Pakete auf keinem der importierenden Server installiert sind. Wenn Sie eine Konfiguration in eine Servergruppe importieren, installieren Sie die Authentifizierungspakete auf allen Mitgliedern der Gruppe.
- Sie können Ihre Konfigurationssicherungen verschlüsseln oder entschlüsseln. Die PowerShell-Cmdlets für den Export und Import unterstützen beide Anwendungsfälle.
- Sie können verschlüsselte Sicherungen (.ctxzip) später entschlüsseln, aber StoreFront kann unverschlüsselte Sicherungsdateien (.zip) nicht erneut verschlüsseln. Wenn eine verschlüsselte Sicherung erforderlich ist, führen Sie den Export erneut mit einem PowerShell-Anmeldeinformationsobjekt durch, das ein Passwort Ihrer Wahl enthält.
- Die SiteID der Website in IIS, auf der StoreFront derzeit installiert ist (exportierender Server), muss mit der SiteID der Zielwebsite in IIS (importierender Server) übereinstimmen, auf der Sie die gesicherte StoreFront-Konfiguration wiederherstellen möchten.
PowerShell-Cmdlets
Export-STFConfiguration
| Parameter | Beschreibung |
|---|---|
| -TargetFolder (String) | Der Exportpfad zum Sicherungsarchiv. Beispiel: “$env:userprofile\desktop\” |
| -Credential (PSCredential Object) | Geben Sie ein Anmeldeinformationsobjekt an, um während des Exports ein verschlüsseltes .ctxzip-Sicherungsarchiv zu erstellen. Das PowerShell-Anmeldeinformationsobjekt sollte das Passwort für die Ver- und Entschlüsselung enthalten. Verwenden Sie -Credential nicht gleichzeitig mit dem Parameter -NoEncryption. Beispiel: $CredObject |
| -NoEncryption (Switch) | Geben Sie an, dass das Sicherungsarchiv eine unverschlüsselte .zip-Datei sein soll. Verwenden Sie -NoEncryption nicht gleichzeitig mit dem Parameter -Credential. |
| -ZipFileName (String) | Der Name für das StoreFront-Konfigurationssicherungsarchiv. Fügen Sie keine Dateierweiterung wie .zip oder .ctxzip hinzu. Die Dateierweiterung wird automatisch hinzugefügt, je nachdem, ob der Parameter -Credential oder -NoEncryption während des Exports angegeben wird. Beispiel: “backup” |
| -Force (Boolean) | Dieser Parameter überschreibt automatisch Sicherungsarchive mit demselben Dateinamen wie vorhandene Sicherungsdateien, die bereits am angegebenen Exportort vorhanden sind. |
Wichtig:
Der in StoreFront 3.5 enthaltene Parameter SiteID wurde in Version 3.6 als veraltet markiert. Es ist nicht mehr erforderlich, die SiteID beim Import anzugeben, da die im Sicherungsarchiv enthaltene SiteID immer verwendet wird. Stellen Sie sicher, dass die SiteID mit der vorhandenen StoreFront-Website übereinstimmt, die bereits in IIS auf dem importierenden Server konfiguriert ist. Konfigurationsimporte von SiteID 1 nach SiteID 2 werden NICHT unterstützt.
Import-STFConfiguration
| Parameter | Beschreibung |
|---|---|
| -ConfigurationZip (String) | Der vollständige Pfad zum Sicherungsarchiv, das Sie importieren möchten. Dies sollte auch die Dateierweiterung enthalten. Verwenden Sie .zip für unverschlüsselte und .ctxzip für verschlüsselte Sicherungsarchive. Beispiel: $env:userprofile\desktop\backup.ctxzip
|
| -Credential (PSCredential Object) | Geben Sie ein Anmeldeinformationsobjekt an, um eine verschlüsselte Sicherung während des Imports zu entschlüsseln. Beispiel: $CredObject
|
| -HostBaseURL (String) | Wenn dieser Parameter enthalten ist, wird die von Ihnen angegebene Host-Basis-URL anstelle der Host-Basis-URL vom exportierenden Server verwendet. Beispiel: https://<importingserver>.example.com
|
Unprotect-STFConfigurationBackup
| Parameter | Beschreibung |
|---|---|
| -TargetFolder (String)
-Credential (PSCredential Object) |
Der Exportpfad zum Sicherungsarchiv. Beispiel: $env:userprofile\desktop
Verwenden Sie diesen Parameter, um eine unverschlüsselte Kopie des verschlüsselten Sicherungsarchivs zu erstellen. Geben Sie das PowerShell-Anmeldeinformationsobjekt an, das das Passwort für die Entschlüsselung enthält. Beispiel: $CredObject
|
| -EncryptedConfigurationZip (String) | Der vollständige Pfad des verschlüsselten Sicherungsarchivs, das Sie entschlüsseln möchten. Sie müssen die Dateierweiterung .ctxzip angeben. Beispiel: $env:userprofile\\desktop\\backup.ctxzip
|
| -OutputFolder (String)
-Force (Boolean) |
Der Pfad, in dem eine unverschlüsselte Kopie (.zip) des verschlüsselten (.ctxzip) Sicherungsarchivs erstellt werden soll. Die ursprüngliche verschlüsselte Kopie der Sicherung bleibt erhalten, damit sie wiederverwendet werden kann. Geben Sie keinen Dateinamen und keine Dateierweiterung für die unverschlüsselte Kopie an. Beispiel: $env:userprofile\desktop
Dieser Parameter überschreibt automatisch Sicherungsarchive mit demselben Dateinamen wie vorhandene Sicherungsdateien, die bereits am angegebenen Exportort vorhanden sind. |
Beispiele für Konfigurationsexport und -import
Importieren der StoreFront-Cmdlets in die aktuelle PowerShell-Sitzung
Öffnen Sie die PowerShell Integrated Scripting Environment (ISE) auf dem StoreFront-Server und führen Sie Folgendes aus:
$env:PSModulePath = [Environment]::GetEnvironmentVariable('PSModulePath','Machine')
$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
<!--NeedCopy-->
Einzelserver-Szenarien
Erstellen einer unverschlüsselten Sicherung einer vorhandenen Konfiguration auf Server A und Wiederherstellen auf derselben Bereitstellung
Exportieren Sie die Konfiguration des Servers, den Sie sichern möchten.
Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -NoEncryption
<!--NeedCopy-->
Kopieren Sie die Datei backup.zip an einen sicheren Ort. Sie können diese Sicherung zur Notfallwiederherstellung verwenden, um den Server in seinen vorherigen Zustand zurückzusetzen.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.zip" -HostBaseURL "https://storefront.example.com"
<!--NeedCopy-->
Sichern einer vorhandenen Konfiguration auf Server A und Wiederherstellen auf Server B, um einen Klon eines vorhandenen Servers zu erstellen
Exportieren Sie die Konfiguration des Servers, den Sie sichern möchten.
Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -NoEncryption
<!--NeedCopy-->
Kopieren Sie die Datei backup.zip auf den Desktop von Server B.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.zip" -HostBaseURL "https://serverB.example.com"
<!--NeedCopy-->
StoreFront ist bereits auf einer benutzerdefinierten Website in IIS bereitgestellt. Wiederherstellen der Konfiguration auf einer anderen benutzerdefinierten Website-Bereitstellung
Server A hat StoreFront an einem benutzerdefinierten Website-Speicherort bereitgestellt, anstatt auf der üblichen Standardwebsite in IIS. Die IIS-SiteID für die zweite in IIS erstellte Website ist 2. Der physische Pfad der StoreFront-Website kann auf einem anderen Nicht-Systemlaufwerk wie d:\ oder auf dem Standard-Systemlaufwerk c:\ liegen, sollte aber eine IIS-SiteID größer als 1 verwenden.
Eine neue Website namens StoreFront wurde in IIS konfiguriert, die SiteID = 2 verwendet. StoreFront ist bereits auf der benutzerdefinierten Website in IIS mit ihrem physischen Pfad auf Laufwerk d:\inetpub\wwwroot bereitgestellt.

- Exportieren Sie eine Kopie der Server A-Konfiguration.
- Konfigurieren Sie auf Server B IIS mit einer neuen Website namens StoreFront, die ebenfalls SiteID 2 verwendet.
-
Importieren Sie die Server A-Konfiguration auf Server B. Die in der Sicherung enthaltene Site-ID wird verwendet und muss mit der Zielwebsite übereinstimmen, auf die Sie die StoreFront-Konfiguration importieren möchten.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -HostBaseURL "https://serverB.example.com" <!--NeedCopy-->
Servergruppen-Szenarien
Szenario 1: Sichern einer vorhandenen Servergruppenkonfiguration und späteres Wiederherstellen auf derselben Servergruppenbereitstellung
Eine frühere Konfigurationssicherung wurde erstellt, als nur zwei StoreFront-Server, 2012R2-A und 2012R2-B, Mitglieder der Servergruppe waren. Im Sicherungsarchiv befindet sich ein Datensatz der CitrixClusterMembership zum Zeitpunkt der Sicherung, der nur die beiden ursprünglichen Server 2012R2-A und 2012R2-B enthält. Die StoreFront-Servergruppenbereitstellung hat sich seit der ursprünglichen Sicherung aufgrund der Geschäftsanforderungen vergrößert, sodass ein zusätzlicher Knoten 2012R2-C zur Servergruppe hinzugefügt wurde. Die zugrunde liegende StoreFront-Konfiguration der in der Sicherung enthaltenen Servergruppe hat sich nicht geändert. Die aktuelle CitrixClusterMembership von drei Servern muss beibehalten werden, auch wenn eine alte Sicherung, die nur die beiden ursprünglichen Servergruppenknoten enthält, importiert wird. Während des Imports wird die aktuelle Cluster-Mitgliedschaft beibehalten und dann zurückgeschrieben, sobald die Konfiguration erfolgreich auf den primären Server importiert wurde. Der Import bewahrt auch die aktuelle CitrixClusterMembership, wenn Servergruppenknoten seit der ursprünglichen Sicherung aus der Servergruppe entfernt wurden.
-
Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.

-
Später fügen Sie der vorhandenen Servergruppe einen zusätzlichen Server, 2012R2-C, hinzu.

-
Die Konfiguration der Servergruppe muss auf einen bekannten, zuvor funktionierenden Zustand zurückgesetzt werden. StoreFront sichert die aktuelle CitrixClusterMembership von drei Servern während des Importvorgangs und stellt sie nach erfolgreichem Import wieder her.
-
Importieren Sie die Konfiguration der Servergruppe 1 zurück auf den Knoten 2012R2-A.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -HostBaseURL "https://servergroup1.example.com" <!--NeedCopy--> -
Verbreiten Sie die neu importierte Konfiguration auf die gesamte Servergruppe, damit alle Server nach dem Import eine konsistente Konfiguration haben.
Szenario 2: Sichern einer vorhandenen Konfiguration von Servergruppe 1 und Verwenden dieser zur Erstellung einer neuen Servergruppe auf einer anderen Werksstandardinstallation. Sie können dann weitere neue Servergruppenmitglieder zum neuen primären Server hinzufügen
Servergruppe 2 wird mit zwei neuen Servern, 2012R2-C und 2012R2-D, erstellt. Die Konfiguration der Servergruppe 2 basiert auf der Konfiguration einer vorhandenen Bereitstellung, Servergruppe 1, die ebenfalls zwei Server 2012R2-A und 2012R2-B enthält. Die im Sicherungsarchiv enthaltene CitrixClusterMembership wird beim Erstellen einer neuen Servergruppe nicht verwendet. Die aktuelle CitrixClusterMembership wird immer gesichert und nach erfolgreichem Import wiederhergestellt. Beim Erstellen einer neuen Bereitstellung unter Verwendung einer importierten Konfiguration enthält die Sicherheitsgruppe CitrixClusterMembership nur den importierenden Server, bis weitere Server der neuen Gruppe beitreten. Servergruppe 2 ist eine neue Bereitstellung und soll neben Servergruppe 1 koexistieren. Geben Sie den Parameter -HostBaseURL an. Servergruppe 2 wird unter Verwendung einer neuen Werksstandardinstallation von StoreFront erstellt.
-
Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.
-
Importieren Sie die Konfiguration der Servergruppe 1 auf den Knoten 2012R2-C, der der primäre Server zur Verwaltung der neu erstellten Servergruppe 2 sein wird.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -HostBaseURL "https://servergroup2.example.com" <!--NeedCopy--> -
Fügen Sie alle zusätzlichen Server hinzu, die Teil der neuen Servergruppenbereitstellung 2 sein werden. Die Verbreitung der neu importierten Konfiguration von Servergruppe 1 auf alle neuen Mitglieder von Servergruppe 2 erfolgt automatisch, da dies Teil des normalen Beitrittsprozesses ist, wenn ein neuer Server hinzugefügt wird.
Szenario 3: Sichern einer vorhandenen Konfiguration von Servergruppe A und Verwenden dieser zum Überschreiben der vorhandenen Konfiguration von Servergruppe B
Servergruppe 1 und Servergruppe 2 existieren bereits in zwei separaten Rechenzentren. Viele StoreFront-Konfigurationsänderungen werden an Servergruppe 1 vorgenommen, die Sie auf Servergruppe 2 im anderen Rechenzentrum anwenden sollten. Sie können die Änderungen von Servergruppe 1 auf Servergruppe 2 übertragen. Verwenden Sie die CitrixClusterMembership im Sicherungsarchiv auf Servergruppe 2 nicht. Geben Sie den Parameter -HostBaseURL während des Imports an, da die Host-Basis-URL von Servergruppe 2 nicht auf denselben FQDN geändert werden sollte, der derzeit von Servergruppe 1 verwendet wird. Servergruppe 2 ist eine vorhandene Bereitstellung.
-
Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.
-
Importieren Sie die Konfiguration der Servergruppe 1 auf die Werksstandardinstallation auf Knoten 2012R2-C, der der primäre Server der neuen Servergruppe 2 sein wird.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.zip" -NoEncryption -HostBaseURL "https://servergroup2.example.com" <!--NeedCopy-->
Erstellen einer verschlüsselten Sicherung Ihrer Serverkonfiguration
Ein PowerShell-Anmeldeinformationsobjekt besteht sowohl aus einem Windows-Kontobenutzernamen als auch aus einem Passwort. PowerShell-Anmeldeinformationsobjekte stellen sicher, dass Ihr Passwort im Speicher geschützt bleibt.
Hinweis:
Um ein Konfigurationssicherungsarchiv zu verschlüsseln, benötigen Sie nur das Passwort, um die Ver- und Entschlüsselung durchzuführen. Der im Anmeldeinformationsobjekt gespeicherte Benutzername wird nicht verwendet. Sie müssen ein Anmeldeinformationsobjekt erstellen, das dasselbe Passwort in der PowerShell-Sitzung enthält, die sowohl auf dem exportierenden als auch auf dem importierenden Server verwendet wird. Innerhalb des Anmeldeinformationsobjekts können Sie jeden Benutzer angeben.
PowerShell erfordert, dass Sie einen Benutzer angeben, wenn Sie ein neues Anmeldeinformationsobjekt erstellen. Dieses Beispielcode ruft den aktuell angemeldeten Windows-Benutzer zur Vereinfachung ab.
Erstellen Sie ein PowerShell-Anmeldeinformationsobjekt in Ihrer PowerShell-Sitzung auf dem exportierenden Server.
$User = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
$Password = "Pa55w0rd"
$Password = $Password | ConvertTo-SecureString -asPlainText -Force
$CredObject = New-Object System.Management.Automation.PSCredential($User,$Password)
<!--NeedCopy-->
Exportieren Sie die Konfiguration nach backup.ctxzip, einer verschlüsselten Zip-Datei.
Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -Credential $CredObject
<!--NeedCopy-->
Erstellen Sie ein identisches PowerShell-Anmeldeinformationsobjekt in Ihrer PowerShell-Sitzung auf dem importierenden Server.
Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://storefront.example.com"
<!--NeedCopy-->
Entschlüsseln eines vorhandenen verschlüsselten Sicherungsarchivs
$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
<!--NeedCopy-->