ADC

Augmenter progressivement la charge sur un nouveau service avec un démarrage lent au niveau du serveur virtuel

Vous pouvez configurer l’appliance NetScaler pour augmenter progressivement la charge d’un service (le nombre de demandes que le service reçoit par seconde) immédiatement après que le service est ajouté à une configuration d’équilibrage de charge ou que son état passe de DOWN à UP (dans ce document, le terme « nouveau service » est utilisé dans les deux cas). Vous pouvez augmenter la charge manuellement avec les valeurs de charge et les intervalles de votre choix (démarrage lent manuel) ou configurer l’appliance pour augmenter la charge à un intervalle spécifié (démarrage lent automatisé) jusqu’à ce que le service reçoive autant de demandes que les autres services de la configuration. Pendant la période de mise en service du nouveau service, l’appliance utilise la méthode d’équilibrage de charge configurée.

Cette fonctionnalité n’est pas disponible dans le monde entier. Il doit être configuré pour chaque serveur virtuel. La fonctionnalité n’est disponible que pour les serveurs virtuels qui utilisent l’une des méthodes d’équilibrage de charge suivantes :

  • Robin à la ronde
  • Moins de connexion
  • Temps de réponse le plus court
  • Bande passante minimale
  • Moins de paquets
  • LRTM (méthode du temps de réponse le plus court)
  • Charge personnalisée

Pour cette fonctionnalité, vous devez définir les paramètres suivants :

  • Le nouveau taux de demandes de service, qui est le montant permettant d’augmenter le nombre ou le pourcentage de demandes envoyées à un nouveau service chaque fois que le taux est incrémenté. C’est-à-dire que vous spécifiez la taille de l’incrément en termes de nombre de demandes par seconde ou de pourcentage de la charge supportée, à ce moment-là, par les services existants. Si cette valeur est définie sur 0 (zéro), le démarrage lent n’est pas effectué sur les nouveaux services.

    Remarque : Dans un mode de démarrage lent automatisé, l’incrément final est inférieur à la valeur spécifiée si la valeur spécifiée entraînerait une charge plus lourde sur le nouveau service que sur les autres services.

  • Intervalle d’incrément, en secondes. Si cette valeur est définie sur 0 (zéro), la charge n’est pas incrémentée automatiquement. Vous devez l’incrémenter manuellement.

Avec un démarrage lent automatisé, un service est retiré de la phase de démarrage lent lorsque l’une des conditions suivantes s’applique :

  • Le tarif réel des demandes est inférieur au nouveau tarif des demandes de service.
  • Le service ne reçoit pas de trafic pendant trois intervalles d’incrémentation successifs.
  • Le taux de demandes a été augmenté 200 fois.
  • Le pourcentage de trafic que le nouveau service doit recevoir est supérieur ou égal à 100.

Avec le démarrage lent manuel, le service reste en phase de démarrage lent jusqu’à ce que vous le sortiez de cette phase.

Démarrage lent manuel

Si vous souhaitez augmenter manuellement la charge d’un nouveau service, ne spécifiez pas d’intervalle d’incrémentation pour le serveur virtuel d’équilibrage de charge. Spécifiez uniquement le nouveau taux de demande de service et les unités. Aucun intervalle n’étant spécifié, l’appliance n’incrémente pas la charge périodiquement. Il maintient la charge du nouveau service à la valeur spécifiée par la combinaison du nouveau taux de demande de service et des unités jusqu’à ce que vous modifiiez manuellement l’un des paramètres. Par exemple, si vous définissez le nouveau taux de demandes de service et les paramètres d’unité sur 25 et « par seconde », respectivement, l’appliance maintient la charge du nouveau service à 25 demandes par seconde jusqu’à ce que vous modifiiez l’un ou l’autre de ces paramètres. Lorsque vous souhaitez que le nouveau service quitte le mode de démarrage lent et reçoive autant de demandes que les services existants, définissez le nouveau paramètre de taux de demandes de service sur 0.

Par exemple, supposons que vous utilisiez un serveur virtuel pour équilibrer la charge de deux services, Service1 et Service2, en mode round robin. Supposons également que le serveur virtuel reçoit 240 demandes par seconde et qu’il répartit la charge de manière uniforme entre les services. Lorsqu’un nouveau service, Service3, est ajouté à la configuration, vous pouvez augmenter sa charge manuellement en utilisant des valeurs de 10, 20 et 40 demandes par seconde avant de lui envoyer la totalité de la charge. Le tableau suivant indique les valeurs auxquelles vous avez défini les trois paramètres.

Tableau 1. Valeurs des paramètres

Paramètre Valeur
Intervalle en secondes 0
Nouveau taux de demande de service 10, 20, 40 et 0, aux intervalles que vous choisissez
Unités correspondant au nouveau taux de demande de service Demandes par seconde

Lorsque vous définissez le nouveau paramètre de taux de demande de service sur 0, Service3 n’est plus considéré comme un nouveau service et reçoit sa part complète de la charge.

Supposons que vous ajoutiez un autre service, Service4, pendant la période de montée en puissance de Service3. Dans cet exemple, Service4 est ajouté lorsque le nouveau paramètre de taux de demande de service est défini sur 40. Par conséquent, Service4 commence à recevoir 40 demandes par seconde.

Le tableau suivant montre la répartition de la charge sur les services au cours de la période décrite dans cet exemple.

Tableau 2 Répartition de la charge sur les services lors de l’augmentation manuelle de la charge

  nouveau taux de demande de service = 10 req/sec (Service3added) nouveau taux de demande de service = 20 req/sec nouveau taux de demande de service = 40 req/sec (Service4added) taux de nouvelles demandes de service = 0 req/sec (les nouveaux services quittent le mode de démarrage lent)
Service1 115 110 80 60
Service2 115 110 80 60
Service3 10 20 40 60
Service4 - - 40 60
Nombre total de requêtes par seconde (charge sur le serveur virtuel) 240 240 240 240

Démarrage lent automatique

Si vous souhaitez que l’appliance augmente automatiquement la charge sur un nouveau service à intervalles spécifiés jusqu’à ce que le service puisse être considéré comme capable de gérer sa part entière de la charge, définissez le nouveau paramètre de débit de demande de service, le paramètre unités et l’intervalle d’incrémentation. Lorsque tous les paramètres sont définis sur des valeurs autres que 0, l’appliance incrémente la charge sur un nouveau service en fonction de la valeur du nouveau taux de demande de service, à l’intervalle spécifié, jusqu’à ce que le service reçoive toute sa part de la charge.

Par exemple, supposons que quatre services, Service1, Service2, Service3 et Service4, sont liés à un serveur virtuel d’équilibrage de charge, vserver1. Supposons également que vserver1 reçoit 100 demandes par seconde et qu’il répartit la charge de manière uniforme entre les services (25 demandes par seconde et par service). Lorsque vous ajoutez un cinquième service, Service5, à la configuration, vous souhaiterez peut-être que l’appliance envoie au nouveau service 4 demandes par seconde pendant les 10 premières secondes, 8 demandes par seconde pendant les 10 secondes suivantes, et ainsi de suite, jusqu’à ce qu’elle reçoive 20 demandes par seconde. Pour cette exigence, le tableau suivant indique les valeurs sur lesquelles vous définissez les trois paramètres :

Tableau 3. Valeurs des paramètres

Paramètre Valeur
Intervalle en secondes 10
Valeur d’incrémentation 4
Unités correspondant au nouveau taux de demande de service Demandes par seconde

Avec cette configuration, le nouveau service commence à recevoir autant de demandes que les services existants 50 secondes après son ajout ou son passage de DOWN à UP. Au cours de chaque intervalle de cette période, l’appliance distribue aux serveurs existants l’excédent de demandes qui auraient été envoyées au nouveau service en l’absence d’incréments progressifs. Par exemple, en l’absence d’incréments progressifs, chaque service, y compris Service5, aurait reçu 20 demandes par seconde. Par incréments progressifs, pendant les 10 premières secondes, lorsque Service5 ne reçoit que 4 demandes par seconde, l’appliance distribue l’excédent de 16 demandes par seconde aux services existants, ce qui donne le modèle de distribution illustré dans le tableau et la figure suivants sur une période de 50 secondes. Après la période de 50 secondes, Service5 n’est plus considéré comme un nouveau service et reçoit sa part normale de trafic.

Tableau 4. Modèle de distribution des charges sur tous les services pendant la période de 50 secondes immédiatement après l’ajout du Service5

  0 seconde 10 secondes 20 secondes 30 secondes 40 secondes 50 secondes
Req/sec pour Service1 25 24 23 22 21 20
Req/sec pour Service2 25 24 23 22 21 20
Req/sec pour Service3 25 24 23 22 21 20
Req/sec pour Service4 25 24 23 22 21 20
Req/sec pour Service5 0 4 8 12 16 20
Nombre total de requêtes par seconde (charge sur le serveur virtuel) 100 100 100 100 100 100

Figure 1. Graphique du modèle de répartition de charge sur tous les services pour la période de 50 secondes immédiatement après l’ajout du service5

Graphique de répartition des charges

Une autre exigence pourrait consister à ce que l’appliance envoie le Service5 25 % de la charge sur les services existants dans les 5 premières secondes, 50 % dans les 5 secondes suivantes, etc., jusqu’à ce qu’elle reçoive 20 demandes par seconde. Pour cette exigence, le tableau suivant indique les valeurs auxquelles vous avez défini les trois paramètres.

Tableau 5. Valeurs des paramètres

Paramètre Valeur
Intervalle en secondes 5
Valeur d’incrémentation 25
Unités correspondant au nouveau taux de demande de service Pourcentage

Avec cette configuration, le service commence à recevoir autant de demandes que les services existants 20 secondes après son ajout ou le passage de son état de DOWN à UP. La répartition du trafic pendant la période de montée en puissance du nouveau service est identique à celle décrite précédemment, où l’unité utilisée pour les incréments était le nombre de « demandes par seconde ».

Définir les paramètres de démarrage lent

Vous définissez les paramètres de démarrage lent à l’aide de la commande set lb vserver ou de la add lb vserver commande. La commande suivante permet de définir des paramètres de démarrage lent lors de l’ajout d’un serveur virtuel.

Pour configurer des incréments de charge par étapes pour un nouveau service à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez les commandes suivantes pour configurer des incréments progressifs de la charge d’un service et vérifier la configuration :

add lb vserver <name> <serviceType> <IPAddress> <port> [-newServiceRequest <positive_integer>] [<newServiceRequestUnit>] [-newServiceRequestIncrementInterval <positive_integer>]

show lb vserver <name>
<!--NeedCopy-->

Exemple

set lb vserver BR_LB -newServiceRequest 5 PER_SECOND -newServiceRequestIncrementInterval 10
Done

show lb vserver BR_LB
BR_LB (192.0.2.33:80) - HTTP Type: ADDRESS
State: UP
...
...
New Service Startup Request Rate: 5 PER_SECOND, Increment Interval: 10
...
...
Done
<!--NeedCopy-->

Pour configurer des incréments de charge par étapes pour un nouveau service à l’aide de l’utilitaire de configuration

  1. Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels, puis ouvrez un serveur virtuel.
  2. Dans Paramètres avancés, sélectionnez Méthode et définissez les paramètres de démarrage lent suivants :
    • Taux de demandes de démarrage de nouveaux services.
    • Nouvelle unité de demande de service.
    • Intervalle d’incrémentation.
Augmenter progressivement la charge sur un nouveau service avec un démarrage lent au niveau du serveur virtuel