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

Figure 43. Exemple de configuration de haute disponibilité à deux niveaux utilisant Dispatcher, CBR et Caching Proxy
Configuration de haute disponibilité utilisant Dispatcher, CBR et Caching Proxy

Le serveur suivant est configuré pour la figure 43 :

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 :

Remarque :
  1. 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.
  2. 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.
  3. 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/*
  4. 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.
  5. 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.
  6. 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 :

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