Citrix ADC

Cas d’utilisation 3 : Configurer l’équilibrage de charge en mode de retour direct du serveur

L’équilibrage de charge en mode DSR (Direct Server Return) permet au serveur de répondre directement aux clients à l’aide d’un chemin de retour qui ne passe pas par l’appliance Citrix ADC. Toutefois, en mode DSR, l’appliance peut continuer à effectuer des vérifications de l’état des services. Dans un environnement à volume élevé de données, l’envoi de trafic serveur directement au client en mode DSR augmente la capacité globale de gestion des paquets de l’appliance, car les paquets ne transitent pas par l’appliance.

Le mode DSR présente les caractéristiques et limitations suivantes :

  • Il prend en charge le mode à un bras et le mode en ligne.
  • L’appliance vieillit les sessions en fonction du délai d’inactivité.
  • Étant donné que l’appliance ne transmet pas de connexions TCP par proxy (c’est-à-dire qu’elle n’envoie pas SYN-ACK au client), elle n’exclut pas complètement les attaques SYN. En utilisant le filtre de débit de paquets SYN, vous pouvez contrôler le taux de SYN sur le serveur. Pour contrôler le taux de syns, définissez un seuil pour le taux de syns. Pour obtenir une protection contre les attaques SYN, vous devez configurer l’appliance pour les connexions TCP par proxy. Toutefois, cela nécessite que le trafic inverse circule à travers l’appliance.
  • Dans une configuration DSR, l’appliance Citrix ADC ne remplace pas l’adresse IP du serveur virtuel d’équilibrage de charge par l’adresse IP du serveur de destination. Au lieu de cela, il transfère les paquets à un service en utilisant l’adresse MAC du serveur. Le VIP doit être configuré sur le serveur et l’ARP doit être désactivé pour le VIP configuré sur le serveur afin d’empêcher la demande du client de contourner l’appliance lorsqu’elle est configurée en mode monobras. Par exemple, un utilisateur doit configurer VIP dans l’interface de bouclage et désactiver l’ARP pour le même VIP.
  • L’appliance obtient l’adresse MAC du serveur à partir du moniteur lié au service. Toutefois, les moniteurs utilisateur personnalisés (moniteurs de type USER), qui utilisent des scripts stockés sur l’appliance Citrix ADC, n’apprennent pas l’adresse MAC d’un serveur. Si vous utilisez uniquement des moniteurs personnalisés dans une configuration DSR, pour chaque demande reçue par le serveur virtuel, l’appliance tente de résoudre l’adresse IP de destination en une adresse MAC (en envoyant des demandes ARP). Étant donné que l’adresse IP de destination est une adresse IP virtuelle appartenant à l’appliance Citrix ADC, les demandes ARP se résolvent toujours à l’adresse MAC de l’interface Citrix ADC. Par conséquent, tout le trafic reçu par le serveur virtuel est réacheminé vers l’appliance. Si vous utilisez des moniteurs utilisateur dans une configuration DSR, vous devez également configurer un autre moniteur d’un type différent (par exemple, un moniteur PING) pour les services, idéalement avec un intervalle plus long entre les sondes, afin que l’adresse MAC des serveurs puisse être apprise.
  • L’appliance Citrix ADC apprend les paramètres L2 du serveur à partir du moniteur lié au service. Pour les moniteurs UDP-ECV, configurez une chaîne de réception pour permettre à l’appliance d’apprendre les paramètres L2 du serveur. Si la chaîne de réception n’est pas configurée et que le serveur ne répond pas, l’appliance n’apprend pas les paramètres L2, mais le service est défini sur UP. Le trafic de ce service est en trou noir.

Dans l’exemple de scénario, les services Service-ANY-1, Service-ANY-2 et Service-ANY-3 sont créés et liés au serveur virtuel Vserver-LB-1. La charge du serveur virtuel équilibre la demande du client vers un service et le service répond directement aux clients, en contournant l’appliance Citrix ADC. Le tableau suivant répertorie les noms et les valeurs des entités configurées sur l’appliance Citrix ADC en mode DSR.

Type d’entité Name Adresse IP Protocole
Serveur virtuel Vserver-LB-1 10.102.29.94 ANY
Services Service-ANY-1 10.102.29.91 ANY
  Service-ANY-2 10.102.29.92 ANY
  Service-ANY-3 10.102.29.93 ANY
Moniteurs TCP Aucun Aucun

Le diagramme suivant présente les entités d’équilibrage de charge et les valeurs des paramètres à configurer sur l’appliance.

Figure 1. Modèle d’entité pour l’équilibrage de charge dans le modèle DSR

lb-entity-dsr-mode

Pour que l’appliance fonctionne correctement en mode DSR, l’adresse IP de destination dans la requête client doit être inchangée. Au lieu de cela, l’appliance modifie le MAC de destination en celui du serveur sélectionné. Ce paramètre permet au serveur de déterminer l’adresse MAC du client pour transférer les demandes au client tout en contournant le serveur.

Ensuite, vous configurez une configuration d’équilibrage de charge de base comme décrit dansConfiguration de l’équilibrage de charge de base, nommant les entités et définissant les paramètres à l’aide des valeurs décrites dans le tableau précédent.

Après avoir configuré la configuration d’équilibrage de charge de base, vous devez la personnaliser pour le mode DSR. Pour ce faire, vous configurez une méthode d’équilibrage de charge prise en charge, telle que la méthode de hachage IP source avec un serveur virtuel sans session. Vous devez également définir le mode de redirection pour permettre au serveur de déterminer l’adresse MAC du client pour transférer les réponses et de contourner l’appliance.

Après avoir configuré la méthode d’équilibrage de charge et le mode de redirection, vous devez activer le mode USIP sur chaque service. Le service utilise ensuite l’adresse IP source lors du transfert des réponses.

Pour configurer la méthode d’équilibrage de charge et le mode de redirection pour un serveur virtuel sans session à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set lb vserver <vServerName> -lbMethod <LBMethodOption> -m <RedirectionMode> -sessionless <Value>

Exemple

set lb vserver Vserver-LB-1 -lbMethod SourceIPHash -m MAC -sessionless enabled

Remarque

Pour un service lié à un serveur virtuel sur lequel l’option -m MAC est activée, vous devez lier un moniteur non-utilisateur.

Pour configurer la méthode d’équilibrage de charge et le mode de redirection pour un serveur virtuel sans session à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels.
  2. Ouvrez un serveur virtuel, sélectionnez Mode de redirection comme basé sur MAC et méthode comme SOURCEIPHASH.
  3. Dans Paramètres de trafic, sélectionnez Équilibrage de charge sans session.

Pour configurer un service pour utiliser l’adresse IP source à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set service <ServiceName> -usip <Value>

Exemple :

set service Service-ANY-1 -usip yes

Pour configurer un service pour utiliser l’adresse IP source à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Services.
  2. Ouvrez un service et dans Paramètres de trafic, sélectionnez Utiliser l’adresse IP source.

Certaines étapes supplémentaires sont nécessaires dans certaines situations, décrites dans les sections suivantes.