Présentation générale des composants de Load Balancer

Ce chapitre contient une présentation générale des composants de Load Balancer et comporte les sections suivantes :

Le Gestion du réseau : détermination des fonctions Load Balancer à utiliser contient une liste complète des fonctions avancées de configuration fournies par chacun des composants de Load Balancer, qui vous permettra de déterminer celles qui sont les mieux adaptées à la gestion de votre réseau.

Composants de Load Balancer

Les cinq composants de Load Balancer sont Dispatcher, Content Based Routing (CBR), Site Selector, Cisco CSS Controller et Nortel Alteon Controller. Load Balancer permet d'utiliser ces composants séparément ou ensemble, selon la configuration de votre site. La section qui suit présente ces composants.

Présentation générale du composant Dispatcher

Le composant Dispatcher assure l'équilibrage de la charge du trafic entre les serveurs via une combinaison unique de logiciels d'équilibrage de charge et de gestion. Dispatcher peut aussi détecter l'échec d'un serveur et canaliser le trafic sur les serveurs qui l'entourent. Dispatcher prend en charge les protocoles HTTP, FTP, SSL, SMTP, NNTP, IMAP, POP3, Telnet, SIP et toute application de type TCP ou UDP sans état.

Toutes les demandes de client adressées à la machine Dispatcher sont acheminées vers le serveur le mieux adapté, compte tenu de mesures définies de façon dynamique. Vous pouvez utiliser les valeurs par défaut associées à ces mesures ou les modifier au cours du processus de configuration.

Dispatcher offre trois méthodes d'acheminement (indiquées sur le port) :

Le composant Dispatcher constitue la clé de voûte d'une gestion efficace et durable d'un réseau de serveurs étendu et modulable. Avec Dispatcher, vous pouvez lier différents serveurs en un seul serveur virtuel. De cette manière, le site est associé à une adresse IP unique. Dispatcher fonctionne indépendamment de tout serveur de noms de domaine ; toutes les demandes sont dirigées sur l'adresse IP de la machine Dispatcher.

Dispatcher présente des avantages spécifiques indéniables en matière d'équilibrage de charge sur des serveurs en cluster. Ces atouts permettent de mettre en oeuvre une gestion de site aussi efficace que stable.

Gestion de serveurs locaux avec Dispatcher

Figure 1. Exemple de représentation physique d'un site utilisant Dispatcher pour gérer les serveurs locaux
Représentation physique d'un site utilisant Dispatcher pour gérer les serveurs locaux

La figure 1 est la représentation physique d'un site utilisant une configuration de réseau Ethernet. La machine Dispatcher peut être installée sans apporter de changement physique à la physionomie du réseau. Après acheminement d'une demande de client au serveur optimal par Dispatcher, la réponse correspondante est transmise directement du serveur au client sans intervention de Dispatcher lorsque la méthode d'acheminement MAC est utilisée.

Gestion des serveurs à l'aide de Dispatcher et de Metric Server

Figure 2. Exemple de site utilisant Dispatcher et Metric Server pour gérer les serveurs
Site avec Dispatcher et Metric Server pour la gestion des serveurs

La figure 2 représente un site dans lequel tous les serveurs se trouvent sur un réseau local. Le composant Dispatcher permet d'acheminer les demandes et le composant Metric Server permet de fournir les informations de charge du système au poste Dispatcher.

Dans cet exemple, le démon Metric Server est installé sur chaque serveur principal. Vous pouvez utiliser Metric Server avec le composant Dispatcher ou tout autre composant Load Balancer.

Gestion de serveurs locaux et éloignés avec Dispatcher

Figure 3. Exemple de site utilisant Dispatcher pour gérer des serveurs locaux et éloignés
Site avec Dispatcher pour la gestion des serveurs locaux et éloignés

La prise en charge de réseau étendu de Dispatcher permet d'utiliser à la fois des serveurs locaux et éloignés (c'est-à-dire des serveurs résidant sur différents sous-réseaux). La figure 3 présente une configuration dans laquelle un Dispatcher "local" (Dispatcher 1) sert de point d'entrée pour l'ensemble des demandes. Il distribue ces demandes entre ses propres serveurs locaux (Serveur A, Serveur B, Serveur C) et au serveur Dispatcher éloigné (Dispatcher 2), qui équilibre la charge sur ses serveurs locaux (Serveur G, Serveur H, Serveur I).

Lors de l'utilisation de la méthode d'acheminement NAT de Dispatcher ou du support GRE, le support de réseau étendu avec Dispatcher peut aussi être assuré sans utiliser de serveur Dispatcher sur le site éloigné (où se trouvent les serveurs D, E et F). Pour plus d'informations, voir Réacheminement NAT/NAPT de Dispatcher (méthode d'acheminement nat) et Support GRE (Generic Routing Encapsulation).

Présentation générale du composant CBR (Content Based Routing)

CBR coopère avec Caching Proxy pour relayer les demandes des clients aux serveurs HTTP ou HTTPS (SSL) indiqués. Il permet de manipuler les détails de la mémoire cache pour accélérer le rappel des documents Web avec une petite largeur de bande. CBR et Caching Proxy examinent les requêtes HTTP à l'aide des types de règle indiqués.

Remarque :
Le composant Content Based Routing (CBR) n'est pas disponible sur les plateformes qui exécutent la machine virtuelle Java 64 bits, à l'exception de HP-UX ia64. Sous HP-UX ia64, le composant CBR exécute une application de 32 bits. Vous pouvez utiliser la méthode de réacheminement CBR du composant Load Balancer's Dispatcher afin de fournir un routage basé sur le contenu sans l'utilisation de Caching Proxy. Pour plus de détails, voir Fonction CBR de Dispatcher (méthode d'acheminement cbr).

CBR permet de spécifier un ensemble de serveurs qui prend en charge une demande en fonction de son contenu. CBR vous permet d'indiquer plusieurs serveurs pour chaque type de requête. Par conséquent, les requêtes peuvent être équilibrées pour obtenir une réponse optimale du client. CBR peut aussi détecter les incidents qui se produisent sur un serveur et arrêter d'acheminer des demandes vers ce dernier. L'algorithme d'équilibrage de charge utilisé par le composant CBR est identique à l'algorithme éprouvé utilisé par le composant Dispatcher.

Lorsqu'une demande est reçue par Caching Proxy, elle est comparée aux règles qui ont été définies dans le composant CBR. En cas de correspondance, l'un des serveurs associés à cette règle est désigné pour prendre en charge la demande. Caching Proxy continue alors son traitement normal pour acheminer la demande vers le serveur sélectionné.

CBR offre les mêmes fonctions que Dispatcher à l'exception des fonctions de haute disponibilité, de sous-agent SNMP, de réseau étendu et de quelques commandes de configuration.

Caching Proxy doit être en fonction pour permettre à CBR d'équilibrer la charge des demandes des clients.

Gestion des serveurs locaux avec CBR

Figure 4. Exemple de site utilisant CBR pour gérer les serveurs locaux
Site avec CBR pour la gestion des serveurs locaux

La figure 4 montre la représentation logique d'un site utilisant CBR pour acheminer des demandes issues des serveurs locaux. Le composant CBR utilise Caching Proxy pour acheminer les demandes des clients (HTTP ou HTTPS) aux serveurs en fonction du contenu de l'URL.

Présentation générale du composant Site Selector

Site Selector fonctionne avec d'autres serveurs de noms pour équilibrer la charge sur un groupe de serveurs à l'aide des mesures et des pondérations recueillies. Vous pouvez créer une configuration de site pour assurer l'équilibrage de charge sur un groupe de serveurs sur la base du nom de domaine utilisé pour la demande d'un client.

Un client envoie une demande de résolution de nom de domaine à un serveur de noms appartenant au réseau. Le serveur de noms achemine la demande au poste Site Selector. Site Selector résout le nom de domaine en adresse IP de l'un des serveurs qui a été configuré sous le nom du site. Site Selector renvoie l'adresse IP du serveur sélectionné au serveur de noms. Le serveur de noms renvoie l'adresse IP au client.

Metric Server est un composant de Load Balancer qui surveille le système et doit être installé sur chaque serveur avec équilibrage de charge de votre configuration. Metric Server permet à Site Selector de surveiller le niveau d'activité d'un serveur, de détecter le moment où un serveur est le moins chargé et de détecter un serveur défaillant. Par charge, on entend le travail effectivement fourni par le serveur. En personnalisant les fichiers script de mesure du système, vous pouvez choisir le type de mesure utilisé pour évaluer la charge. Site Selector peut être configuré en fonction de chaque environnement, en tenant compte de facteurs tels que la fréquence des accès, le nombre total d'utilisateurs et les différents types d'accès (requêtes courtes, longues, à forte ou faible consommation de ressources de l'unité centrale).

Gestion des serveurs locaux et éloignés avec Site Selector et Metric Server

Figure 5. Exemple de site utilisant Site Selector et Metric Server pour gérer les serveurs locaux et éloignés
Site avec Site Selector et Metric Server pour la gestion des serveurs

La figure 5 illustre un site utilisant le composant Site Selector pour répondre aux demandes. Serveur 1, Serveur 2 et Serveur 3 sont des serveurs locaux. Serveur 4, Serveur 5 et Serveur 6 sont des serveurs éloignés.

Un client envoie une demande de résolution de nom de domaine à un serveur de noms client. Le serveur de noms client achemine la demande au poste Site Selector (chemin d'accès 1) via DNS. Site Selector résout ensuite le nom de domaine en adresse IP de l'un des serveurs. Site Selector renvoie l'adresse IP du serveur sélectionné au serveur de noms client. Le serveur de noms renvoie l'adresse IP au client.

Une fois que le client a reçu l'adresse IP du serveur, il achemine les demandes d'application directement au serveur sélectionné (chemin d'accès 2).

Remarque :
Dans cet exemple, le serveur Metric Server fournit les informations de charge du système au poste Site Selector. L'agent Metric Server est installé sur chaque serveur principal. Utilisez Metric Server conjointement à Site Selector, sinon Site Selector peut seulement utiliser une méthode de sélection par permutation circulaire pour l'équilibrage de charge.

Présentation générale du composant Cisco CSS Controller

Remarque :
Le composant Cisco CSS Controller est fourni avec Load Balancer for IPv4, mais il ne prend pas toujours en charge les nouveaux matériels. Pour connaître les configurations matérielles prises en charge, reportez-vous à la page répertoriant les éléments prérequis : http://www.ibm.com/support/docview.wss?rs=180&uid=swg27006921

Cisco CSS Controller constitue une solution complémentaire avec les commutateurs Cisco CSS série 11000. La solution combinée réunit de robustes fonctions d'acheminement de paquets et de routage de contenu à des algorithmes de reconnaissance sophistiqués pour déterminer la disponibilité et les informations de charge du service (base de données ou application serveur principal). La fonction Cisco CSS Controller fait appel à l'algorithme de calcul de pondération, aux conseillers standard et personnalisés et à Metric Server pour déterminer les mesures, la santé et la charge du service. Cisco CSS Controller utilise ces informations pour générer les mesures de pondération du service, qu'il envoie au serveur Cisco CSS Switch pour la sélection du service optimal, l'optimisation de la charge et la tolérance aux pannes.

Cisco CSS Controller suit de nombreux critères, dont :

Lorsqu'un serveur Cisco CSS Switch, sans Cisco CSS Controller, détermine la santé d'un service fournisseur de contenu, il utilise les temps de réponse aux demandes de contenu ou d'autres mesures de réseau. Avec Cisco CSS Controller, le serveur Cisco CSS Switch se décharge de ces activités sur le serveur Cisco CSS Controller. Cisco CSS Controller influence la pondération du service ou sa faculté à servir le contenu, et active ou suspend un service, selon le cas, lorsque le service devient disponible ou indisponible.

Cisco CSS Controller:

Les pondérations définies s'appliquent à tous les services connectés sur un même port. Pour chaque port, les demandes sont réparties entre les services selon la pondération relative de chacun. Par exemple, si un service a une pondération (paramètre Weight) de 10 et un autre de 5, le premier recevra deux fois plus de demandes que le second. Ces pondérations sont fournies au serveur Cisco CSS Switch avec SNMP. Lorsque la valeur de pondération d'un service est augmentée, le serveur Cisco CSS Switch dirige davantage de demandes vers ce service.
Figure 6. Exemple de site utilisant Cisco CSS Controller et Metric Server pour gérer les services locaux
Site avec Cisco CSS Controller et Metric Server pour la gestion des services

Cisco CSS Controller, conjointement au serveur Cisco CSS Switch, constitue une solution idéale qui combine la commutation de contenu à haute vitesse avec la reconnaissance d'applications sophistiquées, la tolérance aux pannes et l'optimisation de la charge des services. Cisco CSS Controller appartient à une solution globale complémentaire située entre le serveur Cisco CSS Switch et la fonction Load Balancer d'IBM® WebSphere Application Server.

Présentation générale du composant Nortel Alteon Controller

Remarque :
Le composant Nortel Alteon Controller est fourni avec Load Balancer for IPv4, mais il ne prend pas toujours en charge les derniers matériels. Pour connaître les configurations matérielles prises en charge, reportez-vous à la page répertoriant les éléments prérequis : http://www.ibm.com/support/docview.wss?rs=180&uid=swg27006921

Nortel Alteon Controller, conjointement à la famille Nortel Alteon de commutateurs Web, constitue une solution complémentaire qui combine capacité et vitesse de transmission des paquets des commutateurs avec la reconnaissance des algorithmes sophistiqués de Load Balancer pour déterminer la pondération de charge des serveurs.

Nortel Alteon Controller permet de développer des conseillers personnalisés capables d'évaluations avec reconnaissance des applications plus intelligentes de la disponibilité et de la charge des applications utilisées pour déployer des services.

Le composant Metric Server fournit des informations relatives à la charge du système, telles que l'utilisation de la mémoire et de la CPU, ainsi qu'une structure vous permettant de développer des dispositifs personnalisés de mesure de la charge système.

Nortel Alteon Controller collecte de nombreux types de mesures pour déterminer les pondérations des serveurs dont la charge est équilibrée par des Commutateur Web Nortel Alteon, notamment :

Nortel Alteon Controller utilise SNMP pour communiquer avec le commutateur. Les informations de configuration, d'état et de connexion sont extraites du commutateur. Lorsque le contrôleur a calculé les pondérations du serveur, celles-ci sont définies sur le commutateur. Le commutateur se sert des pondérations définies par le contrôleur pour sélectionner le serveur le mieux à même de traiter les demandes de service des clients.

Figure 7. Exemple de site utilisant Nortel Alteon Controller pour gérer les serveurs locaux
Site avec Nortel Alteon Controller pour la gestion des serveurs

La gestion du contrôleur peut s'effectuer à l'aide d'un navigateur, d'une interface graphique éloignée ou d'une interface de ligne de commande.

Nortel Alteon Controller, associé à la famille Nortel Alteon des commutateurs Web, constitue une solution idéale qui combine la commutation de paquets avec la reconnaissance d'applications sophistiquées, la tolérance aux pannes et l'optimisation de la charge des serveurs. Nortel Alteon Controller fait partie d'une solution complémentaire entre la famille Nortel Alteon des commutateurs et WebSphere d'IBM.