Règles de mise à l’échelle automatique

Effectué

Dans cette unité, nous allons examiner les concepts liés aux règles de mise à l’échelle automatique. Ensuite, dans l’exercice suivant, nous déclencherons les règles.

Règles

La mise à l’échelle automatique est basée sur un ensemble de conditions, de règles et de limites. Une condition de mise à l’échelle combine l’heure et un ensemble de règles de mise à l’échelle. Si l’heure actuelle se trouve dans la période définie dans la condition de mise à l’échelle, les règles de mise à l’échelle de la condition sont évaluées. Les résultats de cette évaluation déterminent s’il faut ajouter ou supprimer des instances. La condition de mise à l’échelle définit également les limites de mise à l’échelle pour le nombre maximal et le nombre minimal d’instances.

Grâce à la mise à l’échelle automatique du service Azure Spring Apps, vous pouvez augmenter ou réduire le nombre d’instances exécutées en fonction de métriques. Les règles de mise à l’échelle automatique traitent ces métriques. Vous pouvez créer des règles complexes qui se chevauchent en fonction de vos besoins.

Conditions de mise à l’échelle automatique

Il y a deux types de règles :

  • Règles basées sur les métriques
  • Règles basées sur la planification

Avec les règles basées sur des métriques, les applications et les ressources font l’objet d’un scale-out horizontal jusqu’au nombre nécessaire pour gérer la charge, sans dépasser les limites maximales que vous établissez. De la même façon, les applications et les ressources font l’objet d’un scale-in horizontal jusqu’au nombre nécessaire pour prendre en charge votre charge, sans descendre au-dessous des limites minimales que vous fixez.

Avec les règles basées sur la planification, vos applications subissent un scale-out ou un scale-in en fonction de la planification et des limites prédéfinies. Ce type de règle est utile dans les scénarios qui suivent souvent un modèle prévisible et si vous souhaitez établir une base de référence pour une mise à l’échelle basée sur davantage de métriques.

Vous pouvez créer plusieurs conditions de mise à l’échelle automatique pour gérer différentes métriques et planifications. Azure met automatiquement à l’échelle votre service quand l’une de ces conditions s’applique. Vous pouvez aussi définir une condition par défaut à utiliser si aucune des autres conditions ne s’applique. Cette condition est toujours active et n’a pas de planification.

Actions de mise à l’échelle automatique

Quand une règle de mise à l’échelle automatique détecte qu’une métrique a atteint un seuil, elle effectue une action de mise à l’échelle automatique. Une action de mise à l’échelle automatique peut être un scale-out ou un scale-in. Une action de scale-out augmente le nombre d’instances, tandis qu’une action de scale-in le réduit. Une action de mise à l’échelle automatique utilise un opérateur (tel que inférieur à, supérieur à, égal à, etc.) pour déterminer comment réagir au seuil. En règle générale, les actions de scale-out utilisent l’opérateur supérieur à pour comparer la valeur de la métrique au seuil. Les actions de scale-in comparent généralement la valeur de la métrique au seuil avec l’opérateur inférieur à. Une action de mise à l’échelle automatique peut également définir le nombre d’instances à un niveau spécifique, au lieu d’incrémenter ou de décrémenter le nombre disponible.

Une action de mise à l’échelle automatique a une période de refroidissement, exprimée en minutes. Pendant cet intervalle, la règle de mise à l’échelle ne peut pas être redéclenchée. Cette période de refroidissement permet au système de se stabiliser entre les événements de mise à l’échelle automatique. Le démarrage ou l’arrêt des instances prenant du temps, les métriques collectées peuvent ne pas montrer de modifications significatives pendant plusieurs minutes.

L’estimation durant un scale-in permet d’éviter les situations de bagottement, où les actions de scale-in et de scale-out vont et viennent sans cesse. Pensez à ce comportement quand vous choisissez les mêmes seuils pour le scale-out et le scale-in.