Product Documentation

Tolérance des pannes de la base de données

Oct 21, 2016

Ce document présente les différentes solutions qui permettent d'améliorer le niveau de tolérance aux pannes dans votre déploiement afin de garantir la disponibilité totale des bureaux et des applications stratégiques.

Remarque : pour plus d'informations sur la configuration du Virtual Delivery Agent (VDA) pour fonctionner en mode haute disponibilité, consultez la section Assurez l'accès au bureau et à l'application si les Delivery Controllers échouent.

Configurer la tolérance de pannes des bases de données

Toutes les informations sont stockées dans la base de données de configuration du site ; les Contrôleurs communiquent uniquement avec la base de données et non l'un avec l'autre. Il est possible de déconnecter un Contrôleur ou de le mettre hors tension sans affecter les autres Contrôleurs du site. Cela signifie cependant que la base de données de configuration de site présente un point d'échec unique. Si le serveur de base de données échoue, les connexions existantes aux bureaux virtuels continueront de fonctionner jusqu'à que l'utilisateur ferme sa session ou se déconnecte ; si le serveur de la base de données est indisponible, aucune nouvelle connexion ne peut être établie.

Citrix vous recommande de sauvegarder régulièrement la base de données afin de pouvoir la restaurer en cas de défaillance du serveur de base de données. En outre, il existe trois solutions de haute disponibilité à considérer pour garantir le basculement automatique :

  • Mise en miroir SQL : il s'agit de la solution recommandée. La mise en miroir de la base de données garantit qu'en cas d'indisponibilité soudaine du serveur de base de données actif, le basculement automatique se produit au bout de quelques secondes seulement, évitant généralement toute gêne pour les utilisateurs. Cependant, cette méthode est plus coûteuse que d'autres solutions car les licences complètes de SQL Server sont requises sur chaque serveur de base de données ; vous ne pouvez pas utiliser SQL Server édition Express pour un environnement de mise en miroir.
  • À l'aide des fonctionnalités de haute disponibilité de l'hyperviseur : avec cette méthode, vous déployez la base de données en tant que machine virtuelle et utilisez les fonctionnalités de haute disponibilité de votre hyperviseur. Cette solution est moins coûteuse que la mise en miroir du fait qu'elle utilise votre logiciel hôte et que vous pouvez également utiliser SQL Express. Cependant, le processus de basculement automatique est plus lent car il faut un certain temps pour qu'une nouvelle machine démarre pour la base de données, avec le risque d'interrompre le service fourni aux utilisateurs.
  • Mise en cluster SQL : la technologie de mise en cluster SQL de Microsoft peut être utilisée pour permettre à un serveur d'assurer automatiquement la reprise des tâches et des responsabilités d'un autre serveur en échec. Toutefois, cette solution est plus complexe à mettre en place et le basculement automatique est généralement plus lent qu'avec les autres méthodes, comme la mise en miroir SQL.
  • Les Groupes de disponibilité AlwaysOn est une solution à haute disponibilité et reprise après sinistre introduites dans SQL Server 2012 pour vous permettre d'optimiser la disponibilité pour une ou plusieurs bases de données utilisateur. Les Groupes de disponibilité AlwaysOn nécessitent que les instances SQL Server résident les nœuds WSFC (Windows Server Failover Clustering). Pour de plus amples informations, consultez les groupes de disponibilité AlwaysOn (SQL Server).

Pour configurer un site afin qu'il utilise une base de données mise en miroir

Le processus de configuration implique des tâches réalisées par un administrateur en utilisant les outils d'administration SQL Server avant de créer le site Citrix. Les tâches restantes se produisent lorsque l'administrateur Citrix exécute l'Assistant Création de site.

Un environnement miroir nécessite au moins deux machines SQL Server (par exemple, SQL Server A et SQL Server B). SQL Server édition Express ne peut être utilisé comme un principe ou un miroir.

À l'aide des outils d'administration SQL Server de Microsoft, configurez les bases de données SQL Server :

  1. Installez le logiciel SQL Server sur SQL Server A et SQL Server B.
  2. Dans SQL Server A, créez la base de données destinée à être utilisée comme principe (par exemple, monMiroirDeBasededonnées).

    Assurez-vous que la base de données utilise le modèle de récupération complet et non le modèle simple. (Le modèle simple est configuré par défaut, mais empêche le journal des transactions d'être sauvegardé.)

    Utilisez la séquence de classement Latin1_General_CI_AS_KS.

    Activez un instantané en lecture validée comme décrit dans la section Comment activer un instantané en lecture validée dans XenDesktop. Il est important d'activer ceci avant mise en miroir de la base de données pour éviter les erreurs.

  3. Dans SQL Server A, sauvegardez la base de données dans un fichier et copiez-le sur SQL Server B.
  4. Dans SQL Server B, restaurez le fichier de sauvegarde vers ce serveur (SQL Server B).
  5. Dans SQL Server A, démarrez la mise en miroir.

L'étape suivante dépend du fait que l'administrateur Citrix (c'est-à-dire, la personne exécutant l'Assistant Création de site) dispose des privilèges de base de données complets :

  • Si l'administrateur Citrix dispose des privilèges de base de données (la même personne est l'administrateur de base de données et l'administrateur Citrix), Studio réalise tout ce dont vous avez besoin :
    1. L'administrateur Citrix utilise Studio pour créer un site, indiquant l'adresse du de la base de données SQL Server créée précédemment et son nom (myDatabaseMirrorForXD).
    2. Les scripts de base de données sont automatiquement appliqués et les bases de données de principe et de mise en miroir sont définies.
  • Si l'administrateur Citrix ne dispose pas des privilèges de base de données, l'administrateur Citrix doit obtenir de l’aide à partir d'un administrateur de base de données :
    1. L'administrateur Citrix utilise Studio pour créer un site, indiquant l'adresse du SQL Server créé précédemment et son nom (myDatabaseMirrorForXD).
    2. Dans l'Assistant de création de site, le fait d'appuyer sur Générer le script génère un script miroir et un script principal. L'administrateur Citrix offre ces scripts à l'administrateur de base de données, qui applique les scripts (le script miroir doit être appliqué en premier). L'administrateur de base de données doit avertir l'administrateur Citrix lorsque cette tâche est terminée.
    3. De retour dans Studio, l'administrateur Citrix peut maintenant continuer et terminer l'assistant Créer un site. Les bases de données de principe et de mise en miroir sont définies.

Pour vérifier la mise en miroir après la création du site, exécutez le cmdlet PowerShell get-configdbconnection pour vous assurer que le partenaire de basculement a été défini dans la chaîne de connexion pour le miroir.

Si vous ajoutez, déplacez ou supprimez ultérieurement un Delivery Controller dans un environnement de base de données mise en miroir, consultez Ajouter, supprimer ou déplacer des contrôleurs à des fins de considération.