Gérer les données d’abonnement d’un magasin

Gérer les données d’abonnement d’un magasin de données à l’aide d’applets de commande PowerShell.

Remarque :

Utilisez la console de gestion StoreFront ou le PowerShell pour gérer StoreFront. N’utilisez pas les deux méthodes en même temps. Fermez toujours la console d’administration StoreFront avant d’utiliser PowerShell pour modifier votre configuration StoreFront. Citrix vous recommande également d’effectuer une sauvegarde de vos données d’abonnement existantes avant d’apporter des modifications de façon à pouvoir restaurer l’état précédent.

Effacer les données d’abonnement

Un dossier et un magasin de données contenant les données d’abonnement existent pour chaque magasin dans votre déploiement.

  1. Arrêtez le service Citrix Subscriptions Store sur le serveur StoreFront. Si le service Citrix Subscriptions Store est en cours d’exécution, il n’est pas possible de supprimer les données d’abonnement de vos magasins.
  2. Localisez le dossier du magasin d’abonnement sur le serveur StoreFront : C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Citrix\SubscriptionsStore\1__Citrix_<StoreName>
  3. Supprimez le contenu du dossier du magasin d’abonnement, mais pas le dossier.
  4. Redémarrez le service Citrix Subscriptions Store sur le serveur StoreFront.

Dans StoreFront 3.5 ou version ultérieure, vous pouvez utiliser le script PowerShell suivant pour effacer les données d’abonnements d’un magasin. Exécutez cette fonction PowerShell en tant qu’administrateur autorisé à arrêter ou démarrer des services et supprimer des fichiers. Cette fonction PowerShell donne le même résultat que les étapes manuelles décrites ci-dessus.

Pour exécuter les applets de commande avec succès, le service Citrix Subscriptions Store doit être exécuté sur le serveur.

function Remove-SubscriptionData

{
        [CmdletBinding()]

        [Parameter(Mandatory=$False)][String]$Store = "Store"

        $SubsService = "Citrix Subscriptions Store"

        # Path to Subscription Data in StoreFront version 2.6 or later

        $SubsPath = "C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Citrix\SubscriptionsStore\1__Citrix_$Store*"

        Stop-Service -displayname $SubsService

        Remove-Item $SubsPath -Force -Verbose

        Start-Service -displayname $SubsService

        Get-Service -displayname $SubsService
}

    Remove-SubscriptionData -Store "YourStore"

Exporter les données d’abonnement

Vous pouvez obtenir une copie de sauvegarde des données d’abonnement d’un magasin sous la forme d’un fichier .txt séparé par des onglets à l’aide de l’applet de commande PowerShell suivante.

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<votremagasin>"

Export-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

Si vous gérez un déploiement contenant plusieurs serveurs, vous pouvez exécuter cette applet de commande PowerShell sur n’importe quel serveur dans le groupe de serveurs StoreFront. Chaque serveur dans le groupe de serveurs conserve une copie synchronisée identique des données d’abonnement de ses homologues. Si vous pensez que vous rencontrez des problèmes avec la synchronisation des abonnements entre les serveurs StoreFront, exportez les données de tous les serveurs du groupe et comparez-les pour observer les différences.

Restaurer les données d’abonnement

Utilisez Restore-STFStoreSubscriptions pour remplacer vos données d’abonnement existantes. Vous pouvez restaurer les données d’abonnement d’un magasin à l’aide du fichier .txt de sauvegarde séparé par des onglets que vous avez créé précédemment à l’aide de Export-STFStoreSubscriptions.

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<votremagasin>"

Restore-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

Pour plus d’informations sur Restore-STFStoreSubscriptions, consultez https://developer-docs.citrix.com/projects/storefront-powershell-sdk/en/latest/Restore-STFStoreSubscriptions/

Restaurer des données sur un serveur StoreFront unique

Dans un déploiement ne contenant qu’un seul serveur, il n’est pas nécessaire d’arrêter le service Subscriptions Store. De même, il n’est pas nécessaire d’effacer les données d’abonnement existantes avant la restauration des données d’abonnement.

Restaurer des données sur un groupe de serveurs StoreFront

Pour restaurer les données d’abonnement d’un groupe de serveurs, les étapes suivantes sont requises.

Exemple de déploiement d’un groupe de serveurs contenant trois serveurs StoreFront.

  • StoreFrontA
  • StoreFrontB
  • StoreFrontC
  1. Sauvegardez les données d’abonnement existantes de l’un des trois serveurs.
  2. Arrêtez le service Subscriptions Store sur les serveurs StoreFrontB et C. Cette action empêche les serveurs d’envoyer ou de recevoir des données d’abonnement lors de la mise à jour de StoreFrontA.
  3. Effacez les données d’abonnement des serveurs StoreFrontB et C. Cette action empêche toute incohérence entre les données d’abonnement restaurées.
  4. Restaurez les données sur StoreFrontA à l’aide de l’applet de commande Restore-STFStoreSubscriptions. Il n’est pas nécessaire d’arrêter le service Subscriptions Store, ou d’effacer les données d’abonnement sur StoreFrontA (elles sont remplacées lors de l’opération de restauration).
  5. Redémarrez le service Citrix Subscriptions Store sur les serveurs StoreFrontB et StoreFrontC. Les serveurs peuvent recevoir ensuite une copie des données de StoreFrontA.
  6. Attendez que les données soient synchronisées entre tous les serveurs. La durée de synchronisation dépend du nombre d’enregistrements sur StoreFrontA. Si tous les serveurs sont sur une connexion réseau locale, la synchronisation se produit généralement rapidement. La synchronisation des abonnements via une connexion WAN peut prendre plus de temps.
  7. Exportez les données à partir de StoreFrontB et C pour confirmer que la synchronisation est terminée, ou affichez les compteurs de Store Subscription.

Importer les données d’abonnement

Utilisez Import-STFStoreSubscriptions lorsqu’il n’existe aucune donnée d’abonnement pour le magasin. Cette applet de commande permet également de transférer les données d’abonnement d’un magasin vers un autre ou si les données d’abonnement sont importées, vers les serveurs StoreFront nouvellement provisionnés.

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<votremagasin>"

Import-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

Pour plus d’informations sur Import-STFStoreSubscriptions, consultez https://developer-docs.citrix.com/projects/storefront-powershell-sdk/en/latest/Import-STFStoreSubscriptions/

Détails du fichier de données de l’abonnement

Le fichier de données d’abonnement est un fichier texte contenant une ligne par abonnement utilisateur. Chaque ligne est une séquence de valeurs séparées par des tabulations :

<user-identifier> <resource-id> <subscription-id> <subscription-status> <property-name> <property-value> <property-name> <property-value> ...

où :

  • <user-identifier> - Obligatoire. Séquence de caractères identifiant l’utilisateur. Il s’agit de l’identificateur de sécurité Windows de l’utilisateur.
  • <resource-id> - Obligatoire. Séquence de caractères identifiant la ressource à laquelle vous avez souscrit.
  • <subscription-id> - Obligatoire. Séquence de caractères identifiant de façon unique l’abonnement. Cette valeur n’est pas utilisée (mais, une valeur doit être présente dans le fichier de données).
  • <subscription-status> - Obligatoire. État de l’abonnement : abonné ou non abonné.
  • <property-name> et <property-value> - Facultatif. Séquence de zéro ou de plusieurs paires de nom/valeur de propriété. Ces dernières représentent les propriétés associées à l’abonnement par un client StoreFront (généralement une application Citrix Workspace). Propriété avec plusieurs valeurs qui est représentée par plusieurs paires de nom/valeur avec le même nom (par exemple, « … MyProp A MyProp B … » représente la propriété MyProp avec des valeurs A, B).

Exemple

S-0-0-00-0000000000-0000000000-0000000000-0000 XenApp.Excel 21EC2020-3AEA-4069-A2DD-08002B30309D Subscribed dazzle:position 1

Taille des données d’abonnement sur le disque du serveur StoreFront

Taille des données d'abonnement sur le disque du serveur StoreFront

Taille des fichiers .txt d’importation et d’exportation

Taille des fichiers .txt d'importation et d'exportation

Compteurs d’abonnement du magasin

Vous pouvez utiliser les compteurs de l’Analyseur de performances Microsoft Windows (Démarrer > Exécuter > perfmon) afin d’afficher, par exemple, le nombre total d’enregistrements d’abonnements sur le serveur ou le nombre d’enregistrements synchronisés entre les groupes de serveurs StoreFront.

Afficher les compteurs d’abonnements à l’aide de PowerShell

Get-Counter -Counter "\Citrix Subscription Store(1__citrix_store)\Subscription Entries Count (including unpurged deleted records)"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Subscriptions Store Synchronizing"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Number Subscriptions Synchronized"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Number Subscriptions Transferred"