Architecture Autoscale pour Google Cloud
Citrix ADM gère la distribution du trafic client à l’aide de l’équilibrage de charge réseau Google. Le diagramme suivant illustre la manière dont la mise à l’échelle automatique se produit à l’aide de l’équilibreur de charge réseau Google en tant que distributeur de trafic :
L’équilibreur de charge réseau Google est le niveau de distribution vers les nœuds du cluster. L’équilibreur de charge réseau gère le trafic client et le distribue aux clusters Citrix ADC VPX. L’équilibreur de charge réseau envoie le trafic client aux nœuds de cluster Citrix ADC VPX qui sont disponibles dans le groupe de mise à l’échelle automatique Citrix ADM sur plusieurs zones.
Citrix ADM déclenche l’action de montée en puissance parallèle ou de mise à l’échelle au niveau du cluster. Lorsqu’un scale-out est déclenché, les machines virtuelles enregistrées sont provisionnées et ajoutées au cluster. De même, lorsqu’une mise à l’échelle est déclenchée, les nœuds sont supprimés et déprovisionnés des clusters Citrix ADC VPX.
Le groupe Citrix ADM Autoscale est un groupe d’instances Citrix ADC qui équilibrent la charge des applications en tant qu’entité unique et déclenchent la mise à l’échelle automatique en fonction des valeurs de paramètre de seuil configurées.
Fonctionnement de la mise à l’échelle automatique
L’organigramme suivant illustre le workflow de mise à l’échelle automatique :
Citrix ADM collecte les statistiques (CPU, mémoire et débit) à partir des clusters provisionnés à l’Autoscale pour chaque minute.
Les statistiques sont évaluées en fonction des seuils de configuration. En fonction des statistiques, le scale-out ou le scale-in est déclenché. Le scale-out est déclenché lorsque les statistiques dépassent le seuil maximum. La mise à l’échelle est déclenchée lorsque les statistiques fonctionnent en dessous du seuil minimum.
Si une scale-out est déclenchée :
-
Le nouveau nœud est provisionné.
-
Le nœud est attaché au cluster et la configuration est synchronisée entre le cluster et le nouveau nœud.
-
Le nœud est enregistré auprès de Citrix ADM.
-
Les nouvelles adresses IP des nœuds sont mises à jour dans l’équilibreur de charge réseau Google.
Si une mise à l’échelle est déclenchée :
-
Le nœud est identifié pour être supprimé.
-
Arrêtez les nouvelles connexions au nœud sélectionné.
-
Le nœud est détaché du cluster, désenregistré de Citrix ADM, puis déprovisionné de Google Cloud.
Remarque
Lorsque l’application est déployée, un jeu d’adresses IP est créé sur des clusters dans chaque zone de disponibilité. Ensuite, les adresses IP du domaine et de l’instance sont enregistrées auprès de l’équilibreur de charge réseau Google. Lorsque l’application est supprimée, les adresses IP du domaine et de l’instance sont désenregistrées de l’équilibreur de charge réseau Google. Ensuite, l’ensemble d’adresses IP est supprimé.
Exemple de scénario de mise à l’échelle automatique
Considérez que vous avez créé un groupe de mise à l’Autoscale nommé asg_arn dans une zone de disponibilité unique avec la configuration suivante.
-
Paramètres de seuil sélectionnés — Utilisation de la mémoire.
-
Limite de seuil définie pour la mémoire :
-
Limite minimale : 40
-
Limite maximale : 85
-
-
Durée de la visionnage : 2 minutes.
-
Temps de recharge : 10 minutes.
-
Temps d’attente pendant la mise hors service : 10 minutes.
-
Durée de vie du DNS : 10 secondes.
Une fois le groupe Autoscale créé, les statistiques sont collectées à partir du groupe Mise à Autoscale. La stratégie Autoscale évalue également si un événement de Autoscale est en cours. Si la mise à l’échelle automatique est en cours, attendez que cet événement se termine avant de collecter les statistiques.
La séquence des événements
-
L’utilisation de la mémoire dépasse le seuil de T2. Toutefois, la mise à l’échelle n’est pas déclenchée car elle n’a pas violé la durée de la montre spécifiée.
-
Le scale-out est déclenché à T5 après un dépassement d’un seuil maximum pendant 2 minutes (durée de la montre) en continu.
-
Aucune mesure n’a été prise pour la violation entre T5 et T10 car le provisionnement du nœud est en cours.
-
Le nœud est provisionné sur T10 et ajouté au cluster. La période de recharge a commencé.
-
Aucune mesure n’a été prise pour la violation entre le T10-T20 en raison de la période de recharge. Cette période garantit la croissance organique des instances d’un groupe Autoscale. Avant de déclencher la prochaine décision de mise à l’échelle, il attend que le trafic actuel se stabilise et se situe en moyenne sur l’ensemble d’instances actuel.
-
L’utilisation de la mémoire passe en dessous du seuil minimum à T23. Toutefois, la mise à l’échelle n’est pas déclenchée parce qu’elle n’a pas violé la durée de la montre spécifiée.
-
La mise à l’échelle est déclenchée à T26 lorsque le seuil minimum est dépassé pendant 2 minutes (durée de la montre) en continu. Un nœud du cluster est identifié pour le désapprovisionnement.
-
Aucune mesure n’a été prise pour remédier à la violation entre T26-T36, car Citrix ADM attend de vider les connexions existantes. Pour la mise à l’échelle automatique basée sur DNS, TTL est en vigueur.
Remarque
Pour la mise à l’échelle automatique basée sur le DNS, Citrix ADM attend la période TTL (Time-To-Live) spécifiée. Ensuite, il attend que les connexions existantes s’écoulent avant de lancer le désapprovisionnement des nœuds.
-
Aucune mesure n’a été prise pour la violation entre T37-T39 car le déprovisionnement des nœuds est en cours.
-
Le nœud est retiré du cluster et déprovisionné sur T40 .
Toutes les connexions au nœud sélectionné ont été drainées avant de lancer le déprovisioning du nœud. Par conséquent, la période de recharge est ignorée après la suppression de la mise en service du nœud.