StoreFront

Exportieren und Importieren der StoreFront-Konfiguration

Hinweis:

Sie können nur StoreFront-Konfigurationen importieren, die genau dieselbe StoreFront-Version wie die Ziel-StoreFront-Installation aufweisen. Jedes kumulative Update wird für diese Einschränkung als eine andere Produktversion betrachtet.

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 Export und Import von Konfigurationen 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.
  • Sicherung VOR dem Upgrade von StoreFront zur Notfallwiederherstellung.
  • Klonen bestehender 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.

Aspekte, die beim Exportieren und Importieren einer StoreFront-Konfiguration zu beachten sind

  • Verwenden Sie derzeit von Citrix® veröffentlichte Authentifizierungs-SDK-Beispiele, wie z. B. 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 Export- und Import-PowerShell-Cmdlets 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 für die Verschlüsselung und Entschlüsselung zu verwendende Kennwort 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 Sicherungsarchiv der StoreFront-Konfiguration. 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 Parameter SiteID, der in StoreFront 3.5 enthalten war, wurde in Version 3.6 als veraltet markiert. Es ist nicht mehr erforderlich, die SiteID beim Import anzugeben, da immer die im Sicherungsarchiv enthaltene SiteID 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 zu 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 für die Entschlüsselung zu verwendende Kennwort 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 zum Erstellen einer unverschlüsselten Kopie (.zip) des verschlüsselten (.ctxzip) Sicherungsarchivs. Die ursprüngliche verschlüsselte Kopie der Sicherung wird beibehalten, 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 Sicherungsarchive mit demselben Dateinamen automatisch, wenn bereits vorhandene Sicherungsdateien am angegebenen Exportort vorhanden sind.

Beispiele für den Export und Import von Konfigurationen

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-->

Szenarien mit einem einzelnen Server

Erstellen Sie eine unverschlüsselte Sicherung einer vorhandenen Konfiguration auf Server A und stellen Sie sie auf derselben Bereitstellung wieder her

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 für die 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 Sie eine vorhandene Konfiguration auf Server A und stellen Sie sie auf Server B wieder her, 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. Stellen Sie die Konfiguration auf einer anderen benutzerdefinierten Website-Bereitstellung wieder her

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\wwwrooot bereitgestellt.

Screenshot des Fensters „IIS-Website hinzufügen“

  1. Exportieren Sie eine Kopie der Server-A-Konfiguration.
  2. Konfigurieren Sie auf Server B IIS mit einer neuen Website namens StoreFront, die ebenfalls SiteID 2 verwendet.
  3. 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ätere Wiederherstellung 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 ist seit der ursprünglichen Sicherung aufgrund der Geschäftsanforderungen größer geworden, sodass ein zusätzlicher Knoten 2012R2-C zur Servergruppe hinzugefügt wurde. Die zugrunde liegende StoreFront-Konfiguration der Servergruppe in der Sicherung hat sich nicht geändert. Die aktuelle CitrixClusterMembership von drei Servern muss beibehalten werden, auch wenn eine alte Sicherung importiert wird, die nur die beiden ursprünglichen Servergruppenknoten enthält. 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.

  1. Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.

    Screenshot der CitrixClusterMembersProperties in Gruppe 1(/de-de/storefront/2203-ltsr/media/cluster-member1.png)

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

    Screenshot der CitrixClusterMembersProperties in Gruppe 2(/de-de/storefront/2203-ltsr/media/cluster-member2.png)

  3. Die Konfiguration der Servergruppe muss auf einen bekannten, zuvor funktionierenden Zustand wiederhergestellt werden. StoreFront sichert die aktuelle CitrixClusterMembership von drei Servern während des Importvorgangs und stellt sie dann wieder her, nachdem der Import erfolgreich war.

  4. 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-->
    
  5. Verbreiten Sie die neu importierte Konfiguration auf die gesamte Servergruppe, sodass alle Server nach dem Import eine konsistente Konfiguration aufweisen.

Szenario 2: Sichern einer vorhandenen Konfiguration von Servergruppe 1 und diese verwenden, um eine neue Servergruppe auf einer anderen werkseitigen Standardinstallation zu erstellen. Anschließend können Sie dem neuen primären Server weitere neue Servergruppenmitglieder 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 mithilfe 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 existieren. Geben Sie den Parameter -HostBaseURL an. Servergruppe 2 wird mithilfe einer neuen werkseitigen Standard-StoreFront-Installation erstellt.

  1. Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.

  2. 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-->
    
  3. 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 an alle neuen Mitglieder der Servergruppe 2 erfolgt automatisch, da dies Teil des normalen Beitrittsprozesses ist, wenn ein neuer Server hinzugefügt wird.

Szenario 3: Sichern einer bestehenden Konfiguration von Servergruppe A und Verwenden dieser Sicherung zum Überschreiben der bestehenden 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 in denselben FQDN geändert werden sollte, der derzeit von Servergruppe 1 verwendet wird. Servergruppe 2 ist eine bestehende Bereitstellung.

  1. Exportieren Sie die Konfiguration der Servergruppe 1 von 2012R2-A, dem primären Server, der zur Verwaltung der gesamten Servergruppe verwendet wird.

  2. Importieren Sie die Konfiguration der Servergruppe 1 in die Standardinstallation 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 Sie eine verschlüsselte Sicherung Ihrer Serverkonfiguration

Ein PowerShell-Anmeldeinformationsobjekt umfasst sowohl einen Windows-Kontobenutzernamen als auch ein Kennwort. PowerShell-Anmeldeinformationsobjekte stellen sicher, dass Ihr Kennwort im Speicher geschützt bleibt.

Hinweis:

Um ein Konfigurationssicherungsarchiv zu verschlüsseln, benötigen Sie nur das Kennwort, um die Verschlüsselung und Entschlüsselung durchzuführen. Der im Anmeldeinformationsobjekt gespeicherte Benutzername wird nicht verwendet. Sie müssen ein Anmeldeinformationsobjekt erstellen, das dasselbe Kennwort enthält, innerhalb der PowerShell-Sitzung, die sowohl auf den exportierenden als auch auf den importierenden Servern 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 der Einfachheit halber den aktuell angemeldeten Windows-Benutzer ab.

Erstellen Sie ein PowerShell-Anmeldeinformationsobjekt innerhalb 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, welches eine verschlüsselte Zip-Datei ist.

Export-STFConfiguration -targetFolder "$env:userprofile\desktop\" -zipFileName "backup" -Credential $CredObject
<!--NeedCopy-->

Erstellen Sie ein identisches PowerShell-Anmeldeinformationsobjekt innerhalb Ihrer PowerShell-Sitzung auf dem importierenden Server.

Import-STFConfiguration -configurationZip "$env:userprofile\desktop\backup.ctxzip" -Credential $CredObject -HostBaseURL "https://storefront.example.com"
<!--NeedCopy-->

Schutz eines bestehenden verschlüsselten Sicherungsarchivs aufheben

$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-->
Exportieren und Importieren der StoreFront-Konfiguration