Configurer une redondance géographique avec la réplication SQL Server

Important

Si vous voulez créer une batterie AD FS et utiliser SQL Server pour stocker vos données de configuration, vous pouvez utiliser SQL Server 2008 ou des versions ultérieures.

Si vous utilisez SQL Server comme base de données de configuration AD FS, vous pouvez configurer la géo-redondance pour votre batterie de serveurs AD FS à l’aide de la réplication SQL Server. La géo-redondance réplique les données entre deux sites géographiquement distants, afin que les applications puissent basculer d’un site à un autre. Ainsi, en cas de défaillance d’un site, vous pouvez toujours disposer de toutes les données de configuration sur le deuxième site. Pour plus d’informations, consultez la section « Redondance géographique de SQL Server » dans Batterie de serveurs de fédération à l’aide de SQL Server.

Prérequis

Installez et configurez une batterie de serveurs SQL Server. Pour plus d’informations, consultez https://technet.microsoft.com/evalcenter/hh225126.aspx. Sur le SQL Server initial, assurez-vous que le service SQL Server Agent est en cours d’exécution et défini sur le démarrage automatique.

Créer le deuxième SQL Server (réplica) pour la géo-redondance

  1. Installez SQL Server (pour plus d'informations, voir https://technet.microsoft.com/evalcenter/hh225126.aspx.) Copiez les fichiers de script CreateDB.sql et SetPermissions.sql obtenus sur le serveur SQL réplica.

  2. Vérifiez que le service SQL Server Agent est en cours d'exécution et défini sur démarrage automatique

  3. Exécutez Export-AdfsDeploymentSQLScript sur le nœud AD FS principal pour créer des fichiers CreateDB.sql et SetPermissions.sql. Par exemple, PS:\>Export-AdfsDeploymentSQLScript -DestinationFolder . –ServiceAccountName CONTOSO\gmsa1$. Screenshot that shows how to run the Export-AdfsDeploymentSQLScript on the primary AD FS node.

  4. Copiez les scripts sur votre serveur secondaire. Ouvrez le script CreateDB.sql dans SQL Management Studio et cliquez sur Exécuter. Screenshot that shows the open the CreateDB.sql script in SQL Management Studio.

  5. Ouvrez le script SetPermissions.sql dans SQL Management Studio et cliquez sur Exécuter. Screenshot that shows the open the SetPermissions.sql script in SQL Management Studio.

Note

Vous pouvez également utiliser ce qui suit à partir de la ligne de commande.

c:\>sqlcmd –i CreateDB.sql

c:\>sqlcmd –i SetPermissions.sql

Créer des paramètres d’éditeur sur le SQL Server initial

  1. Dans SQL Server Management Studio, sous Réplication, cliquez avec le bouton droit sur Publications locales et choisissez Nouvelle publication...Screenshot that shows the New Publication menu option.

  2. Dans l’écran Assistant Nouvelle publication, cliquez sur Suivant.
    Screenshot that shows the New Publication Wizard screen.

  3. Sur la page Distributeur, choisissez serveur local comme distributeur, puis cliquez sur Suivant. Screenshot that that shows where to choose the local server as distributor.

  4. Dans la page du dossier Clichés instantanés, entrez \\SQL1\repldata à la place du dossier par défaut. (REMARQUE : vous devrez peut-être créer ce partage vous-même). Screenshot that shows where to enter the path to the default Snapshot folder.

  5. Choisissez AdfsConfigurationV3 comme base de données de publication, puis cliquez sur Suivant. Screenshot that shows where to choose AdfsConfigurationV3 as the publication database.

  6. Dans Type de publication, sélectionnez Fusionner publication et cliquez sur Suivant. Screenshot that shows where

  7. Dans Types d’abonnés, choisissez SQL Server 2008 ou version ultérieure, puis cliquez sur Suivant. Screenshot that shows where to choose SQL Server 2008 or later.

  8. Dans la page Articles, sélectionnez le nœud Tableaux pour sélectionner tous les tableaux, puis décochez le tableau SyncProperties (celui-ci ne doit pas être répliquée)
    Screenshot that shows where to clear the SyncProperties (IdentityServerPolicy) check box.

  9. Dans la page Articles, sélectionnez le nœud Fonctions définies par l’utilisateur pour sélectionner toutes les fonctions définies par l’utilisateur, puis cliquez sur Suivant. Screenshot that shows where to select the User Defined Functions check box.

  10. Sur la page Problèmes d’article, cliquez sur Suivant. Screnshot that shows the Article Issues screen.

  11. Dans la page Filtrer les lignes de la table, cliquez sur Suivant. Screenshot that shows the Filter Table Rows screen.

  12. Sur la page Agent d'instantané, choisissez les valeurs par défaut Immédiat et 14 jours, cliquez sur Suivant. Screenshot that shows the Snapshot Agent screen.
    Vous devrez peut-être créer un compte de domaine pour l’agent SQL. Suivez les étapes décrites dans Configurer la connexion SQL pour le compte de domaine CONTOSO\sqlagent pour créer une connexion SQL pour ce nouvel utilisateur AD et attribuer des autorisations spécifiques.

  13. Dans la page Sécurité de l’agent, cliquez sur Paramètres de sécurité et entrez le nom d’utilisateur/mot de passe d’un compte de domaine (et non un compte GMSA) créé pour l’agent SQL, puis cliquez sur OK. Cliquez sur Suivant. Screenshot that shows where to enter the username and password for the domain account.

  14. Sur la page Actions de l’Assistant, cliquez sur Suivant. Screenshot that shows the Wizard Actions screen.

  15. Sur la page Terminer l’Assistant, entrez un nom pour votre publication, puis cliquez sur Terminer. Screenshot that shows where you enter a name for your publication.

  16. Une fois la publication créée, vous devez voir l’état de réussite. Cliquez sur Fermer. Screenshot that shows the successful completion of the publication.

  17. De retour dans SQL Server Management Studio, cliquez avec le bouton droit sur la nouvelle publication, puis cliquez sur Lancer le moniteur de réplication. Screenshot that shows the Launch Replication Monitor menu option.

Créer des paramètres d’abonnement sur le SQL Server réplica

Vérifiez que vous avez créé les paramètres d’éditeur sur le SQL Server initial, comme décrit ci-dessus, puis effectuez la procédure suivante :

  1. Dans SQL Server réplica, depuis SQL Server Management Studio, sous Réplication, cliquez avec le bouton droit sur Abonnements locaux et choisissez Nouvel abonnement.... Screenshot that shows where to select New Subscription.

  2. Dans la page Assistant de nouvel abonnement, cliquez sur Suivant. Screenshot that shows the New Subscription Wizard screen.

  3. Sur la page Publication, sélectionnez l’éditeur dans la liste déroulante. Développez AdfsConfigurationV3 , sélectionnez le nom de la publication créée ci-dessus, puis cliquez sur Suivant. Screenshot that shows where to expand AdfsConfigurationV3 and select the name of the name of the publication that you created.

  4. Sur la page Emplacement de l'Agent de fusion, sélectionnez Exécuter chaque agent sur son Abonné (abonnements par extraction de données), puis cliquez sur Suivant. Screenshot that shows the Run each agent at its Subscriber (pull subscriptions) option.
    Ceci, ainsi que le type d’abonnement ci-dessous, détermine la logique de résolution des conflits. Pour plus d’informations, consulter Détecter et résoudre des conflits de réplication de fusion.

  5. Sur la page Abonnés, sélectionnez AdfsConfigurationV3 comme base de données des abonnés, puis cliquez sur Suivant. Screenshot that shows the Subscribers screen.

  6. Sur la page Sécurité d’agent de fusion, cliquez sur ... et entrez le nom d’utilisateur et le mot de passe d’un compte de domaine (et non un GMSA) créé pour l’agent SQL à l’aide de la zone de points de suspension, puis cliquez sur Suivant. Screenshot that shows the Merge Agent Security screen.

  7. Dans Planification de synchronisation, choisissez Exécuter en continu et cliquez sur Suivant. Screenshot that shows where to select Run continuously.

  8. Dans Initialiser les abonnements, cliquez sur Suivant. Screenshot that shows the Initialize Subscriptions screen.

  9. Dans Type d’abonnement, choisissez Client et cliquez sur Suivant.

    Les implications de ceci sont documentées ici et ici. Essentiellement, nous prenons la résolution des conflits simple « le premier à l’éditeur gagne » et nous n’avons pas besoin de republier vers d’autres abonnés. Screenshot that shows the Subscription Type screen.

  10. Dans la page Actions de l’Assistant, vérifiez que Créer l’abonnement est cochée, puis cliquez sur Suivant. Screenshot that shows where verify that the Create the subscription option is selected.

  11. Sur la page Terminer l'Assistant, cliquez sur Terminer. Screenshot that shows the Complete the Wizard screen.

  12. Une fois que le processus de création de l’abonnement est bien terminé, vous devriez voir l’état de réussite. Cliquez sur Fermer. Set up Geographic Redundancy

Vérifier le processus d’initialisation et de réplication

  1. Sur le serveur SQL principal, cliquez avec le bouton droit sur le nœud Réplication et cliquez sur Lancer le moniteur de réplication.

  2. Dans Moniteur de réplication, cliquez sur la publication.

  3. Sous l’onglet Tous les abonnements, cliquez avec le bouton droit pour Afficher les détails.

    Vous devez être en mesure de voir de nombreuses entrées sous Actions pour la réplication initiale.

  4. En outre, vous pouvez regarder sous le nœud SQL Server Agent\Jobs pour voir la ou les tâches planifiées, afin d’exécuter les opérations de la publication/de l’abonnement. Seuls les tâches locales sont affichées. Veillez donc à vérifier la résolution des problèmes de l’éditeur et de l’abonné. Cliquez avec le bouton droit sur une tâche et sélectionnez Afficher l’historique pour afficher l’historique d’exécution et les résultats.

Configurer la connexion SQL pour le compte de domaine CONTOSO\sqlagent

  1. Créez une nouvelle connexion sur le SQL Server principal et réplica appelée CONTOSO\sqlagent (le nom du nouvel utilisateur de domaine créé et configuré sur la page Sécurité de l’agent dans les procédures ci-dessus.)

  2. Dans SQL Server, cliquez avec le bouton droit sur la connexion que vous avez créée et sélectionnez Propriétés, puis, sous l’onglet Mappage des utilisateurs, mappez cette connexion aux bases de données AdfsConfiguration et AdfsArtifact avec des rôles publics et db_genevaservice. Mappez également cette connexion à la base de données de distribution et ajoutez db_owner rôle pour les tableaux de distribution et adfsconfiguration. Procédez selon le cas sur le serveur SQL principal et le serveur SQL réplica. Pour plus d’informations, voir Replication Agent Security Model.

  3. Accordez au compte de domaine correspondant des autorisations de lecture et d’écriture sur le partage configuré en tant que distributeur. Veillez à définir des autorisations de lecture et d’écriture sur les autorisations de partage et les autorisations de fichier local.

Configurer le ou les nœuds AD FS pour qu’ils pointent vers la batterie de serveurs SQL Server réplicas

Maintenant que vous avez configuré la redondance géographique, les nœuds de batterie de serveurs AD FS peuvent être configurés pour pointer vers votre batterie de serveurs SQL Server réplicas à l’aide des fonctionnalités de « jointure » AD FS standard, soit à partir de l’interface utilisateur de l’Assistant de configuration AD FS, soit à l’aide de Windows PowerShell.

Si vous utilisez l’interface utilisateur de l’Assistant de configuration AD FS, sélectionnez Ajouter un serveur de fédération à une batterie de serveurs de fédération. NE sélectionnez PAS Créer le premier serveur de fédération dans une batterie de serveurs de fédération.

Si vous utilisez Windows PowerShell, exécutez Add-AdfsFarmNode. N’exécutez PAS Install-AdfsFarm.

Lorsque vous y êtes invité, indiquez l’hôte et le nom de l’instance de SQL Server réplica, PAS le serveur SQL initial.