Annexe D. Exemple de configuration de haute
disponibilité à deux niveaux utilisant Dispatcher, CBR et Caching
Proxy
Cette annexe décrit comment définir une configuration de haute disponibilité à deux niveaux regroupant les capacités
de deux composants Load Balancer (Dispatcher et CBR) et Caching Proxy.
Configuration de la machine
serveur
Le serveur suivant est configuré pour la
figure 43 :
- EdgeServer1 : machine Dispatcher principale (haute
disponibilité) co-implantée avec CBR et Caching Proxy équilibrant la
charge des serveurs Web.
- EdgeServer2 : machine Dispatcher de secours (haute
disponibilité) co-implantée avec CBR et Caching Proxy.
- EdgeServer3 : CBR et machine Caching Proxy.
- ServeurWebA, ServeurWebB, ServeurWebC : serveurs Web
d'arrière-plan.
La figure 43 montre une représentation de base de
l'équilibrage de la charge de plusieurs serveurs (EdgeServer1,
EdgeServer2, EdgeServer3) sur plusieurs serveurs Web d'arrière-plan. Le composant CBR utilise Caching Proxy pour acheminer les demandes
vers les serveurs Web d'arrière-plan en fonction de l'URL. Le composant Dispatcher permet d'équilibrer la charge des
composants CBR sur les serveurs EdgeServer. La fonction haute disponibilité de
Dispatcher permet d'assurer l'acheminement des demandes vers les
serveurs dorsaux même en cas de défaillance de la machine haute
disponibilité principale (EdgeServer1).
Instructions de configuration de base :
- Configurez Caching Proxy de la même façon sur tous les serveurs EdgeServer. Pour
améliorer l'accessibilité globale aux pages Web sur les serveurs dorsaux,
configurez Caching Proxy pour permettre le stockage en mémoire cache. Les serveurs EdgeServer peuvent ainsi y placer les pages Web les plus souvent demandées. Pour plus d'informations sur la configuration de Caching Proxy, reportez-vous au Guide
d'administration de Caching Proxy.
- Définissez l'adresse du cluster et les ports de la même façon dans les composants CBR et Dispatcher de Load Balancer.
- Configurez le composant CBR de la même façon sur tous les serveurs EdgeServer. Utilisez les serveurs Web A, B et C sur les
ports que vous souhaitez définir pour le cluster. Pour plus d'informations sur la configuration de CBR, voir
Configuration de CBR (Content Based Routing).
- Configurez le composant Dispatcher de la même façon sur les serveurs EdgeServer1 et EdgeServer2.
Définissez tous les
serveurs EdgeServer comme serveurs des ports que vous souhaitez définir pour le cluster dont la charge est équilibrée
par Dispatcher. Pour plus
d'informations sur la configuration de Dispatcher, voir
Configuration de Dispatcher.
- Configurez EdgeServer1 comme serveur de haute disponibilité principal et EdgeServer2 comme serveur de haute
disponibilité de secours. Pour plus d'informations, voir Haute disponibilité.
Remarque :
- Pour éviter l'affichage des adresses des serveurs dorsaux dans l'URL d'un client, définissez
l'instruction ReversePass pour chaque adresse de serveur dorsal du fichier de configuration de Caching Proxy.
- Pour assurer un stockage efficace en mémoire cache des pages Web, associez la valeur
"ON" à l'instruction "Caching" et augmentez la valeur affectée à l'instruction
"CacheMemory" en fonction de la taille requise dans le fichier de configuration de
Caching Proxy.
- Lignes de l'exemple auxquelles font référence les remarques 1 et 2 ci-dessus :
Caching ON
CacheMemory 128000 K
ReversePass /* http://websrvA.company.com/* http://www.company.com/*
- N'oubliez pas d'affecter un alias à l'adresse de cluster de la carte d'interface réseau de EdgeServer1 et à l'adresse
de cluster de de l'unité de bouclage des autres serveurs EdgeServer.
- Si les serveurs EdgeServers fonctionnent sous Linux, il peut s'avérer nécessaire d'installer un correctif pour le noyau Linux ou d'utiliser une autre méthode que l'affectation d'alias à l'unité de bouclage. Pour plus
d'informations, voir Solutions alternatives pour l'affectation d'alias à l'unité de bouclage sous Linux lors de l'utilisation de la méthode d'acheminement MAC de Load Balancer.
- Avec CBR, l'affinité de port (délai de maintien de routage) ne
doit pas être utilisée conjointement aux règles Contenu, sinon, ces
dernières ne sont pas appliquées lors du traitement des demandes
envoyées aux serveurs Web d'arrière-plan.
Fichiers de configuration exemple :
Les fichiers de configuration exemple suivants sont identiques à ceux créés lors de la
définition de la configuration de Edge Components comme illustré à la figure 43. Ils correspondent aux fichiers des composants Dispatcher
et CBR de Load Balancer. Dans ces fichiers, une seule carte de réseau Ethernet est utilisée pour chaque machine EdgeServer
et toutes les adresses sont représentées dans un sous-réseau privé. Les fichiers de configuration exemple utilisent les adresses IP
suivantes pour les machines spécifiées :
- EdgeServer1 (EdgeServer haute disponibilité principal) : 192.168.1.10
- EdgeServer2 (EdgeServer haute disponibilité de secours) : 192.168.1.20
- EdgeServer3 (EdgeServer de mise en cache des pages Web) : 192.168.1.30
- Adresse du cluster du site Web : 192.168.1.11
- ServeurWebA à C (serveurs Web d'arrière-plan) : 192.168.1.71,
192.168.1.72 et 192.168.1.73
Fichier de configuration exemple du composant Dispatcher d'un serveur EdgeServer haute disponibilité
principal :
dscontrol executor start
dscontrol cluster add 192.168.1.11 primaryhost 192.168.1.10
dscontrol port add 192.168.1.11:80
dscontrol server add 192.168.1.11:80:edgeserver1 address 192.168.1.10
dscontrol server add 192.168.1.11:80:edgeserver2 address 192.168.1.20
dscontrol server add 192.168.1.11:80:edgeserver3 address 192.168.1.30
dscontrol manager start manager.log 10004
dscontrol highavailability heartbeat add 192.168.1.10 192.168.1.20
dscontrol highavailability backup add primary auto 4567
Fichier de configuration exemple du composant CBR des serveurs EdgeServer :
cbrcontrol set loglevel 1
cbrcontrol executor start
cbrcontrol cluster add 192.168.1.11
cbrcontrol port add 192.168.1.11:80
cbrcontrol server add 192.168.1.11:80:webserverA address 192.168.1.71
cbrcontrol server add 192.168.1.11:80:webserverB address 192.168.1.72
cbrcontrol server add 192.168.1.11:80:webserverC address 192.168.1.73
cbrcontrol rule add 192.168.1.11:80:webA_rule type content
pattern (URI=*WSA*)|(URI=*wsA*) priority 21
cbrcontrol rule useserver 192.168.1.11:80:webA_rule webserverA
cbrcontrol rule add 192.168.1.11:80:webB_rule type content
pattern (URI=/WS_B*) priority 22
cbrcontrol rule useserver 192.168.1.11:80:webB_rule webserverB
cbrcontrol rule add 192.168.1.11:80:webC_rule type content
pattern URI=*webC* priority 23
cbrcontrol rule useserver 192.168.1.21:80:webC_rule webserverC