Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Configuration des groupes de disponibilité AlwaysOn sur SQL Server

PRESENTATION

Ce document décrit les étapes et les informations supplémentaires nécessaires pour configurer les groupes de disponibilité AlwaysOn pour HA et DR sur MS SQL Server. Les groupes de disponibilité AlwaysOn sont une solution HA-DR introduite dans SQL Server 2012, conçue comme une combinaison d'envoi de journaux de transactions et de mise en miroir de bases de données.

AlwaysOn AG implémente HA au niveau de la base de données, même si les nœuds qui hébergent des instances SQL et participent à la configuration font partie d'un cluster de basculement Windows. Nous appelons chaque nœud un réplica de disponibilité.

Dans une configuration typique, il y a un réplica principal et un ou plusieurs réplicas secondaires en lecture seule. Un groupe de bases de données configurées dans un groupe de disponibilité peuvent être basculés vers un autre réplica ensemble.

CONDITIONS PRÉALABLES

1.1 Prérequis

1.1.1 Deux ou plusieurs serveurs Windows 2012 ou supérieur (Enterprise Edition) avec les derniers correctifs
1.1.2 Comptes de service pour les instances SQL Server
1.1.3 Un partage de fichiers sur un serveur de confiance autre que les serveurs participant au cluster
1.1.4 Support d'installation SQL 2012 ou supérieur avec Service Packs
1.1.5 Deux adresses IP supplémentaires en plus des adresses IP publiques des serveurs participants
1.1.6 Un DBA, un administrateur Windows AD, un administrateur réseau

RÉSUMÉ

1.2 La procédure de configuration comprend les étapes suivantes :

1.2.1 Activer le clustering sur tous les nœuds
1.2.2 Valider les nœuds pour le clustering
1.2.3 Créer un cluster
1.2.4 Configurer le quorum
1.2.5 Installer SQL Server sur tous les nœuds
1.2.6 Activer les groupes de disponibilité AlwaysOn sur toutes les instances
1.2.7 Créer un groupe de disponibilité
1.2.8 Ajouter un écouteur AG

PROCÉDURE

1.3 Activer le clustering sur tous les nœuds

1.3.1 Ouvrir le Gestionnaire de serveur sur les fenêtres

1.3.2 Lancer Ajouter des rôles et des fonctionnalités Assistant

Le clustering de basculement Windows est une fonctionnalité Windows. Vous pouvez l'activer via l'assistant.

1.3.3 Acceptez les valeurs par défaut jusqu'à ce que vous atteigniez l'étape des fonctionnalités.

A ce stade, nous devons sélectionner un serveur à configurer. Dans ce scénario, nous avons affaire au serveur local (voir Figure 4).

Nous avons masqué les noms des serveurs pour des raisons de sécurité, mais vous les verrez dans le volet inférieur (Figure 4).

Pour le moment, nous ne prévoyons pas de configurer un rôle. Donc, nous cliquons sur SUIVANT et suivons jusqu'à ce que nous arrivions aux fonctionnalités (Figure 6).

Cochez la case pour le clustering de basculement. Ensuite, cliquez sur INSTALLER.

1.3.4 Sélectionnez Clustering de basculement dans l'étape Fonctionnalités

1.3.5 Fermer l'assistant une fois terminé

1.4 Valider les serveurs pour le clustering

Nous avons activé le clustering en suivant les étapes de la section précédente. Nous devons répéter ces étapes pour chaque serveur qui doit participer au cluster de basculement.

Windows prend actuellement en charge jusqu'à 64 nœuds dans un cluster de basculement. Windows 2019 améliore l'utilité de ce grand nombre en fournissant une fonctionnalité connue sous le nom d'ensembles de clusters. Valider les serveurs membres potentiels d'un cluster signifie vérifier s'ils ont tous été correctement configurés pour participer au cluster.

1.4.1 Ouvrir Gestionnaire du cluster de basculement

1.4.2 Ouvrir le Valider la configuration Assistant sur la droite.

1.4.3 Sur Sélectionner les serveurs étape, spécifiez tous serveurs destinés au cluster. Une fois de plus, nous avons masqué les serveurs sélectionnés.

Nous pouvons ajouter tous les serveurs participants à partir de cet écran.

1.4.4 Acceptez l'option par défaut "Exécuter tous les tests".

1.4.5 Ignorer les avertissements liés au disque. Vous n'avez pas besoin de disques partagés pour la configuration AlwaysOn.

1.4.6 Terminer l'assistant

À ce stade, vous pouvez consulter le rapport de validation. S'il y a des problèmes, vous pouvez les corriger avant de continuer. Certains avertissements peuvent être ignorés, mais assurez-vous d'examiner leur signification.

1.5 Créer un cluster

1.5.1 Sur le gestionnaire de cluster de basculement, lancez Créer un cluster Assistant.

1.5.2 Ajouter tous les serveurs destinés au clustering.

Cet écran ressemble à Valider une configuration Écran . Nous pouvons également ajouter tous les nœuds requis à la fois.

Pour ajouter des serveurs, cliquez sur Parcourir bouton.

1.5.3 Indiquez le nom du cluster souhaité et une adresse IP associée

Ce nom fonctionne pour créer un Objet de nom d'ordinateur sur le domaine. Ainsi, vous avez besoin d'autorisations pour créer des objets ordinateur pour le compte effectuant l'installation. Notez également que toutes les adresses IP utilisées pour tous les membres du cluster doivent se trouver dans le même sous-réseau, sauf si vous créez un cluster multisite.

Lors de la création d'un cluster de basculement pour les groupes de disponibilité AlwaysOn, nous n'avons pas besoin d'ajouter de disques au cluster. Donc, laissez l'option décochée (voir Figure 19).

1.5.4 Terminez la procédure Créer un cluster Assistant

1.6 Configurer le quorum

Le quorum spécifie le nombre de membres du cluster qui doivent être en ligne pour indiquer que le cluster est disponible. Microsoft autorise diverses options de quorum. Certains d'entre eux laissent les disques ou les partages de fichiers être les membres du cluster.

En règle générale, il devrait s'agir d'un nombre impair de membres. Cependant, certaines configurations nous permettent d'utiliser un nombre pair et de supprimer les droits de vote d'un nœud. Un témoin est un objet non serveur que vous pouvez utiliser pour compenser le nombre impair d'électeurs. Un témoin de partage de fichiers obtient la préférence dans la configuration AlwaysOn car il n'y a pas de disque partagé dans une configuration AlwaysOn.

1.6.1 Créez un partage sur un serveur fiable qui ne participe pas au cluster. Ensuite, accordez toutes les autorisations à l'objet de nom d'ordinateur portant le même nom que votre cluster (étape 4.3.3).

1.6.2 Cliquez avec le bouton droit sur le cluster que vous venez de créer, puis sélectionnez Plus d'actions > Configurer les paramètres de quorum du cluster.

1.6.3 Sélectionnez l'option pour configurer un témoin de quorum

1.6.4 Sélectionnez l'option pour configurer un témoin de partage de fichiers

1.6.5 Sélectionnez le partage de fichiers (voir 4.4.1) :

1.6.6 Compléter la configuration du témoin

1.7 Installer le serveur SQL

Installez des instances uniques de SQL Server sur tous les serveurs participant au cluster. Il est possible de terminer cette configuration avec succès, même si la configuration précédente de SQL Server a eu lieu avant la création du cluster.

Notez que les instances SQL Server ne sont pas en cluster dans une configuration AlwaysOn. Vous configurez et gérez la haute disponibilité au niveau de la base de données pour les groupes de bases de données. Reportez-vous à la documentation pertinente pour l'installation de SQL Server.

1.8 Activer les groupes de disponibilité AlwaysOn

1.8.1 Ouvrir le gestionnaire de configuration SQL Server sur chaque nœud

1.8.2 Cliquez avec le bouton droit sur le service SQL Server. Ouvrez l'onglet Haute disponibilité AlwaysOn.

1.8.3 Sélectionnez Activer les groupes de disponibilité AlwaysOn case à cocher

Notez qu'à ce stade, vous obtenez déjà l'identification du cluster précédemment configuré. De cette façon, vous renforcez l'ordre des étapes. Vous devez activer le clustering sur chaque nœud de cluster avant d'activer AlwaysOn sur chaque instance SQL Server.

1.8.4 Redémarrer le service SQL Server

1.9 Créer un nouveau groupe de disponibilité

1.9.1 Ouvrir SQL Server Management Studio

1.9.2 Cliquez avec le bouton droit sur AlwaysOn High Availability> Groupes de disponibilité et sélectionnez Assistant Nouveau groupe de disponibilité .

1.9.3 Suivre l'assistant

1.9.4 Spécifiez le nom du groupe de disponibilité. Ce nom sera utilisé pour créer un rôle de cluster.

Le nom du groupe de disponibilité est également un objet de nom virtuel avec une entrée dans Microsoft Active Directory. Ainsi, avant que cela ne fonctionne, l'objet de nom d'ordinateur utilisé comme nom de cluster doit avoir les autorisations pour (1) Créer des objets informatiques et (2) Lire toutes les propriétés sur Active Directory .

1.9.5 Sélectionnez les bases de données que vous souhaitez faire partie de ce groupe de disponibilité. Il peut y avoir plusieurs groupes de disponibilité dans un ensemble d'instances. Les bases de données concernées doivent être configurées avec le modèle de récupération complète , et vous devez effectuer une sauvegarde. L'assistant vérifiera ces prérequis.

1.9.6 Sélectionnez les instances qui agiront en tant que réplicas secondaires

Déterminez si vous avez besoin d'une réplication synchrone ou asynchrone et d'un basculement automatique ou manuel uniquement. Le détail des implications de ces choix est présent dans la documentation Microsoft définie à la fin de ce document.

En règle générale, le mode de validation synchrone avec basculement automatique est destiné à la résilience locale, et le mode de validation asynchrone permet d'utiliser AlwaysOn comme solution DR en raison des problèmes de latence.

1.9.7 Créer un partage de fichiers pour la sauvegarde initiale

Ce partage de fichiers est utilisé pour initialiser la réplication. Le compte de service SQL Server doit disposer des autorisations complètes sur ce partage de fichiers. Il est entendu que les instances SQL Server participant à cette configuration utilisent le même compte de domaine que le compte de service SQL Server.

1.9.8 Sélectionnez le partage créé à l'étape 4.7.9 comme emplacement de sauvegarde initial de la base de données.

1.9.9 Revoir l'étape de validation. Notez que l'écouteur n'a pas été créé. Vous pourrez le faire plus tard.

1.9.10 Passez en revue le résumé des options et terminez la configuration

1.10 Ajouter un écouteur AG

Un écouteur de groupe de disponibilité permet aux applications de se connecter au nœud principal, quel que soit le nœud qui joue actuellement ce rôle. Cela permet de rendre les basculements transparents pour les applications.

1.10.1 Cliquez avec le bouton droit de la souris sur AlwayOn High Availability > Écouteur de groupe de disponibilité et sélectionnez Ajouter un écouteur .

Un écouteur de groupe de disponibilité est également un objet de nom virtuel (VNO) que vous allez créer sur le domaine. Ainsi, il nécessite une adresse IP associée.

Comme mentionné précédemment, l'objet de nom de cluster (CNO) spécifié lors de la création du cluster doit avoir deux autorisations sur le domaine Active Directory pour que cela fonctionne :

je. Créer des objets informatiques
ii. Lire toutes les propriétés

1.10.2 La configuration est terminée. Vous pouvez afficher le tableau de bord :

1.11 Problèmes rencontrés

Stockage en cluster

Lors de la première exécution de la création du cluster, tous les disques des nœuds du cluster sont ajoutés au cluster. Ce n'est pas l'état souhaité pour les groupes de disponibilité AlwaysOn.

La solution consistait à détruire le cluster suivi d'un nettoyage et de le recréer avec la case à cocher Ajouter tout le stockage éligible au cluster effacé à l'étape 4.3.3.

Il était impossible de recréer le cluster avant de nettoyer les nœuds avec le Clear-ClusterNode Commandlet PowerShell.

Basculement automatique

Le test du basculement automatique en arrêtant le service SQL Server à partir du gestionnaire de configuration SQL Server n'a pas fonctionné. Le Commandlet PowerShell Get-ClusterLog a généré le journal du cluster -Node -TimeSpan 10, et il a identifié l'erreur suivante :

000007f4.00002320 ::2016/07/07-06:10:59.654 WARN [RCM] Pas de basculement sur le groupe EPG-SERVER-AG, failoverCount 25, failoverThresholdSetting 20, lastFailover 1601/01/01-00:00:00.000

La solution consistait à modifier le "maximum d'échecs" dans la période spécifiée pour le rôle de cluster de groupe de disponibilité à une valeur beaucoup plus élevée.

1.12 Références

  1. Groupes de disponibilité AlwaysOn
  2. Modes de basculement et de basculement
  3. Modes de disponibilité