Appliances Citrix ADC en mode actif-actif à l’aide de VRRP

Un déploiement actif-actif, en plus de prévenir les temps d’arrêt, permet une utilisation efficace de toutes les appliances Citrix ADC dans le déploiement. En mode de déploiement actif, les mêmes VIP sont configurés sur toutes les appliances Citrix ADC de la configuration, mais avec des priorités différentes, de sorte qu’un VIP donné ne peut être actif que sur une seule appliance à la fois.

Le VIP actif est appelé VIP maître, et les VIP correspondants sur les autres appliances Citrix ADC sont appelés VIP de sauvegarde. Si un VIP maître échoue, le VIP de sauvegarde avec la priorité la plus élevée prend le relais et devient le VIP maître. Toutes les appliances Citrix ADC dans un déploiement actif utilisent le protocole VRRP (Virtual Router Redundancy Protocol) pour annoncer leurs VIP et les priorités correspondantes à intervalles réguliers.

Les appliances Citrix ADC en mode actif peuvent être configurées de manière à ce qu’aucun Citrix ADC ne soit inactif. Dans cette configuration, différents ensembles de VIP sont actifs sur chaque Citrix ADC. Par exemple, dans le diagramme suivant, VIP1, VIP2, VIP3 et VIP4 sont configurés sur les appliances NS1, NS2 et NS3. En raison de leurs priorités, VIP1 et VIP 2 sont actifs sur NS1, VIP3 est actif sur NS2 et VIP 4 est actif sur NS3. Si, par exemple, NS1 échoue, VIP1 sur NS3 et VIP2 sur NS2 deviennent actifs.

Figure 1. Une configuration active-active

actif-actif

Les appliances Citrix ADC dans le diagramme ci-dessus traitent le trafic comme suit :

  1. Le client C1 envoie une demande à VIP1. La requête atteint R1.
  2. R1 n’a pas d’entrée ARP pour VIP1, il diffuse donc une demande ARP pour VIP1.
  3. VIP1 est actif dans NS1, donc NS1 répond avec une adresse MAC source comme MAC virtuel (par exemple MAC1 virtuel) associé à VIP1, et VIP1 comme adresse IP source.
  4. SW1 apprend le port pour VIP1 à partir de la réponse ARP et met à jour sa table de pont.
  5. R1 met à jour l’entrée ARP avec virtuels MAC1 et VIP1.
  6. R1 transmet le paquet au VIP1 sur NS1.
  7. L’algorithme d’équilibrage de charge de NS1 sélectionne le serveur S2 et NS1 ouvre une connexion entre l’une de ses adresses SNIP ou MIP et S2.
  8. S2 répond au SNIP ou MIP sur le Citrix ADC.
  9. NS1 envoie la réponse de S2 au client. Dans la réponse, NS1 insère l’adresse MAC de l’interface physique comme adresse MAC source et VIP1 comme adresse IP source.
  10. Si NS1 échoue, les appliances Citrix ADC utilisent le protocole VRRP pour sélectionner le VIP1 avec la priorité la plus élevée. Dans ce cas, VIP1 sur NS3 devient actif et les deux étapes suivantes mettent à jour la configuration active-active.
  11. NS3 diffuse un message GARP pour VIP1. Dans le message, MAC1 virtuel est l’adresse MAC source et VIP1 est l’adresse IP source.
  12. SW1 apprend le nouveau port pour MAC1 virtuel à partir de la diffusion GARP et met à jour sa table de pont pour envoyer les demandes clientes suivantes pour VIP1 à NS3. R1 met à jour sa table ARP.

La priorité d’un VIP peut être modifiée par le suivi de l’état de santé. Si vous activez le suivi de l’intégrité, assurez-vous que la préemption est également activée, afin qu’un VIP dont la priorité est abaissée puisse être préempté par un autre VIP.

Dans certaines situations, le trafic peut atteindre un VIP de sauvegarde. Pour éviter de supprimer ce trafic, vous pouvez activer le partage, sur une base par nœud, lorsque vous créez une configuration active-active. Vous pouvez également activer l’option d’envoi global au maître. Sur un nœud sur lequel le partage est activé, il a priorité sur l’envoi au maître.

Suivi de la santé

La priorité de base (plage de BP 1 à 255) détermine ordinairement quel VIP est le VIP principal, mais la priorité effective (EP) peut également influer sur la détermination.

Par exemple, si un VIP sur NS1 a une priorité de 101 et que le même VIP sur NS2 a une priorité de 99, le VIP sur NS1 est actif. Cependant, si deux serveurs vServer utilisent le VIP sur NS1 et que l’un d’eux tombe en panne, le suivi de l’intégrité peut réduire l’EP de VIP sur NS1. VRRP fait ensuite le VIP sur NS2 le VIP actif.

Voici les options de suivi de l’état pour modifier EP :

  • NONE. Pas de suivi. EP = BP
  • ALL. Si tous les serveurs virtuels sont UP, alors EP = BP. Sinon, EP = 0.
  • ONE. Si au moins un serveur virtuel est UP, alors EP = BP. Sinon, EP = 0.
  • PROGRESSIVE. Si TOUS les serveurs virtuels sont UP, alors EP = BP. Si TOUS les serveurs virtuels sont DOWN, EP = 0. Sinon EP = BP (1 - K/N), où N est le nombre total de serveurs virtuels associés au VIP et k le nombre de serveurs virtuels qui sont en panne.

Remarque : si vous spécifiez une valeur autre que NONE, la préemption doit être activée afin que le VIP de sauvegarde avec la priorité la plus élevée devienne actif si la priorité du VIP maître est rétrogradée.

Préemption

La préemption d’un VIP actif par un autre VIP qui atteint une priorité supérieure est activée par défaut et devrait normalement être activée. Dans certains cas, cependant, vous pouvez le désactiver. La préemption est un paramètre par nœud pour chaque VIP.

La préemption peut se produire dans les situations suivantes :

  • Un VIP actif tombe en panne et un VIP avec une priorité inférieure prend sa place. Si le VIP ayant la priorité la plus élevée revient en ligne, il préempte le VIP actuellement actif.
  • Le suivi de l’intégrité fait que la priorité d’un VIP de sauvegarde devient supérieure à celle du VIP actif. Le VIP de sauvegarde préempte ensuite le VIP actif.

Partage

Si le trafic atteint un VIP de sauvegarde, le trafic est supprimé, sauf si l’option de partage est activée sur le VIP de sauvegarde. Ce comportement est un paramètre par nœud pour chaque VIP et est désactivé par défaut.

Dans la figure Une configuration active VIP1 sur NS1 est active et VIP1 sur NS2 et NS3 sont des sauvegardes. Dans certaines circonstances, le trafic peut atteindre VIP1 sur la NS2. Si le partage est activé sur NS2, ce trafic est traité au lieu d’être supprimé.

Appliances Citrix ADC en mode actif-actif à l’aide de VRRP