Autoscaling : comment mettre en place sa stratégie ?

Autoscaling : comment mettre en place sa stratégie ?

Comment mettre en place une stratégie d’autoscaling adaptée aux besoins de votre entreprise ?

Le Cloud computing est en passe de devenir une norme pour les professionnels. Votre entreprise utilise certainement déjà des services hébergés sur le web. Or dans un écosystème Cloud, la clé de la performance (et de la rationalisation des coûts) réside dans une bonne gestion des ressources : à tout moment, vous devez veiller à ce que le nombre de machines ou de serveurs dédié à la tâche soit cohérent au regard du nombre de connexions simultanées.

Cette gestion sur-mesure des ressources porte un nom : l’autoscaling, ou « dimensionnement automatique », et c’est l’un des fondamentaux du Cloud public. De quoi s’agit-il et comment mettre en place une stratégie adaptée aux besoins de votre entreprise ?

Qu’est-ce que l’autoscaling ?

La scalabilité est la capacité d’un système à changer d’échelle en fonction des besoins : on injecte plus de ressources lorsque l’activité s’intensifie et on en retire lorsqu’elle diminue. Ainsi, pour une boutique physique, cela en revient à recruter plus de vendeurs en période de soldes.

Ce principe s’applique également aux services web : pour un site internet, la scalabilité désigne ainsi l’aptitude du système à changer de taille de façon à pouvoir absorber une hausse soudaine du trafic (donc du nombre de visiteurs présents en simultané) en ajoutant des ressources ou des serveurs au moment opportun.

Le problème, c’est qu’en raison de la constante fluctuation des ressources consommées par les plateformes web, il est virtuellement impossible de gérer ces ressources de façon manuelle tout en restant efficace. C’est là que la notion d’autoscaling entre en jeu.

En vertu de cette démarche, les ressources sont augmentées ou diminuées automatiquement en fonction de la consommation demandée par l’infrastructure pour supporter une charge de travail à un instant donné. À ce titre, on peut séparer cette approche en deux axes : 

Autoscaling

  • Scaling vertical : lorsqu’il s’agit d’augmenter la capacité d’une machine (en termes de CPU et de RAM).
  • Scaling horizontal : lorsqu’on accroît le nombre de machines utilisées (pour un applicatif web, par exemple).

Si votre site web doit absorber une brusque hausse de trafic, mettons pour passer de 1 000 à 10 000 visiteurs en l’espace de quelques minutes, l’autoscaling se déclenche afin d’augmenter le nombre de serveurs en fonctionnement. L’objectif ? Garantir la robustesse de l’applicatif, éviter les problèmes de latence, distribuer plus efficacement le trafic sur l’infrastructure (au travers d’un load balancer) et continuer à offrir une expérience utilisateur de qualité malgré le pic d’activité.

À l’inverse, lorsque l’activité se réduit, l’autoscaling permet de diminuer le volume de ressources affectées au fonctionnement de l’applicatif. De sorte qu’on fournit juste assez de ressources pour supporter une charge nominale et acceptable tout en conservant une certaine marge de manœuvre.

Quels sont les avantages de l’autoscaling ?

Avantages Autoscaling

Cette élasticité revêt un double avantage : 

  • Elle contribue à maximiser la disponibilité de l’applicatif et à garantir un délai de réponse satisfaisant pour les utilisateurs en période d’activité intense. C’est un bon point pour l’image de marque dans des secteurs comme les médias et le e-commerce.
  • Elle aide à optimiser le coût de l’hébergement en période creuse : moins de serveurs en fonctionnement, ce sont aussi des économies importantes réalisées.

Pour ces deux raisons, l’autoscaling répond idéalement aux besoins des entreprises dont les workloads sont caractérisés par leur variabilité – qu’elle soit ou non prévisible.

Cela concerne aussi bien les e-commerçants confrontés à des hausses de trafic pendant les événements calendaires (soldes, fêtes de fin d’année, etc.), les médias dont la charge est amenée à augmenter brusquement en fonction de l’actualité, et toutes les sociétés qui communiquent sur elles-mêmes (organisation d’événements, passages – programmés ou non – dans les médias…).

Au-delà de ces quelques exemples parmi les plus notables, la plupart des secteurs d’activité peuvent tirer parti d’une stratégie d’autoscaling : elle s’adresse également à des besoins hors web, notamment à des sociétés ayant des applicatifs internes avec de fortes charges.

Comment mettre en place une stratégie d’autoscaling efficace ?

Pour autant, l’autoscaling n’a rien de magique. Autrement dit : le dimensionnement automatique des ressources n’est jamais spontané. Il nécessite la mise en place d’une stratégie adaptée, nourrie par des indicateurs pertinents, afin de déterminer précisément les besoins en termes de ressources en fonction des périodes d’activité.

Une telle stratégie doit s’appuyer sur un service de monitoring. Les informations collectées permettent de mettre en relation la consommation des machines et la bande passante utilisée à tout moment. Elles contribuent à répondre aux questions qui suivent : 

  • Quelles sont les périodes pendant lesquelles le nombre de visiteurs du site augmente fortement ?
  • Quelles sont les plages horaires ou les intervalles de l’année où l’activité diminue drastiquement ?

En somme, ces informations sont les piliers sur lesquels votre stratégie d’autoscaling est édifiée, de façon à répondre avec un maximum de pertinence à vos besoins.

L’agent de monitoring est installé sur les machines à surveiller, qui par la suite remontent les informations recueillies vers le(s) serveur(s) de monitoring. Les données sont visibles sur un dashboard de métrologie et exploitables immédiatement. Ces processus sont entièrement automatisés et se déroulent en temps réel.

Néanmoins, pour être efficace, une stratégie d’autoscaling repose sur une amélioration continue. L’agent de monitoring récolte constamment de nouvelles métriques à intervalles réguliers – toutes les minutes pour des résultats plus probants.

Il en ressort deux bénéfices :

  • L’apprentissage est constant : à tout moment, de nouvelles informations viennent améliorer la précision du service. Au fil du temps, votre stratégie s’adapte avec toujours plus de rigueur à vos besoins, en augmentant et en diminuant les ressources nécessaires en fonction des périodes de l’année enregistrées comme intensives ou calmes.
  • Les imprévus sont pris en charge : un monitoring permanent contribue à éliminer les risques liés aux surcharges inattendues. Votre marque a été citée dans les médias et votre site web enregistre une hausse conséquente du volume de trafic ? Lorsque le seuil d’alerte informant un manque de ressources est atteint, l’autoscaling se déclenche afin d’absorber la charge supplémentaire.

À ce titre, une stratégie efficace peut aussi reposer un autoscaling « proactif » plutôt que « réactif ». Dans certains secteurs, comme c’est le cas du e-commerce, les enseignes ont une visibilité accrue quant aux périodes marquées par des pics d’activité, ce qui permet de prévoir des actions d’ajout de ressources en amont des hausses prévisibles.

Cette approche, que l’on pourrait qualifier de scaling « planifié », aide à anticiper les surcharges avant que l’autoscaling basé sur le monitoring n’ait le temps de faire effet – le scaling automatique n’étant pas instantané.

Le dimensionnement automatique des ressources adaptées aux besoins du workload est l’un des fondamentaux du Cloud public, et pour cause : sans autoscaling, il est virtuellement impossible de gérer les instances de manière pertinente et efficace en temps réel.

Pour autant, la mise en place d’une stratégie d’autoscaling doit être minutieusement préparée. Et le choix du prestataire d’infogérance joue un rôle crucial dans cette démarche : il est en effet essentiel de vous entourer d’un partenaire ayant de l’expérience dans votre secteur d’activité, comprenant vos besoins, et capable de travailler en toute transparence. Autant de vertus cardinales qui se trouvent au cœur de la proposition de valeur d’Iguane Solutions !

À retenir : 

  • L’autoscaling permet d’ajuster au mieux les ressources d’une plateforme afin d’optimiser les performances et de diminuer les coûts.
  • Une bonne politique d’autoscaling n’est pas figée mais évolutive : elle suppose une amélioration continue. Pour cette raison, elle doit s’appuyer sur des indicateurs de monitoring précis et fiables.
  • Scaling automatique ne veut pas dire scaling instantané. Il est donc parfois utile de prévoir des actions proactives.

 

Chez Iguane Solutions, nous aidons nos clients à déterminer les bons indicateurs et la bonne stratégie d’autoscaling à mettre en place. 

 

Vous souhaitez en savoir plus et échanger sur vos problématiques ?

Migration vers le Cloud, accompagnement 24/7, Kubernetes, FinOps