Partager via


Étape de planification 3 : Planifier l’équilibrage de charge de batterie de serveurs web IIS

par Keith Newman et Robert McMurray

Lors de cette phase de planification d'une batterie de serveurs web avec des serveurs IIS, vous allez découvrir ce qu'est l'équilibrage de charge. Vous découvrirez également comment configurer l'équilibrage de charge à l'aide d'Application Request Routing (ARR). ARR est un module d'équilibrage de charge et de routage des demandes basé sur proxy pour IIS.

Une fois ces tâches terminées, consignez vos décisions de conception par écrit avant de passer à Step 4: Plan SSL Central Certificate Store.

3.1. Planifier l'équilibrage de charge avec ARR

L'équilibrage de charge consiste à répartir la charge de travail parmi plusieurs serveurs web. L'objectif est d'utiliser de façon optimale les ressources, de maximiser le débit des demandes, de réduire les temps de réponse et d'éviter les surcharges de serveur.

Les équilibreurs de charge utilisent différents algorithmes pour accomplir cette tâche. L'un des plus simples est le tourniquet (Round Robin), qui envoie chaque nouvelle demande à un serveur web différent afin de charger tous les serveurs de manière égale. D'autres algorithmes envoient des types de demandes spécifiques à des serveurs spécifiques pour réduire le temps de réponse.

Application Request Routing (ARR) est un module de routage de type proxy qui utilise des en-têtes HTTP, des variables serveur et des algorithmes d'équilibrage de charge pour déterminer comment transférer les demandes aux serveurs de contenu. ARR s'appuie sur le module de réécriture d'URL pour inspecter les demandes entrantes.

L'une des fonctionnalités essentielles offertes par ARR est l'affinité de nom d'hôte. Celle-ci crée une affinité (connexion fermée) entre les demandes et un serveur (ou ensemble de serveurs) donné. Cela garantit qu'un site donné consomme des ressources uniquement sur un nombre défini de serveurs.

Préparez une liste d'adresses IP pour tous les serveurs de votre batterie de serveurs. Vous aurez besoin de cette liste pour configurer l'équilibrage de charge ARR.

3.2. Autres fonctionnalités d'ARR

Outre l'équilibrage de charge, ARR fournit de nombreuses fonctionnalités qui dépassent le cadre de ce scénario. Le tableau suivant récapitule les fonctionnalités disponibles dans ARR.

Fonctionnalité Description
Navigation du contenu mis en cache avec l'interface utilisateur Le contenu mis en cache sur plusieurs disques, y compris les répertoires et fichiers mis en cache, est visible dans le gestionnaire IIS.
Prise en charge des plages d'octets ARR segmente les demandes de plages d'octets en portions plus petites pour aider à augmenter le taux d'accès/d'échec pour le cache sans affecter le temps de réponse.
gestion de la hiérarchie de cache ARR vous permet de définir et de gérer les relations entre les nœuds du cache. Il prend en charge le protocole CARP (Cache Array Routing Protocol). Ainsi, vous pouvez configurer ARR comme nœud de cache de périmètre.
Nœud de proxy de cache dans un environnement CDN/ECN Vous pouvez utiliser ARR comme proxy de cache sur un réseau de diffusion de contenu (CDN) ou un déploiement de réseau de cache de périmètre (ECN). En effet, ARR est un module de routage des demandes HTTP basé sur proxy avec prise en charge du cache disque et du protocole CARP.
Mise en cache des objets compressés ARR compresse et stocke les objets dans un cache sur disque pour que ces objets restent non compressés en temps réel pour chaque demande.
Mise en cache lors du traitement des réponses ARR peut mettre en cache les fichiers volumineux lors du traitement des réponses en temps réel.
affinité du client ARR peut utiliser des cookies pour configurer l'affinité de toutes les demandes d'un client à un serveur de contenu.
Mise en cache sur disque ARR prend en charge le contenu mis en cache sur les lecteurs de cache principaux spécifiés par l'utilisateur et sur un lecteur de cache secondaire basé sur le réseau.
Règles de suivi des requêtes ayant échoué ARR utilise des règles de suivi pour dépanner et diagnostiquer les demandes ayant échoué.
Surveillance de l’intégrité ARR fournit des paramètres de configuration à utiliser pour le trafic dynamique et des tests d'URL spécifiques pour déterminer l'intégrité des serveurs de contenu.
affinité de nom d'hôte L'affinité de nom d'hôte, une fonctionnalité spécifique aux hébergeurs partagés, modifie la topologie de déploiement en fournissant deux fournisseurs, Round Robin et la mémoire, pour déterminer l'affinité entre le serveur et l'hôte.
Décisions de routage basé sur le protocole HTTP Application Request Routing fonctionne avec le module de réécriture d'URL pour écrire des règles de routage basées sur des en-têtes HTTP et des variables serveur et pour prendre des décisions de routage au niveau de l'application.
Prise en charge des requêtes dynamiques ARR prend en charge les demandes de contenu dynamiques en consolidant les demandes et en vérifiant les demandes de cache ayant échoué avant de les transférer au serveur d'origine.
algorithmes d’équilibrage de charge ARR fournit six algorithmes d'équilibrage de charge que vous pouvez utiliser pour identifier le serveur de contenu à utiliser pour traiter les demandes HTTP.
Gestion et surveillance à l'aide de l'interface utilisateur Les paramètres de configuration et les statistiques d'exécution ARR sont visibles dans le gestionnaire IIS.
Groupes de serveurs multiples ARR peut gérer plusieurs groupes de serveurs de contenu dans les scénarios de test A/B et de gestion pilote.
Substitution des directives de contrôle de cache ARR vous permet de substituer manuellement les directives de contrôle de cache qui contrôlent le comportement de mise en cache, tel que la capacité de mise en cache et la durée de mise en cache.
Suppression du contenu mis en cache ARR vous permet de supprimer le contenu mis en cache grâce à la mise en correspondance avec des modèles d'URL.
Préchauffage des nœuds de cache ARR vous permet d'effectuer une mise en cache préalable du contenu et d'anticiper ainsi la demande avant que le contenu ne soit demandé. Vous pouvez mettre en cache le niveau de cache parent uniquement ou les niveaux de cache parent et enfant.

Voir aussi