Choisir la bonne instance cloud : une façon d’éviter le surdimensionnement
Les entreprises ne devraient pas avoir à payer pour les ressources cloud qu’elles n’utilisent pas. Les quelques recommandations listées dans cet article vous permettront d’adapter la taille de vos instances afin d’éviter le sur-provisioning.
Si une des spécificités du cloud est justement de donner accès à la quantité exacte de ressources nécessaires, évaluer ses besoins n’est pas chose aisée. Surévaluer ses besoins en ressources et dépenser à l’excès pour des capacités qui ne sont pas utiles est un problème courant qui peut avoir des effets négatifs sur les résultats financiers des entreprises.
Qu’est-ce que le surdimensionnement ?
Une des solutions consiste à adapter la taille des instances de cloud public pour éviter le gaspillage des ressources, mais tout en garantissant un support optimisé aux applications. Pour les experts, il est facile de tomber dans le piège du surdimensionnement (over-provisioning en VO) de ressources, qui consiste à réserver des capacités qui ne seront utilisées que partiellement.
Dans le cloud, le sous-dimensionnement peut s’avérer tout aussi coûteux. Outre les risques de panne applicative, le fait de devoir augmenter la quantité de ressources afin d’exécuter des systèmes d’entreprise peut peser lourd sur la facture. C’est une erreur commune qui a souvent lieu lors des premiers temps d’une migration vers le cloud ou au cours des deux premières années d’exploitation.
Certains témoignages font part d’une augmentation de 30 % de la facture par rapport aux prévisions effectuées en amont d’une migration justement parce que les organisations n’ont pas su dimensionner correctement leur besoin en ressources. Ce problème bien connu par les fournisseurs cloud (même s’ils ont parfois du mal à l’avouer) a généralement plusieurs racines. Les charges de travail à migrer ne sont pas forcément adaptées au cloud. La DSI peut avoir mal évalué la taille des instances nécessaires au bon fonctionnement d’une application. Cette application peut faire l’objet d’accès irrégulier. En outre, les utilisateurs en viennent au constat suivant. Dans le cloud, l’exploitation des ressources de stockage – et leur coût – est prévisible, ce qui est beaucoup moins le cas pour les ressources de calcul et de mise en réseau.
Toutefois, certaines pratiques peuvent contribuer à mieux s’y prendre.
Déterminer la bonne quantité de ressources cloud est identique à bien configurer des VM sur un serveur physique, explique Daniel Conde, analyste pour Enterprise Strategy Group. « Vous souhaitez à tout prix éviter le surdimensionnement, car cela gaspille de l’argent. L’astuce consiste à identifier les ressources dont votre application a besoin et à créer l’instance qui lui convient le mieux. » En ce sens, le cloud présente le même problème que dans les datacenters des entreprises : la sous-utilisation des serveurs.
Ne pas négliger le facteur humain
Pour éviter le surdimensionnement et le gaspillage de ressources cloud, il est également nécessaire de changer les mentalités de l’entreprise. « Dans l’ancien modèle, sur site, où les dépenses en capital sont clé, nous passions tout notre temps à déterminer… ce que coûterait un achat, parce qu’il y avait un grand risque de mal dimensionner les capacités et de rester bloqué », souligne Eric Hanselman, analyste chez 451 Research.
Le modèle du cloud a bouleversé ce concept : une fois la migration terminée et les systèmes sources décommissionnés, les dépenses sont toutes du côté opérationnel, et les entreprises ont la possibilité de redimensionner les ressources à volonté. Par conséquent, les équipes IT doivent réévaluer en permanence l’utilisation de ces ressources pour éviter les dépenses excessives et le surdimensionnement.
Ce facteur humain est clé dans le contrôle des coûts des instances et ne doit pas être négligé. Il convient ainsi de mettre en place les bonnes autorisations en matière de contrôle des activités opérationnelles. « Lorsque j’ai commencé, il y avait plus de 100 personnes autorisées ; nous avons maintenant réduit ce nombre à seulement six », illustre Lloyd Dawson, vice-président en charge de l’IT chez PSC, un fournisseur de services américain spécialisé dans les utilités. La réduction du nombre d’utilisateurs autorisés permet d’assurer une meilleure visibilité de l’utilisation et des dépenses.
Évaluer le type d’application
Choisir une instance adaptée pour une application donnée revient plus ou moins à la même chose que ce que l’on met en place dans les datacenters virtualisés depuis plus de 10 ans, rappelle J. Craig Lowery, directeur de recherche chez Gartner. Cependant, il existe une différence de taille : les applications plus anciennes ne peuvent exploiter que très faiblement l’élasticité du cloud. Sans workload uniforme, il en coûtera plus cher d’exécuter une application dans le cloud que sur site, note l’analyste.
Le cloud offre la possibilité d’acheter et de libérer des ressources au fil du temps, suivant l’évolution des besoins. « C’est cela l’élasticité. L’exploiter est la clé pour optimiser les coûts et la performance », ajoute-t-il. La bonne dimension d’une instance dépend de l’application, et la répartition de la charge peut être uniforme ou très variable. « Idéalement, la taille de l’instance doit s’adapter à ces fluctuations », a-t-il dit.
Une application, qui ne se dimensionne que verticalement, laisse peu de choix à l’administrateur, si ce n’est de la redémarrer sur une instance plus grande ou plus petite. « Cela peut entraîner une interruption de service, ce qui conduit à des coûts supplémentaires, surtout si les utilisateurs sont insatisfaits », commente J. Craig Lowery. Par conséquent, les entreprises effectuent rarement ce processus de redémarrage ; elles utilisent plutôt le surdimensionnement, comme une sorte de police d’assurance.
Pour dimensionner une application horizontalement, les administrateurs ont la possibilité de déployer plus d’une instance pour absorber la charge. « Dans ce cas, nous pouvons identifier la taille optimale de l’instance et son coût, et changer le nombre d’instances en cours d’exécution en fonction des variations », affirme encore l’analyste.
De son côté, la mise à l’échelle automatique (autoscaling) assure la performance et la disponibilité, sans qu’il soit nécessaire de surdimensionner. Cela traduit le mieux le concept d’élasticité propre au cloud, et c’est une caractéristique clé du développement d’applications natives pour le cloud, ajoute-t-il.
Le bon dimensionnement (right sizing en VO), consistant à trouver la bonne instance et à optimiser les charges de travail pour le cloud n’est pas un travail aisé. Les coûts et les quotas de ressource peuvent varier d’une région cloud à une autre.
Quant à l’autoscaling, surtout quand il s’agit d’exécuter des workloads dont le comportement est difficilement prévisible, il n’est pas une solution miracle. Sans une gouvernance claire et des contrôles automatisés, cette tâche est complexe à large échelle.
Des tests pour éviter le surdimensionnement
En conséquence, il est toujours important de planifier et d’anticiper les besoins. Parce qu’il est facile de mettre en place des environnements de test dans le cloud, les entreprises ont ainsi la possibilité de mettre à l’épreuve plusieurs configurations, déclare Eric Hanselman. « Les environnements cloud comportent souvent beaucoup d’outils de diagnostics intégrés, ce qui peut vous aider à comprendre ce qui se passe au niveau du traitement, de la mémoire et même de l’utilisation des ressources ».
À partir de là, les équipes IT peuvent évaluer si elles doivent, oui ou non, reconfigurer ou redévelopper une application pour tirer parti des fonctionnalités du cloud comme l’autoscaling, poursuit-il.
« La façon la moins coûteuse de tirer parti du cloud est de bâtir des applications avec un grand nombre de petits composants. Vous pouvez ainsi redimensionner lors des périodes basses », dit-il. Là, encore, point de solutions miracles. Une telle pratique consiste généralement à adopter une architecture à N couches ou de découper un monolithe en microservices. Or la gestion fine des ressources attribuée à chacun de ces éléments applicatifs réclame une attention particulière. Les outils de supervision des fournisseurs ne suffisent pas à gouverner une telle approche.