Compromis de l’optimisation des coûts

Lorsque vous concevez une charge de travail pour optimiser le retour sur investissement (ROI) sous des contraintes financières, vous devez d’abord définir clairement des exigences fonctionnelles et non fonctionnelles. Une stratégie de hiérarchisation du travail et de l’effort est essentielle. La fondation est une équipe qui a un sens fort de la responsabilité financière. L’équipe doit avoir une bonne compréhension des technologies disponibles et de leurs modèles de facturation.

Une fois que vous avez compris le retour sur investissement d’une charge de travail, vous pouvez commencer à l’améliorer. Pour améliorer le retour sur investissement, réfléchissez à la façon dont les décisions basées sur les principes de conception d’optimisation des coûts et les recommandations contenues dans la liste de vérification de la révision de conception pour l’optimisation des coûts peuvent influencer les objectifs et les optimisations d’autres piliers d’Azure Well-Architected Framework. Pour optimiser les coûts, il est important d’éviter de se concentrer sur une solution moins coûteuse. Les choix qui se concentrent uniquement sur la réduction des dépenses peuvent augmenter le risque de compromettre les objectifs métier et la réputation de votre charge de travail. Cet article décrit des exemples de compromis qu’une équipe de charge de travail peut rencontrer lors de l’examen du paramètre, de la conception et des opérations cibles pour l’optimisation des coûts.

Compromis entre l’optimisation des coûts et la fiabilité

Le coût d’une interruption de service doit être mesuré par rapport au coût de prévention ou de récupération d’une interruption de service. Si le coût des interruptions dépasse le coût de conception de la fiabilité, vous devez investir davantage pour prévenir ou atténuer les interruptions. À l’inverse, le coût des efforts de fiabilité peut être supérieur au coût d’une interruption, y compris des facteurs tels que les exigences de conformité et la réputation. Vous devez envisager un désinvestissement stratégique dans la conception de la fiabilité uniquement dans ce scénario.

Compromis : résilience réduite. Une charge de travail intègre des mesures de résilience pour tenter d’éviter et de résister à des types et à des quantités spécifiques de dysfonctionnements.

  • Pour économiser de l’argent, l’équipe de charge de travail peut sous-approvisionner un composant ou surcontrainer sa mise à l’échelle, ce qui rend le composant plus susceptible d’échouer lors de pics soudains de demande.

  • La consolidation des ressources de charge de travail (augmentation de la densité) pour l’optimisation des coûts rend les composants individuels plus susceptibles d’échouer pendant les pics de demande et pendant les opérations de maintenance telles que les mises à jour.

  • La suppression des composants qui prennent en charge les modèles de conception de résilience, comme un bus de messages, et la création d’une dépendance directe réduisent les fonctionnalités d’auto-conservation.

  • Économiser de l’argent en réduisant la redondance peut limiter la capacité d’une charge de travail à gérer les dysfonctionnements simultanés.

  • L’utilisation des références SKU budgétaires peut limiter l’objectif de niveau de service (SLO) maximal que la charge de travail peut atteindre.

  • La définition de limites de dépenses matérielles peut empêcher une charge de travail de mettre à l’échelle pour répondre à la demande légitime.

  • Sans outils ou tests de test de fiabilité, la fiabilité d’une charge de travail est inconnue et elle est moins susceptible d’atteindre les objectifs de fiabilité.

Compromis : Stratégie de récupération limitée. Une charge de travail fiable dispose d’un plan de réponse aux incidents et de récupération testés pour les scénarios de sinistre.

  • La réduction des tests ou de l’exploration du plan de récupération d’urgence d’une charge de travail peut affecter la vitesse et l’efficacité des opérations de récupération.

  • La création ou la conservation de moins de sauvegardes diminue les points de récupération possibles et augmente le risque de perte de données.

  • Un contrat de support moins coûteux peut augmenter le temps de récupération de la charge de travail en raison de retards potentiels dans l’assistance technique.

Compromis : complexité accrue. Une charge de travail qui utilise des approches simples et évite une complexité inutile ou suringénierie est généralement plus facile à gérer en termes de fiabilité.

  • L’utilisation de modèles cloud d’optimisation des coûts peut ajouter de nouveaux composants, tels qu’un réseau de distribution de contenu (CDN), ou transférer des tâches vers des appareils de périphérie et clients auxquels une charge de travail doit fournir des objectifs de fiabilité.

  • La mise à l’échelle basée sur les événements peut être plus compliquée à régler et à valider que la mise à l’échelle basée sur les ressources.

  • La réduction du volume de données et de la hiérarchisation des données par le biais d’actions de cycle de vie des données, éventuellement conjointement avec l’implémentation de points de données agrégés avant un événement de cycle de vie, introduit des facteurs de fiabilité à prendre en compte dans la charge de travail.

  • L’utilisation de différentes régions pour optimiser les coûts peut compliquer la gestion, la mise en réseau et la surveillance.

Compromis entre l’optimisation des coûts et la sécurité

Le coût d’une compromission de la confidentialité, de l’intégrité et de la disponibilité dans une charge de travail doit toujours être équilibré par rapport au coût de l’effort pour empêcher cette compromission. Un incident de sécurité peut avoir un large éventail d’impacts financiers et juridiques et nuire à la réputation d’une entreprise. L’investissement dans la sécurité est une activité d’atténuation des risques. Le coût de l’expérience des risques doit être équilibré par rapport à l’investissement. En règle générale, ne faites pas de compromis sur la sécurité pour obtenir des optimisations des coûts qui sont en dessous du point d’atténuation des risques responsables et convenus. L’optimisation des coûts de sécurité en droits des solutions est une pratique d’optimisation importante, mais tenez compte des compromis comme ceux-ci.

Compromis : contrôles de sécurité réduits. Les contrôles de sécurité sont établis sur plusieurs couches, parfois redondantes, pour fournir une défense en profondeur.

L’une des tactiques d’optimisation des coûts consiste à rechercher des moyens de supprimer des composants ou des processus qui accumulent des coûts unitaires ou opérationnels. N’oubliez pas que la suppression de composants de sécurité comme les exemples suivants pour économiser de l’argent a un impact sur la sécurité. Vous devez effectuer soigneusement une analyse des risques sur cet impact.

  • La réduction ou la simplification des techniques d’authentification et d’autorisation compromet le principe de vérification explicite de l’architecture de confiance zéro. Parmi ces simplifications, citons l’utilisation d’un schéma d’authentification de base comme les clés prépartagées au lieu d’investir du temps pour apprendre les approches OAuth du secteur, ou l’utilisation d’attributions simplifiées de contrôle d’accès en fonction du rôle pour réduire la surcharge de gestion.

  • La suppression du chiffrement en transit ou au repos pour réduire les coûts sur les certificats et leurs processus opérationnels expose les données à des violations potentielles de l’intégrité ou de la confidentialité.

  • La suppression ou la réduction des outils d’analyse ou d’inspection de la sécurité ou des tests de sécurité en raison des coûts et des investissements en temps associés peuvent avoir un impact direct sur la confidentialité, l’intégrité ou la disponibilité que les outils et les tests sont destinés à protéger.

  • La réduction de la fréquence des correctifs de sécurité en raison du temps opérationnel consacré au catalogage et à l’exécution des correctifs affecte la capacité d’une charge de travail à traiter les menaces en constante évolution.

  • La suppression de contrôles réseau tels que les pare-feu peut entraîner un échec du blocage du trafic entrant et sortant malveillant.

Compromis : augmentation de la surface d’exposition de la charge de travail. Le pilier Sécurité donne la priorité à une surface d’exposition réduite et contenue pour réduire les vecteurs d’attaque et la gestion des contrôles de sécurité.

Les modèles de conception cloud qui optimisent les coûts nécessitent parfois l’introduction de composants supplémentaires. Ces composants supplémentaires augmentent la surface d’exposition de la charge de travail. Les composants et les données qu’ils contiennent doivent être sécurisés, éventuellement d’une manière qui n’est pas déjà utilisée dans le système. Ces composants et données sont souvent soumis à la conformité. Voici des exemples de modèles qui peuvent introduire des composants :

  • Utilisation du modèle d’hébergement de contenu statique pour décharger des données vers un nouveau composant CDN.

  • Utilisation du modèle de clé valet pour décharger le traitement et sécuriser l’accès aux ressources sur le calcul du client.

  • L’utilisation du modèle de nivellement de charge Queue-Based pour lisser les coûts en introduisant un bus de messages.

Compromis : segmentation supprimée. Le pilier Sécurité donne la priorité à une segmentation forte pour prendre en charge l’application de contrôles de sécurité ciblés et pour contrôler le rayon d’explosion.

Le partage de ressources, par exemple dans des situations mutualisées ou la colocalisation de plusieurs applications sur une plateforme d’applications partagées, est une approche permettant de réduire les coûts en augmentant la densité et en réduisant la surface de gestion. Cette densité accrue peut entraîner des problèmes de sécurité comme ceux-ci :

  • Le déplacement latéral entre les composants qui partagent des ressources est plus facile. Un événement de sécurité qui compromet la disponibilité de l’hôte de la plateforme d’application ou d’une application individuelle a également un rayon d’explosion plus important.

  • Les ressources colocalisées peuvent partager une identité de charge de travail et avoir des pistes d’audit moins significatives dans les journaux d’accès.

  • Les contrôles de sécurité réseau doivent être suffisamment larges pour couvrir toutes les ressources colocalisées. Cette configuration viole potentiellement le principe de privilège minimum pour certaines ressources.

  • La colocalisation d’applications ou de données disparates sur un hôte partagé peut entraîner l’extension des exigences de conformité et des contrôles de sécurité aux applications ou aux données qui seraient autrement hors de portée. Cet élargissement de la portée nécessite un examen supplémentaire de la sécurité et des efforts d’audit sur les composants colocalisés.

Compromis entre l’optimisation des coûts et l’excellence opérationnelle

Compromis : capacités de cycle de vie de développement logiciel (SDLC) compromises. Le processus SDLC d’une charge de travail fournit la rigueur, la cohérence, la spécificité et la hiérarchisation de la gestion des modifications dans une charge de travail.

  • La réduction des efforts de test pour gagner du temps et les coûts associés au personnel, aux ressources et aux outils de test peut entraîner davantage de bogues en production.

  • Retarder le remboursement de la dette technique pour concentrer les efforts du personnel sur de nouvelles fonctionnalités peut entraîner des cycles de développement plus lents et une diminution globale de l’agilité.

  • Le fait de déprioritiser la documentation pour concentrer les efforts du personnel sur le développement de produits peut entraîner un temps d’intégration plus long pour les nouveaux employés, avoir un impact sur l’efficacité de la réponse aux incidents et compromettre les exigences de conformité.

  • Un manque d’investissement dans la formation entraîne une stagne des compétences, ce qui réduit la capacité de l’équipe à adopter des technologies et des pratiques plus récentes.

  • La suppression d’outils d’automatisation pour économiser de l’argent peut entraîner le temps que le personnel passe plus de temps sur les tâches qui ne sont plus automatisées. Elle augmente également le risque d’erreurs et d’incohérences.

  • La réduction des efforts de planification, comme l’étendue et la hiérarchisation des activités, pour réduire les dépenses peut augmenter la probabilité de retravailler en raison de spécifications vagues et d’une implémentation médiocre.

  • Éviter ou réduire les activités d’amélioration continue, telles que les rétrospectives et les rapports après incident, pour que l’équipe de charge de travail reste concentrée sur la livraison peut créer des opportunités manquées pour optimiser les processus de routine, non planifiés et d’urgence.

Compromis : observabilité réduite. L’observabilité est nécessaire pour garantir qu’une charge de travail dispose d’alertes significatives et d’une réponse aux incidents réussie.

  • La diminution du volume des journaux et des métriques pour économiser sur les coûts de stockage et de transfert réduit l’observabilité du système et peut entraîner les résultats suivants :

    • Moins de points de données pour la création d’alertes liées à la fiabilité, à la sécurité et aux performances.
    • Couvrir les lacunes dans les activités de réponse aux incidents.
    • Observabilité limitée dans les interactions ou les limites liées à la sécurité ou à la conformité.
  • Les modèles de conception d’optimisation des coûts peuvent ajouter des composants à une charge de travail, ce qui augmente sa complexité. La stratégie de supervision de la charge de travail doit inclure ces nouveaux composants. Par exemple, certains modèles peuvent introduire des flux qui couvrent plusieurs composants ou déplacer des processus du serveur vers le client. Ces modifications peuvent augmenter la complexité des informations de corrélation et de suivi.

  • La réduction des investissements dans les outils d’observabilité et la maintenance de tableaux de bord efficaces peuvent réduire la capacité d’apprendre de la production, valider les choix de conception et informer la conception du produit. Cette réduction peut également entraver les activités de réponse aux incidents et rendre plus difficile l’objectif de temps de récupération et le SLO.

Compromis : Maintenance différée. Les équipes de charge de travail sont censées maintenir le code, les outils, les packages logiciels et les systèmes d’exploitation corrigés et à jour de manière ponctuelle et ordonnée.

  • Le fait de laisser expirer des contrats de maintenance avec des fournisseurs d’outils peut entraîner des fonctionnalités d’optimisation, des résolutions de bogues et des mises à jour de sécurité manquées.

  • L’augmentation du temps entre les correctifs système pour gagner du temps peut entraîner des corrections de bogues manquées ou un manque de protection contre l’évolution des menaces de sécurité.

Compromis entre l’optimisation des coûts et l’efficacité des performances

Les piliers Optimisation des coûts et Efficacité des performances donnent la priorité à l’optimisation de la valeur d’une charge de travail. L’efficacité des performances met l’accent sur l’atteinte des objectifs de performance sans dépenser plus que nécessaire. L’optimisation des coûts met l’accent sur l’optimisation de la valeur produite par les ressources d’une charge de travail sans dépasser les objectifs de performances. Par conséquent, l’optimisation des coûts améliore souvent l’efficacité des performances. Toutefois, il existe des compromis en matière d’efficacité des performances associés à l’optimisation des coûts. Ces compromis peuvent rendre plus difficile l’atteinte des objectifs de performances et entraver l’optimisation continue des performances.

Compromis : ressources sous-approvisionnées ou sous-optimisées. Une charge de travail performante a suffisamment de ressources pour répondre à la demande, mais n’a pas de surcharge inutilisée excessive, même lorsque les modèles d’utilisation fluctuent.

  • La réduction des coûts en réduisant la taille des ressources peut priver les applications de ressources. L’application peut ne pas être en mesure de gérer des fluctuations significatives du modèle d’utilisation.

  • La limitation ou le retard de la mise à l’échelle pour limiter ou réduire les coûts peut entraîner une offre insuffisante pour répondre à la demande.

  • Les paramètres de mise à l’échelle automatique qui effectuent un scale-down agressif pour réduire les coûts peuvent laisser un service non préparé à des pics soudains de demande ou provoquer de fréquentes fluctuations de mise à l’échelle (flapping).

Compromis : absence d’optimisation au fil du temps. L’évaluation des effets des changements dans les fonctionnalités, des changements dans les modèles d’utilisation, des nouvelles technologies et des différentes approches sur la charge de travail est un moyen d’essayer d’augmenter l’efficacité.

  • Le fait de se concentrer sur le développement d’une expertise dans l’optimisation des performances afin de hiérarchiser la livraison peut entraîner des opportunités manquées d’amélioration de l’efficacité de l’utilisation des ressources.

  • La suppression des outils de test des performances d’accès ou d’analyse augmente le risque de problèmes de performances non détectés. Cela limite également la capacité d’une équipe de charge de travail à s’exécuter sur des cycles de mesure/amélioration.

  • Négliger les zones sujettes à la dégradation des performances, comme les magasins de données, peut progressivement détériorer les performances des requêtes et élever l’utilisation globale du système.

Explorez les compromis pour les autres piliers :