Recommandations pour la planification de la capacité

S’applique à cette recommandation de liste de contrôle d’efficacité des performances d’Azure Well-Architected Framework :

PE :02 Effectuer la planification de la capacité. La planification de la capacité doit être effectuée avant qu’il n’y ait des changements prédits dans les modèles d’utilisation. Les changements prédits incluent les variations saisonnières, les mises à jour des produits, les campagnes marketing, les événements spéciaux ou les changements réglementaires.

Ce guide décrit les recommandations relatives à la planification de la capacité. La planification de la capacité fait référence au processus de détermination des ressources nécessaires pour atteindre les objectifs de performances de la charge de travail. Il s’agit d’estimer la quantité de ressources de calcul telles que le processeur, la mémoire, le stockage et la bande passante réseau nécessaires pour prendre en charge les exigences de performances de la charge de travail. La planification de la capacité permet d’éviter le sous-approvisionnement et de s’assurer que la charge de travail dispose de ressources suffisantes pour gérer les demandes de charge de travail attendues sans subir de dégradation des performances ou de goulots d’étranglement. Il permet également d’éviter les surprovisionnements et les coûts inutiles. Un manque de planification de la capacité peut entraîner des problèmes de performances, des goulots d’étranglement des ressources, des coûts accrus, une allocation inefficace, des défis de scalabilité et des performances imprévisibles de la charge de travail.

Définitions

Terme Définition
planification de la capacité Processus de prédiction des ressources dont une charge de travail a besoin pour atteindre ses objectifs de performances.
Spécifications fonctionnelles Les fonctionnalités et les fonctionnalités qu’une charge de travail doit avoir pour remplir son objectif prévu.
Exigences techniques Le code et l’infrastructure nécessaires pour répondre aux exigences fonctionnelles.
Analyse de tendance Analyse des données historiques pour prévoir la demande future.

Stratégies de conception

La planification de la capacité est un processus prospectif qui implique la prise de décisions en fonction des besoins et des modèles de charge de travail prévus. Son objectif est d’optimiser les performances des charges de travail dans les scénarios de charge continue et de pointe. En comprenant les changements d’utilisation, tels que les changements saisonniers ou les mises en production de produits, vous pouvez allouer des ressources de manière stratégique, ce qui vous permet d’éviter les tensions du système pendant les périodes de forte demande. Cette stratégie proactive réduit les interruptions et renforce l’efficacité des performances. En analysant les tendances d’utilisation passées et les données de croissance, vous pouvez prévoir les besoins à court et à long terme. Vous pouvez identifier les goulots d’étranglement potentiels et les problèmes de mise à l’échelle, ce qui garantit des performances de charge de travail cohérentes et efficaces.

Collecter des données de capacité

La collecte des données d’utilisation de la charge de travail implique la collecte et l’analyse d’informations sur la façon dont une charge de travail utilise les ressources. Vous devez collecter des données sur les modèles historiques pour les charges de travail existantes et les mesures prédictives pour les nouvelles charges de travail. Ce processus permet de traduire les objectifs métier en exigences techniques et est essentiel pour la prévision de la capacité. Tenez compte des recommandations suivantes :

Comprendre une charge de travail existante

La compréhension d’une charge de travail existante pour la planification de la capacité implique l’analyse des données historiques liées à la façon dont la charge de travail utilise les ressources. Il englobe des métriques telles que l’utilisation des ressources, les données de performances et les modèles de charge de travail. Cette compréhension garantit une allocation efficace des ressources, traduit les objectifs métier en exigences techniques et aide à identifier les goulots d’étranglement potentiels.

  • Comprendre les données : passez en revue les données historiques disponibles et comprenez leur structure, leur format et leur pertinence pour la planification de la capacité. La révision peut inclure des métriques d’utilisation des ressources, des modèles de charge de travail, des métriques de performances et d’autres points de données pertinents. Comprendre les processus métier et le caractère critique des applications. Identifiez les heures de pointe d’utilisation, la charge utilisateur, les taux de transaction et d’autres métriques pertinentes.

  • Nettoyer et prétraiter les données : préparez les données pour l’analyse en supprimant les incohérences, erreurs ou valeurs aberrantes. La préparation des données peut impliquer des techniques de nettoyage des données telles que l’imputation des données, la gestion des valeurs manquantes ou la normalisation.

  • Identifier les métriques clés : identifiez les métriques pertinentes pour la planification de la capacité. Les métriques peuvent inclure l’utilisation du processeur, l’utilisation de la mémoire, le débit réseau et les temps de réponse.

  • Identifier les goulots d’étranglement : mesurez le débit et les temps de réponse pour identifier les composants spécifiques de votre système qui peuvent devenir des goulots d’étranglement à mesure que la charge de travail augmente. Les demandes par seconde et l’utilisation du processeur de la base de données peuvent être de bons indicateurs de capacité.

  • Visualiser les données : créez des visualisations, comme des graphiques ou des graphiques, pour obtenir de meilleures informations sur les données historiques. Les visualisations peuvent vous aider à identifier des modèles, des tendances et des anomalies dans les données pour vous permettre de mieux comprendre le comportement de la charge de travail.

Comprendre une nouvelle charge de travail

Comprendre une nouvelle charge de travail pour la planification de la capacité fait référence à la prédiction des besoins en ressources d’une tâche future sans données historiques. Prédire les besoins futurs d’une nouvelle charge de travail sans données historiques peut être plus difficile. Ce processus vous permet d’allouer les ressources efficacement et d’aligner les allocations sur les objectifs de charge de travail lors de l’introduction de la charge de travail. Tenez compte des recommandations suivantes :

  • Étude de marché : la réalisation d’études de marché pour comprendre la demande de produits ou de services similaires peut fournir des informations précieuses sur la demande potentielle pour une nouvelle charge de travail. La recherche peut impliquer l’analyse des tendances du marché, la réalisation d’enquêtes ou l’étude des offres des concurrents.

  • Jugement d’expert : Les commentaires d’experts en la matière ou de professionnels qui ont de l’expérience dans le secteur peuvent vous aider à estimer la demande pour une nouvelle charge de travail. Leur expertise et leurs insights peuvent fournir des entrées précieuses pour la prévision.

  • Projets pilotes ou prototypes : des projets pilotes ou des prototypes à petite échelle peuvent vous aider à collecter des données et des commentaires en temps réel. Vous pouvez ensuite utiliser ces données pour informer le processus de planification de la capacité et ajuster la demande prévue.

  • Sources de données externes : les sources de données externes telles que les rapports de l’industrie, les études de marché ou les enquêtes auprès des clients peuvent fournir des informations supplémentaires pour l’estimation de la demande pour une nouvelle charge de travail. Ces sources peuvent offrir des informations précieuses sur les préférences des clients, les tendances du marché et les moteurs potentiels de la demande.

Prévision de la demande

La prévision de la demande implique l’utilisation des données de charge de travail pour prédire les besoins futurs d’un service ou d’un produit. Il est essentiel pour la planification de la capacité de garantir une allocation efficace des ressources, d’anticiper les modèles de croissance et de se préparer à une augmentation potentielle de la demande. Lorsque vous prévoyez la demande future, vous utilisez des données pour avoir une idée des besoins futurs. Vous appliquez l’analyse statistique, l’analyse des tendances ou des techniques de modélisation prédictive aux données dont vous disposez pour prévoir la demande future. Ces méthodes prennent en compte les modèles historiques ou anticipés et les projettent dans l’avenir pour fournir des estimations de la demande de charge de travail attendue. Pour prévoir la demande, envisagez les stratégies suivantes :

Compte pour différents scénarios

Lorsque vous effectuez la planification de la capacité, vous devez planifier différents scénarios qui peuvent se produire. Cette planification doit inclure à la fois des modèles de croissance prévisibles et des pics inattendus de la demande. Les modèles d’utilisation peuvent augmenter ou diminuer. Ils peuvent être organiques (plus ou moins d’utilisateurs) ou inorganiques (événement ou incident de sécurité). Vous devez effectuer la planification de la capacité avant les changements d’utilisation, à des moments clés :

  • Conception (prédiction)
  • Pics réguliers (08h00 de connexion pressée)
  • Launch (validation de prédiction)
  • Changement de modèle d’entreprise
  • Acquisition ou fusion
  • Push marketing
  • Changement saisonnier
  • Lancement de la fonctionnalité
  • Périodiquement

Utiliser des techniques de prédiction

La prévision de la demande future pour un service ou un produit implique l’utilisation de techniques telles que l’analyse statistique, l’analyse des tendances et la modélisation prédictive. Voici une vue d’ensemble de la façon dont vous pouvez utiliser ces techniques :

  • Analyse statistique : les méthodes statistiques peuvent vous aider à découvrir des modèles et des relations dans des données historiques. Vous pouvez utiliser ces modèles pour prévoir la demande future. Vous pouvez utiliser des techniques telles que l’analyse des séries chronologiques, l’analyse de régression et les moyennes mobiles pour identifier les tendances, la saisonnalité et d’autres modèles dans les données.

  • Analyse des tendances : l’analyse des tendances implique l’examen des données historiques afin d’identifier des modèles cohérents et d’extrapoler ces modèles à l’avenir. Par exemple, si la demande de charge de travail a augmenté de 10 % au cours de l’année écoulée, vous pouvez prévoir une poursuite de cette tendance. Lorsque vous analysez les données historiques de la demande sur une période donnée, vous pouvez identifier les tendances de croissance ou de réduction. Utilisez ces tendances comme base pour prévoir la demande future. L’analyse des tendances peut également identifier les effets d’événements ponctuels qui provoquent des changements rapides dans le trafic (inorganique). Par exemple, les versions de fonctionnalités peuvent constamment augmenter la demande de 5 %. Si vous avez quatre versions majeures par an, vous devez prévoir une croissance de 5 % à chaque fois.

  • Modélisation prédictive : la modélisation prédictive est le processus de création de modèles mathématiques qui utilisent des données historiques et d’autres variables pertinentes pour faire des prédictions sur la demande future. Vous pouvez utiliser des techniques telles que des algorithmes d’apprentissage automatique, des réseaux neuronaux ou des arbres de décision. Ces modèles peuvent prendre en compte plusieurs facteurs et variables pour fournir des prévisions plus précises.

Aligner les prévisions avec les objectifs de charge de travail

L’alignement des prévisions avec les objectifs de charge de travail implique d’ajuster les modèles de capacité prédictive pour s’assurer qu’ils répondent aux objectifs et aux exigences spécifiques d’une charge de travail donnée. Cet alignement garantit que les ressources sont correctement approvisionnées, ce qui empêche à la fois la sous-utilisation et les surcharges de charge de travail potentielles. Par exemple, si vous souhaitez prendre en charge une API permettant à 1 million d’utilisateurs de charger des fichiers de 1 Mo en une seconde, mais que les données actuelles montrent des vitesses d’écriture lentes, vous devez ajuster votre système. Il est essentiel de discuter avec les parties prenantes pour saisir les exigences de la charge de travail. Assurez-vous que vos plans s’alignent sur les promesses (SLA) de vos fournisseurs de services. Cet alignement garantit que votre capacité répond à la demande attendue et aide à identifier les zones du système qui peuvent nécessiter des modifications.

Déterminer les besoins en ressources

La détermination des besoins en ressources pour la planification de la capacité implique d’évaluer les ressources dont vous avez besoin pour répondre à la demande prévue. Par exemple, si une application prévoit une augmentation de 50 % du nombre d’utilisateurs au cours d’une campagne promotionnelle, elle peut avoir besoin d’allouer davantage d’instances cloud ou d’ajuster ses paramètres de mise à l’échelle automatique pour gérer la charge accrue.

Une charge de travail peut avoir de nombreuses ressources. Il n’existe donc aucune métrique à observer pour déterminer les besoins en ressources. Vous devez mesurer la capacité au niveau de la ressource pour obtenir des résultats significatifs. Estimez la demande attendue pour vos ressources en fonction des données historiques, des tendances du marché et des projections commerciales. Tenez compte du nombre de transactions, d’utilisateurs simultanés ou de toute autre métrique pertinente.

En fonction de la demande prévue, calculez les ressources nécessaires pour répondre à cette demande. Tenez compte de facteurs tels que la capacité du serveur, la bande passante réseau, la capacité de stockage et le personnel :

  • Capacité du serveur : déterminez la capacité de serveur requise en fonction du nombre estimé d’utilisateurs ou de transactions simultanées. Tenez compte de facteurs tels que le processeur, la mémoire et l’espace disque requis pour vous assurer que vos serveurs peuvent gérer la charge de travail attendue.

  • Bande passante réseau : évaluez la bande passante réseau dont vous avez besoin pour prendre en charge le niveau de trafic prévu. Vous devez inclure des taux de transfert de données entrants et sortants pour garantir une communication fluide et efficace entre les serveurs et les clients.

  • Capacité de stockage : estimez la quantité de données que la charge de travail génère ou traite pendant la demande prévue. Tenez compte de facteurs tels que la taille de la base de données, les exigences de stockage de fichiers et d’autres besoins de stockage de données spécifiques à votre application.

  • Personnel : évaluez les ressources humaines requises pour gérer et maintenir l’infrastructure, gérer le support client, effectuer la maintenance du système et garantir le bon fonctionnement. Prenez en compte des facteurs tels que la distribution de la charge de travail, l’ensemble des compétences et l’expertise requise.

Comprendre les limitations des ressources

Les ressources de votre charge de travail présentent des limitations de performances. Les limitations de performances s’appliquent aux services et aux références SKU au sein de chaque service. Vous devez comprendre les limitations des ressources de votre charge de travail et les prendre en compte dans vos décisions de conception. Par exemple, vous devez savoir si les limitations de ressources vous obligent à modifier les références SKU ou à modifier complètement les ressources.

Vous devez également identifier les limites accessibles. Elle fait référence à l’identification des seuils ou des limites maximales d’une charge de travail. Ces limites s’appliquent généralement à l’infrastructure (calcul, mémoire, stockage, réseau), aux applications (connexions aux bases de données simultanées, temps de réponse, disponibilité), au service (demandes par seconde) et à la mise à l’échelle. Lorsque la planification de la capacité identifie les limites accessibles, vous devez modifier la charge de travail avant que la limite ne crée un problème de performances. Les bases de référence des performances, la surveillance continue et les tests sont essentiels à la validation des limites et de la solution.

Compromis : Une planification de la capacité mal jugée peut entraîner un sur-approvisionnement ou un sous-approvisionnement des ressources. Le sur-provisionnement entraîne des coûts plus élevés. Un sous-approvisionnement peut entraîner des performances médiocres. Essayez de trouver le bon équilibre.

Animation Azure

Collecte des données de capacité et prévision de la demande : Azure Monitor vous permet de collecter et d’analyser des données de télémétrie à partir de vos applications et de votre infrastructure. Il prend en charge la surveillance de diverses ressources Azure, notamment les machines virtuelles, les conteneurs et les comptes de stockage. Les principaux outils incluent Application Insights et Log Analytics. En configurant la collecte de données et en définissant des métriques et des journaux que vous souhaitez surveiller, vous pouvez collecter des données de charge de travail précieuses à des fins d’analyse. Pour la surveillance du réseau, combinez Azure Monitor avec Azure Network Watcher, Azure Monitor Network Insights et la surveillance Azure ExpressRoute.

Azure Monitor vous permet d’analyser des données historiques et d’appliquer des techniques de prévision pour prédire les futures tendances de charge de travail et les besoins en capacité. Vous pouvez générer des prévisions qui peuvent vous aider à planifier la capacité. Ces prévisions permettent d’estimer la capacité du serveur, la bande passante réseau, la capacité de stockage et d’autres besoins en ressources à l’aide de modèles de demande prédits.

Détermination des besoins en ressources : étant donné qu’ils fournissent un large éventail de configurations, les outils et services Azure peuvent vous aider à définir des exigences techniques. Vous pouvez aligner vos exigences de charge de travail sur les ressources Azure disponibles, en veillant à sélectionner les composants et paramètres appropriés pour répondre à vos besoins fonctionnels.

Présentation des limitations des ressources : Azure fournit une documentation et des ressources pour vous aider à comprendre les limitations de performances de différents services et références SKU Azure. La prise en compte de ces limitations peut vous aider à prendre des décisions de conception éclairées et à optimiser votre architecture de charge de travail pour des raisons de performances et de rentabilité.

Azure fournit des options de scalabilité telles que la mise à l’échelle automatique, qui peuvent ajuster automatiquement les ressources en fonction de la demande de charge de travail. Vous pouvez mettre à l’échelle verticalement en augmentant la capacité d’une ressource à l’aide d’une plus grande taille de machine virtuelle, ou vous pouvez effectuer une mise à l’échelle horizontale en ajoutant de nouvelles instances d’une ressource. Les services Azure qui ont des fonctionnalités de mise à l’échelle automatique peuvent automatiquement effectuer un scale-out pour garantir la capacité pendant les pics de charge de travail et revenir à la normale lorsque la charge diminue. Il existe des limites de mise à l’échelle au sein de votre configuration et de vos services que vous devez connaître. Vous pouvez lire la documentation ou exécuter des tests. Azure fournit des outils tels que test de charge Azure, qui peuvent simuler la charge et différents modèles d’utilisation pour vous aider à collecter des données pertinentes sur votre charge de travail.

Liste de contrôle d’efficacité des performances

Reportez-vous à l’ensemble complet de recommandations.