Configuration pour le partage de la charge de travail avec la haute disponibilité
Cette configuration comprend plusieurs moteurs de messagerie qui s'exécutent dans un cluster ; chacun d'entre eux peut basculer sur un ou plusieurs autres serveurs.
- Vous pouvez ajouter un cluster au bus d'intégration de services en utilisant l'assistance de règle de moteur de messagerie et utiliser l'évolutivité avec une règle de moteur de messagerie haute disponibilité. Cette procédure crée un moteur de messagerie unique pour chaque serveur du cluster. Chaque moteur de messagerie peut basculer sur un autre serveur spécifié du cluster en cas de défaillance. Chaque serveur peut héberger jusqu'à deux moteurs de messagerie, de sorte qu'il existe une relation circulaire ordonnée entre les serveurs. Chaque moteur de messagerie prend en charge la reprise par restauration. En d'autres termes, si un moteur de messagerie bascule sur un autre serveur en cas de défaillance et que le serveur d'origine redevient disponible, le moteur de messagerie rebascule sur le serveur d'origine automatiquement.
- Vous pouvez ajouter un cluster au bus d'intégration de services à l'aide de l'assistance de règle de moteur de messagerie et utiliser la règle de moteur de messagerie personnalisée. Vous pouvez créer autant de moteurs de messageries que nécessaire pour le cluster. Pour chaque moteur de messagerie que vous créez, vous devez configurer la règle de moteur de messagerie afin de définir le comportement de moteur de messagerie de votre choix.
- Vous pouvez ajouter un cluster au bus d'intégration de services sans utiliser l'assistant de création de règles de moteur de messagerie. Un moteur de messagerie est créé automatiquement et vous ajoutez les autres moteurs de messagerie requis au cluster. Une configuration classique est constituée d'un moteur de messagerie pour chaque serveur du cluster. Créez une règle de groupe central "Un de N" pour chaque moteur de messagerie du cluster. Configurez les règles de sorte qu'un moteur de messagerie s'exécute sur chaque serveur et qu'il existe un comportement de haute disponibilité, par exemple, chaque moteur de messagerie peut basculer sur un serveur désigné.
- Vous pouvez définir une liste ordonnée des serveurs favoris sur lesquels le moteur de messagerie peut être exécuté et peut basculer.
- Vous pouvez indiquer si le moteur de messagerie peut être exécuté sur n'importe quel serveur du cluster ou uniquement sur ceux de la liste des serveurs favoris.
- Vous pouvez spécifier si un moteur de messagerie peut basculer sur un serveur favori lorsque ce dernier est disponible.
La règle d'intégration de services par défaut, "règle SIBus par défaut", ne propose pas ce comportement. Vous devez donc créer des règles de groupe central.
Ce type de configuration permet la disponibilité, car chaque moteur de messagerie peut basculer sur un autre serveur en cas d'indisponibilité de son serveur. La configuration permet le partage de la charge de travail, car elle comporte plusieurs moteurs de messagerie qui peuvent partager le trafic via la destination ainsi que l'évolutivité, car il est possible d'ajouter de nouveaux serveurs au cluster sans affecter les moteurs de messagerie qui existent déjà dans le cluster.
Le schéma suivant illustre une configuration de ce type. Il représente trois moteurs de messagerie, ME1, ME2 et ME3, associés aux magasins de données A, B et C, respectivement. Les moteurs de messagerie s'exécutent dans un cluster de trois serveurs et partagent le trafic via la destination. Chaque serveur se trouve sur un noeud distinct ; ainsi, si l'un des noeuds est défaillant, les serveurs des autres noeuds restent disponibles.
Chaque moteur de messagerie a un emplacement favori et un emplacement secondaire. Chaque serveur du cluster contient la définition de deux moteurs de messagerie pouvant s'y exécuter et crée une instance de chaque moteur de messagerie ; ainsi, il constitue le serveur favori d'un moteur de messagerie et l'autre instance est prête à être activée en cas de défaillance d'un autre serveur. Le moteur de messagerie ME1 s'exécute sur le serveur server1 et peut basculer sur le serveur server2 en cas de défaillance ; le moteur de messagerie ME2 s'exécute sur le serveur server2 et peut basculer sur le serveur server3 en cas de défaillance ; le moteur de messagerie ME3 s'exécute sur le serveur server3 et peut basculer sur le serveur server1 en cas de défaillance.
Le serveur favori et le serveur secondaire doivent pouvoir accéder à l'emplacement de stockage des messages de chaque moteur de messagerie. Pour ce faire, la méthode à appliquer dépend de la topologie de magasin de données que vous utilisez. Si vous utilisez un serveur de base de données en réseau, vous devez vérifier qu'il est accessible à partir de tous les serveurs du cluster pouvant exécuter le moteur de messagerie. De même, vous pouvez utiliser une infrastructure de haute disponibilité externe pour gérer la base de données en utilisant un disque partagé.
L'exemple ci-après représente la configuration que vous avez créée en utilisant l'assistant de création de règles de moteur de messagerie et la règle de moteur de messagerie d'évolutivité avec haute disponibilité pour un cluster de trois serveurs.

Le schéma suivant illustre la défaillance du serveur server1. Le moteur de messagerie ME1 est activé sur le serveur suivant dans la liste des serveurs favoris pour ce moteur de messagerie, qui est le serveur server2. Le moteur de messagerie ME2 continue de s'exécuter sur le serveur server2 et le moteur de messagerie ME3 continue de s'exécuter sur le serveur server3.

Le schéma suivant illustre la situation lorsque le serveur server1 redevient disponible et le serveur server2 est défaillant. Le moteur de messagerie ME1 est activé sur le serveur server1, le premier serveur de la liste des serveurs favoris pour ce moteur de messagerie, car la reprise par restauration est définie pour le moteur de messagerie ME1. Le moteur de messagerie ME2 est activé sur le serveur suivant dans la liste des serveurs favoris pour ce moteur de messagerie, qui est le serveur server3. Le moteur de messagerie ME3 continue de s'exécuter sur le serveur server3.

La règle de moteur de messagerie à évolutivité prédéfinie avec haute disponibilité permet de créer une configuration permettant l'évolutivité et la haute disponibilité. Le schéma suivant est un autre exemple de configuration permettant la haute disponibilité et le partage de la charge de travail, où la transmission des messages constitue une priorité. Deux moteurs de messagerie, ME1 et ME2, associés aux magasins de données A et B respectivement, s'exécutent dans un cluster de trois serveurs et partagent le trafic via une destination. En temps normal, le moteur de messagerie ME1 s'exécute sur le serveur server1 et le moteur de messagerie ME2 s'exécute sur le serveur server2. Le serveur server3 constitue un emplacement pour la reprise en ligne pour les deux moteurs de messagerie. Cette configuration est appelée "N+1" car elle comporte un serveur de secours.

La liste des serveurs favoris du moteur de messagerie ME1 est server1, server3 ; celle du moteur de messagerie ME2 est server2, server3. L'intérêt de cette configuration est le suivant : si un serveur est défaillant, chaque serveur restant héberge un moteur de messagerie uniquement. Toutefois, le coût du serveur de secours constitue un inconvénient. Pour définir ce type de configuration, vous pouvez utiliser la règle de moteur de messagerie personnalisée.
Si vous n'utilisez pas l'assistant de création de règles de moteur de messagerie et voulez que le moteur de messagerie utilise des serveurs favoris, vous devez spécifier un ou plusieurs serveurs favoris pour le moteur de messagerie. A chaque fois qu'un serveur favori est disponible, le gestionnaire de disponibilités (GestionnaireHD) exécute le moteur de messagerie dans ce dernier. Lorsqu'aucun serveur favori n'est disponible, le moteur de messagerie s'exécute sur tout autre serveur disponible. Vous pouvez aussi définir l'option Remise en production (Failback) pour la règle de sorte que lorsqu'un serveur favori redevient disponible, le GestionnaireHD y rebascule le moteur de messagerie.