Citrix ADC

Prise en charge Anycast dans Citrix ADC

Anycast est un type de réseau où un ensemble de serveurs partage la même adresse IP. La demande du client est dirigée vers le serveur topographiquement le plus proche en fonction de leurs tables de routage. Ce routage réduit les problèmes de latence, garantit une haute disponibilité et minimise les temps d’arrêt.

Citrix ADC prend en charge le réseau anycast avec Global Server Load Balancing (GSLB) et les fonctionnalités DNS.

Le diagramme suivant illustre un diagramme topologique d’Anycast dans Citrix ADC.

image localisée

Anycast GSLB

La fonction Citrix ADC GSLB assure l’équilibrage de la charge entre les sites distribués à l’échelle mondiale ainsi que la reprise après sinistre et assure une disponibilité continue des applications.

Lors d’une panne, GSLB assure une reprise après sinistre immédiate en acheminant le trafic vers le centre de données le plus proche ou le plus performant. Toutefois, GSLB ne peut pas contrôler les éléments suivants :

  • Comment le trafic DNS est routé vers des nœuds GSLB situés dans différents emplacements géographiques.
  • Combien de latence est ajoutée pendant que les requêtes DNS sont routées vers les nœuds GSLB.

Dans une configuration GSLB typique, chaque centre de données dispose d’un nœud GSLB configuré avec le serveur ADNS (Autoritative Domain Name Server) spécifique au site pour recevoir des requêtes DNS. L’ADNS de chaque site est configuré comme serveur de noms dans le résolveur DNS. À mesure que le nombre de nœuds GSLB augmente, le nombre d’enregistrements de serveur de noms augmente également. Dans de tels cas, en cas de défaillance d’un centre de données, LDNS doit réessayer la résolution avec un serveur de noms différent, ce qui ajouterait à la latence dans la résolution DNS. En outre, chaque fois qu’un nœud GSLB est ajouté, les enregistrements du serveur de noms doivent être mis à jour.

Pour surmonter ces inconvénients, vous pouvez utiliser Anycast ADNS. Dans Anycast ADN, une seule adresse IP ADNS est utilisée pour tous les nœuds GSLB et le trafic DNS est routé vers les nœuds GSLB à l’aide d’un routage dynamique.

Par exemple, si un site GSLB est DOWN, la table de routage est mise à jour et l’itinéraire vers ce site est supprimé. Par conséquent, les requêtes DNS ne sont pas envoyées aux sites qui sont DOWN. En conséquence, il n’y a pas de nouvelles tentatives.

En outre, si un nouveau nœud GSLB est ajouté, le nouveau nœud se voit attribuer la même adresse IP ADNS. Le routage dynamique met automatiquement à jour les tables de routage avec des itinéraires vers de nouveaux sites en fonction des algorithmes de routage. Par conséquent, vous n’avez pas à mettre à jour les enregistrements du serveur de noms DNS. Le déploiement de nouveaux sites GSLB est simplifié et plus rapide avec Anycast.

Comment configurer l’adresse IP ADNS en mode anycast

Vous devez activer le routage de l’hôte sur l’adresse IP ADNS dans Citrix ADC et définir le niveau RHI (Route Health Injection) approprié. La plupart du temps, il n’y aurait pas de serveurs virtuels sur l’IP de l’ADNS et par conséquent, le niveau RHI doit être sélectionné comme NONE. L’activation de la route de l’hôte sur l’adresse IP de l’ADNS en fait une route du noyau. Vous pouvez ensuite activer le routage dynamique de votre choix et configurer le protocole de routage pour redistribuer les routes du noyau.

Configuration IP de l’ADNS — Exemple

À l’invite de commandes, tapez ;

add service adns_public 5.5.5.5 ADNS 53

set ip 5.5.5.5 -hostRoute ENABLED -vserverRHILevel ALL_VSERVERS

Configuration BGP dans le site GSLB — Exemple

Site1#sh run
!
hostname Site1
!
log syslog
log record-priority
!
ns route-install bgp
!
interface lo0
 ip address 127.0.0.1/8
 ipv6 address fe80::1/64
 ipv6 address ::1/128
!
interface vlan0
 ip address 10.102.148.94/25
 ipv6 address fe80::e84c:f4ff:fe74:4588/64
!
interface vlan2
 ip address 172.18.30.15/24
!
router bgp 5
 redistribute kernel -----> redistributing the kernel routes
 neighbor 172.18.30.30 remote-as 4
 neighbor 172.18.30.30 advertisement-interval 1
 neighbor 172.18.30.30 timers 4 16
!
End

Site1#

Table de routage de site GSLB - Exemple

Site1#sh ip route
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, I - Intranet
       * - candidate default

K       5.5.5.5/32 via 0.0.0.0 ---------------------------------------> Kernel Route for ADNS
C       10.102.148.0/25 is directly connected, vlan0
C       127.0.0.0/8 is directly connected, lo0
B       172.18.10.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       172.18.20.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
C       172.18.30.0/24 is directly connected, vlan2
B       192.168.3.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       192.168.5.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       192.168.10.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h

Gateway of last resort is not set
Site1#

DNS Anycast

Vous pouvez utiliser Anycast DNS pour les serveurs virtuels proxy DNS sur Citrix ADC. Lorsqu’il y a plusieurs serveurs de noms DNS configurés, le résolveur DNS répond selon la méthode round robin. Par exemple, si le résolveur ne reçoit aucune réponse du premier serveur, il passe au second serveur après l’expiration de la valeur de délai d’expiration configurée, etc. Le passage du premier serveur au second serveur ajoute à la latence dans la résolution DNS. Si les résolveurs DNS sont configurés avec Anycast, cette latence peut être éliminée.

Configuration DNS — Exemple

À l’invite de commandes, tapez ;

add lb vserver dns DNS 5.5.5.50 53

set ip 5.5.5.50 -hostRoute ENABLED -vserverRHILevel ALL_VSERVERS

Prise en charge Anycast dans Citrix ADC