Configurer les connexions persistantes

La persistance garantit qu’une série de demandes client pour un nom de domaine particulier est envoyée au même centre de données au lieu d’équilibrer la charge. Si la persistance est configurée pour un domaine particulier, elle a priorité sur la méthode GSLB configurée. La persistance est utile pour les déploiements qui traitent du commerce électronique, comme l’utilisation des cartes d’achat, où le serveur doit maintenir l’état de la connexion pour suivre la transaction. Pour maintenir l’état de la connexion, vous devez configurer la persistance sur un serveur virtuel. Si la persistance est configurée, l’appliance Citrix ADC sélectionne un centre de données pour traiter une demande client et transmet l’adresse IP du centre de données sélectionné pour toutes les demandes DNS suivantes. Si la persistance configurée s’applique à un site en panne, l’appliance Citrix ADC utilise une méthode GSLB pour sélectionner un nouveau site, et le nouveau site devient permanent pour les demandes ultérieures du client.

Le serveur virtuel GSLB est responsable de la persistance du site basée sur le DNS et il contrôle la persistance du site pour un service GSLB distant. L’appliance Citrix ADC prend en charge la persistance basée sur l’adresse IP source ou sur les cookies HTTP.

Lorsque vous suspendez un service physique avec un temps de retard, le service physique passe à l’état de transition hors service (TROFS). La persistance du site est prise en charge tant que le service est dans l’état TROFS. Autrement dit, si le même client envoie une demande pour le même service dans le délai spécifié après qu’un service est marqué TROFS, le même site GSLB (centre de données) assure la maintenance de la demande.

Remarque : si le proxy de connexion est spécifié comme méthode de persistance du site et si vous souhaitez également configurer la persistance des serveurs physiques, ne configurez pas la persistance SOURCEIP. Lorsque la connexion est effectuée par proxy, une adresse IP appartenant à l’appliance est utilisée, et non l’adresse IP réelle du client. Configurez des méthodes telles que la persistance des cookies ou la persistance basée sur des règles sur le serveur virtuel d’équilibrage de charge.

Configurer la persistance en fonction de l’adresse IP source

Avec la persistance Source-IP, lorsqu’une demande DNS est reçue dans un centre de données, l’appliance Citrix ADC recherche d’abord une entrée dans la table de persistance et, si une entrée pour le serveur DNS local existe et que le serveur mentionné dans l’entrée est configuré, l’adresse IP de ce serveur est envoyée comme réponse DNS.

Pour la première requête d’un client particulier, l’appliance Citrix ADC sélectionne le meilleur site GSLB pour la requête et envoie son adresse IP au client. Étant donné que la persistance est configurée pour l’adresse IP source du client, toutes les demandes ultérieures de ce client ou d’un autre serveur DNS local dans le même sous-réseau IP reçoivent l’adresse IP du site GSLB sélectionné pour la première requête.

Pour la persistance basée sur l’adresse IP source, le même ensemble d’identifiants de persistance doit être configuré sur les serveurs virtuels GSLB de tous les centres de données. Un identificateur de persistance est un nombre utilisé par les centres de données pour identifier un serveur virtuel GSLB particulier. Un cookie transmet l’identificateur de persistance, ce qui permet à l’appliance Citrix ADC d’identifier le domaine afin qu’il puisse transmettre toutes les demandes appropriées au même domaine. Lorsque la persistance est activée, les informations de persistance sont également échangées dans le cadre de l’échange de mesures.

Pour que l’appliance Citrix ADC puisse prendre en charge la persistance entre les sites, la persistance doit être activée sur les serveurs virtuels GSLB de tous les sites participants. Lorsque vous utilisez la persistance de l’adresse IP source sur l’identificateur réseau, vous devez configurer un masque de sous-réseau. Pour tout domaine, la persistance a priorité sur toute autre méthode GSLB configurée.

Pour configurer la persistance en fonction de l’adresse IP source à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set gslb vserver <name> -persistenceType (SOURCEIP|NONE) -persistenceId <positive_integer> [-persistMask <netmask>] –[timeout <mins>]

Exemple :

set gslb vserver vserver-GSLB-1 -persistenceType SOURCEIP -persistenceId 23 -persistMask 255.255.255.255 –timeout 2

Pour configurer la persistance en fonction de l’adresse IP source à l’aide de l’utilitaire de configuration

  1. Accédez à Gestiondu trafic > GSLB > Serveursvirtuels et double-cliquez sur le serveur virtuel GSLB dont vous souhaitez modifier la méthode (par exemple, vServer-GSLB-1).
  2. Cliquez sur la section Persistance et, dans la liste déroulante Persistance, sélectionnez SOURCEIP et définissez les paramètres suivants :
    • ID de persistance : ID persistenceID
    • Délai d’expiration : délai d’expiration
    • Longueur du masque de réseau IPv4 ou du masque IPv6 : masque persistant

Configurer la persistance en fonction des cookies HTTP

L’appliance Citrix ADC assure la persistance au niveau de la requête HTTP à l’aide du proxy de connexion et de la redirection HTTP. Avec ces méthodes de persistance, l’appliance utilise un cookie HTTP (appelé « cookie de site ») pour reconnecter le client au même serveur. L’appliance insère le cookie de site dans la première réponse HTTP.

Le cookie du site contient des informations sur le service GSLB sélectionné sur lequel le client a une connexion persistante. L’expiration du cookie est basée sur le délai d’expiration du cookie configuré sur l’appliance Citrix ADC. Si les noms de serveur virtuel ne sont pas identiques sur tous les sites, vous devez utiliser l’identificateur de persistance. Les cookies insérés sont conformes à la RFC 2109.

Lorsque l’appliance Citrix ADC répond à une demande DNS client en envoyant l’adresse IP du site GSLB sélectionné, le client envoie une requête HTTP à ce site GSLB. Le serveur physique de ce site GSLB ajoute un cookie de site à l’en-tête HTTP, et la persistance de la connexion est en vigueur.

Si l’entrée DNS dans le cache client expire, puis que le client envoie une autre requête DNS et est dirigé vers un autre site GSLB, le nouveau site GSLB utilise le cookie de site présent dans l’en-tête de requête client pour implémenter la persistance. Si la configuration GSLB sur le nouveau site utilise la persistance du proxy de connexion, le nouveau site crée une connexion au site GSLB qui a inséré le cookie du site, proxie la demande du client au site d’origine, reçoit une réponse du site GSLB d’origine, relaie cette réponse au client et ferme le connexion. Si la configuration GSLB utilise la persistance de redirection HTTP, le nouveau site redirige la requête vers le site qui a initialement inséré le cookie.

Remarque : la persistance du proxy de connexion peut être configurée uniquement pour les services locaux. Toutefois, la persistance du proxy de connexion doit être activée sur les services GSLB locaux et distants configurés pour le serveur virtuel GSLB.

Le proxy de connexion se produit lorsque les conditions suivantes sont remplies :

  • Les demandes sont envoyées à partir d’un domaine participant à GSLB. Le domaine est obtenu à partir de l’en-tête URL/hôte.
  • Les demandes sont envoyées à partir d’un service GSLB local dont l’adresse IP publique correspond à l’adresse IP publique d’un service actif lié au serveur virtuel GSLB.
  • Le service GSLB local a le proxy de connexion activé.
  • La demande inclut un cookie valide qui contient l’adresse IP d’un service GSLB distant actif.

Si l’une des conditions n’est pas remplie, le proxy de connexion ne se produit pas, mais un cookie de site est ajouté si le proxy de connexion est activé sur le service GSLB local ET :

  • Aucun cookie du site n’est fourni ; OR,
  • Le cookie du site fait référence à une adresse IP qui n’est pas un service distant GSLB actif ; OR,
  • Le cookie fait référence à l’adresse IP du serveur virtuel sur lequel la demande est reçue.

Voici les limites de l’utilisation des cookies du site proxy de connexion :

  • Les cookies de site ne fonctionnent pas pour les protocoles non-HTTP (S).
  • Si une requête HTTP est envoyée à un serveur virtuel de sauvegarde, le serveur virtuel n’ajoute pas de cookie.
  • Les cookies de site ne fonctionnent pas si l’authentification du client SSL est requise.
  • Sur le site local, les statistiques d’un service GSLB sur un site distant ne sont pas les mêmes que celles enregistrées pour ce service sur le site distant. Sur le site local, les statistiques d’un service GSLB distant sont légèrement supérieures aux statistiques enregistrées par le site distant pour ce même service.

La persistance de la redirection peut être utilisée uniquement :

  • Pour les protocoles HTTP ou HTTPS.
  • Si le nom de domaine est présent dans la requête (soit dans l’URL ou dans l’en-tête HOST), et que le domaine est un domaine GSLB.
  • Lorsque la demande est reçue sur un VIP de sauvegarde ou un service local GSLB qui est en panne.

Remarque

Dans une configuration parent-enfant GSLB, le proxy de connexion fonctionne comme prévu même lorsqu’un service GSLB n’est pas configuré sur un site enfant. Toutefois, si vous avez une configuration supplémentaire telle que l’authentification du client, l’insertion d’adresse IP du client ou toute autre exigence spécifique au SSL, vous devez ajouter un service GSLB explicite sur le site et le configurer en conséquence.

Pour plus d’informations sur la topologie parent-enfant, reportez-vous à la section Déploiement de topologie parent-enfant à l’aide du protocole MEP.

Pour définir la persistance en fonction des cookies HTTP à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set gslb service <serviceName> -sitePersistence (ConnectionProxy [-sitePrefix <prefix>] | HTTPredirect -sitePrefix <prefix>)

Exemple :

set gslb service service-GSLB-1 -sitePersistence ConnectionProxy
set gslb service service-GSLB-1 -sitePersistence HTTPRedirect -sitePrefix vserver-GSLB-1

Pour définir la persistance basée sur les cookies à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > GSLB > Services et sélectionnez le service que vous souhaitez configurer pour la persistance du site (par exemple, Service-GSLB-1).
  2. Cliquez sur la section Persistance du site et définissez la persistance en fonction des cookies.