Citrix ADC

Configurer la mise à l’échelle automatique du groupe de services basé sur le domaine

Un groupe de services basé sur un domaine est constitué de membres dont les adresses IP sont obtenues en résolvant les noms de domaine des serveurs liés au groupe de services. Les noms de domaine sont résolus par un serveur de noms dont vous configurez les détails sur l’appliance. Un groupe de services basé sur un domaine peut également inclure des membres basés sur l’adresse IP.

Le processus de résolution de noms pour un serveur basé sur un domaine peut renvoyer plusieurs adresses IP. Le nombre d’adresses IP dans la réponse DNS est déterminé par le nombre d’enregistrements d’adresse (A) configurés pour le nom de domaine, sur le serveur de noms. Même si le processus de résolution de noms renvoie plusieurs adresses IP, une seule adresse IP est liée au groupe de services. Pour mettre à l’échelle ou réduire à l’échelle un groupe de services, vous devez lier et dissocier manuellement des serveurs basés sur le domaine supplémentaires vers et depuis le groupe de services, respectivement.

Toutefois, vous pouvez configurer un groupe de services basé sur le domaine pour qu’il évolue automatiquement sur la base de l’ensemble complet des adresses IP renvoyées par un serveur de noms DNS pour un serveur basé sur le domaine. Pour configurer la mise à l’échelle automatique, lors de la liaison d’un serveur basé sur un domaine à un groupe de services, activez l’option de mise à l’échelle automatique. Voici les étapes de configuration d’un groupe de services basé sur le domaine qui évolue automatiquement :

  • Ajoutez un serveur de noms pour résoudre les noms de domaine. Pour plus d’informations sur la configuration d’un serveur de noms sur l’appliance, reportez-vous à la section Ajout d’un serveur de noms.
  • Ajoutez un serveur basé sur le domaine. Pour plus d’informations sur l’ajout d’un serveur basé sur un domaine, reportez-vous à la section Ajout d’un serveur.
  • Ajoutez un groupe de services et associez le serveur basé sur le domaine au groupe de services, avec l’option de mise à l’échelle automatique définie sur DNS. Pour plus d’informations sur l’ajout d’un groupe de services, reportez-vous à la section Configuration de groupes de services.

Lorsqu’un serveur basé sur un domaine est lié à un groupe de services et que l’option de mise à l’échelle automatique est définie sur la liaison, un moniteur UDP et un moniteur TCP sont automatiquement créés et liés au serveur basé sur le domaine. Les deux moniteurs fonctionnent comme des résolveurs. Le moniteur TCP est désactivé par défaut et l’appliance utilise le moniteur UDP pour envoyer des requêtes DNS au serveur de noms afin de résoudre le nom de domaine. Si la réponse DNS est tronquée (l’indicateur TC est défini sur 1), l’appliance revient à TCP et utilise le moniteur TCP pour envoyer les requêtes DNS via TCP. Par la suite, l’appliance continue d’utiliser uniquement le moniteur TCP.

La réponse DNS du serveur de noms peut contenir plusieurs adresses IP pour le nom de domaine. Lorsque l’option de mise à l’échelle automatique est définie, l’appliance interroge chacune des adresses IP à l’aide du moniteur par défaut, puis inclut dans le groupe de services uniquement les adresses IP disponibles. Une fois les enregistrements d’adresse IP expirés, tels que définis par leurs valeurs de durée de vie (TTL), le moniteur UDP (ou le moniteur TCP, si l’appliance est revenue à utiliser le moniteur TCP) interroge le serveur de noms pour la résolution de domaine et inclut toute nouvelle adresse IP dans le groupe de services. Si une adresse IP faisant partie du groupe de services n’est pas présente dans la réponse DNS, l’appliance supprime cette adresse du groupe de services après la fermeture gracieuse des connexions existantes au membre du groupe, processus au cours duquel elle ne permet pas d’établir de nouvelles connexions avec le membre. Si un nom de domaine qui s’est résolu avec succès dans le passé donne lieu à une réponse NXDOMAIN, tous les membres du groupe de services associés à ce domaine sont supprimés.

Les membres statiques (basés sur l’adresse IP) et les membres basés sur le domaine à mise à l’échelle dynamique peuvent coexister dans un groupe de services. Vous pouvez également lier des membres ayant des noms de domaine différents à un groupe de services avec l’option de mise à l’échelle automatique définie. Toutefois, chaque nom de domaine associé à un groupe de services doit être unique au sein du groupe de services. Vous devez activer l’option de mise à l’échelle automatique pour chaque serveur basé sur le domaine que vous souhaitez utiliser pour la mise à l’échelle automatique du groupe de services. Si une adresse IP est commune à un ou plusieurs domaines, l’adresse IP n’est ajoutée qu’une seule fois au groupe de services.

Important

  • La mise à l’échelle automatique DNS est prise en charge dans un déploiement de cluster.
  • La surveillance des chemins d’accès pour les groupes de services à l’échelle automatique n’est pas prise en charge dans le déploiement de cluster.

Pour configurer un groupe de services pour qu’il évolue automatiquement à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez les commandes suivantes pour configurer le groupe de services et vérifier la configuration :

add serviceGroup <serviceGroupName> -autoScale (YES | NO)

show serviceGroup <serviceGroupName>

Exemple

Dans l’exemple suivant, server1 est un serveur basé sur le domaine. La réponse DNS contient plusieurs adresses IP. Cinq adresses sont disponibles et sont ajoutées au groupe de services.

> add serviceGroup servGroup server1 80 -autoScale YES
 Done
> sh servicegroup servGroup
       servGroup - HTTP
        State: ENABLED  Monitor Threshold : 0
              . . .
              . . .
        1)   192.0.2.31:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        2)   192.0.2.32:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        3)   192.0.2.36:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        4)   192.0.2.55:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.

        5)   192.0.2.80:80   State: UP       Server Name: server1 (Auto scale)    Server ID: None Weight: 1

                Monitor Name: tcp-default       State: UP
                Probes: 2       Failed [Total: 0 Current: 0]
                Last response: Success - TCP syn+ack received.
 Done

Pour configurer un groupe de services pour qu’il évolue automatiquement à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Groupes de services.
  2. Créez un groupe de services et définissez le mode de mise à l’échelle automatique sur DNS.

Remplacer les valeurs TTL

Remarque : Cette option est prise en charge par Citrix ADC 12.1 build 51.xx et versions ultérieures.

L’appliance Citrix ADC est configurée pour interroger périodiquement le serveur DNS pour toute mise à jour dans l’enregistrement SRV associé à l’application lors du démarrage de l’application. Par défaut, la périodicité de cette requête dépend de la TTL publiée dans l’enregistrement SRV. Dans les applications microservice ou cloud world, les déploiements changent de manière plus dynamique. Par conséquent, les proxys doivent être plus rapides dans l’absorption des modifications apportées au déploiement des applications. Par conséquent, il est recommandé aux utilisateurs de définir explicitement le paramètre TTL de service basé sur le domaine sur une valeur inférieure à la TTL d’enregistrement SRV et optimale pour votre déploiement. Vous pouvez remplacer la valeur TTL par deux méthodes :

  • Lors de la liaison d’un membre au groupe de services
  • Définition de la valeur TTL globalement à l’aide de la commande set lb parameter.

Dans le cas où la valeur TTL est configurée à la fois lors de la liaison du membre du groupe de services et également globalement, la valeur TTL spécifiée lors de la liaison du membre du groupe de services a priorité. Si la valeur TTL n’est pas spécifiée lors de la liaison d’un membre de groupe de services ou au niveau global, l’intervalle du moniteur DBS est dérivé de la valeur TTL dans la réponse DNS.

Remplacer les valeurs TTL à l’aide de l’interface de ligne de commande

  • Pour écraser la valeur TTL lors de la liaison, à l’invite de commandes, tapez :

     bind serviceGroup <serviceGroupName> (<serverName> [-dbsTTL <secs>])
    

    Exemple :

     bind servicegroup svc_grp_1 web_serv -dbsTTL 10
    
  • Pour écraser globalement la valeur TTL, à l’invite de commandes, tapez :

     set lb parameter [-dbsTTL <secs>]
    

    Exemple :

     set lb parameter -dbsTTL 15
    

Remplacer les valeurs TTL à l’aide de l’interface graphique

Pour remplacer la valeur TTL lors de la liaison :

  1. Accédez à Gestion du trafic > Équilibrage de charge > Groupes de services.

  2. Dans la page Groupes de services, sélectionnez le groupe de services que vous avez créé et cliquez sur Modifier.

  3. Dans la page Groupes de services d’équilibrage de charge, cliquez sur Membres du groupe de services.

  4. Dans la page Liaison de membres du groupe de services, sélectionnez le serveur que vous avez créé et cliquez sur Modifier.

  5. Dans TTL de service basé sur le domaine, entrez la valeur TTL.

Pour remplacer la valeur TTL au niveau global :

  1. Accédez à Gestion du trafic > Équilibrage de charge > Modifier les paramètres d’équilibrage de charge.

  2. Dans TTL de service basé sur le domaine, entrez la valeur TTL.

Remarque : Si la valeur TTL du serveur basé sur le domaine est définie sur 0, la valeur TTL du paquet de données est utilisée.

Spécification de différents serveurs de noms pour les liaisons de groupes de services et de noms de domaine

Remarque : Cette option est prise en charge à partir de Citrix ADC 12.1 build 51.xx et versions ultérieures.

Vous pouvez configurer différents serveurs de noms pour différents noms de domaine dans un groupe spécifique. La définition du paramètre NameServer est facultative lors de la liaison d’un serveur DBS au groupe de services. Lorsqu’un serveur de noms n’est pas spécifié lors de la liaison d’un membre au groupe de services, le serveur de noms configuré globalement est pris en compte.

Spécification de serveurs de noms lors de la liaison d’un serveur à des groupes de services à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

bind serviceGroup <serviceGroupName> (<serverName> [-nameServer <ip_addr>] [-dbsTTL <secs>])

Exemple :

bind servicegroup svc_grp_1 web_serv  -ns.nameserver.com 10.102.27.155 -dbsTTL 10

Spécification de serveurs de noms lors de la liaison d’un serveur à des groupes de services à l’aide de l’interface graphique graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Groupes de services.

  2. Dans la page Groupes de services, sélectionnez le groupe de services que vous avez créé et cliquez sur Modifier.

  3. Dans la page Groupes de services d’équilibrage de charge, cliquez sur Membres du groupe de services.

  4. Dans la page Liaison de membres du groupe de services, sélectionnez le serveur que vous avez créé et cliquez sur Modifier.

  5. Dans Serveur de noms, spécifiez le nom du serveur de noms auquel la requête pour le domaine lié doit être envoyée.

Configurer la mise à l’échelle automatique du groupe de services basé sur le domaine