REL 1: Comment gérez-vous les quotas et les contraintes de service ?
Pour les architectures de charge de travail basées sur le cloud, il existe des quotas de service (aussi appelés Service Limits). Le rôle de ces quotas est d'empêcher la mise en service accidentelle de plus de ressources que nécessaire et de limiter les taux de demandes sur les opérations d'API afin de protéger les services contre les abus. Il existe également des contraintes de ressource. Par exemple, la vitesse à laquelle vous pouvez transmettre des bits sur un câble de fibre optique, ou la quantité de stockage sur un disque physique.
Ressources
AWS Live re:Inforce 2019 - Service Quotas
What Is Service Quotas?
AWS Service Quotas (formerly referred to as service limits)
Amazon EC2 Service Limits
AWS Trusted Advisor Best Practice Checks (see the Service Limits section)
AWS
limit monitor on AWS answers
AWS Marketplace: CMDB products that help track limits
APN Partner: partners that can help with configuration management
Bonnes pratiques:
-
Connaissance des quotas de service et des contraintes: Vous connaissez vos quotas par défaut et les demandes d'augmentation de quota pour votre architecture de charge de travail. Vous savez également les contraintes de ressources – comme le disque ou le réseau – qui sont susceptibles d'avoir un impact.
-
Gestion des quotas de service entre les comptes et les régions: Si vous utilisez plusieurs comptes ou régions AWS, tâchez de demander les quotas appropriés dans tous les environnements dans lesquels vous exécutez vos charges de travail de production.
-
Prise en compte de quotas et de contraintes de services fixes par l'architecture: Soyez conscient des quotas de service et des ressources physiques immuables et concevez l'architecture de sorte à éviter que ces quotas n'affectent la fiabilité.
-
Surveillance et gestion des quotas: Évaluez votre utilisation potentielle et augmentez vos quotas de manière appropriée afin d'assurer une croissance planifiée de l'utilisation.
-
Automatisation de la gestion des quotas: Mettez en place des outils pour être informé à lorsque l'atteinte des seuils est proche. En utilisant les API AWS Service Quotas, vous pouvez automatiser les demandes d'augmentation des quotas.
-
Vérification qu'un écart suffisant existe entre les quotas actuels et l'utilisation maximale pour s'adapter au basculement: En cas de défaillance d'une ressource, il est possible qu'elle continue d'être comptabilisée pour les quotas jusqu'à ce qu'elle soit résiliée. Vérifiez que vos limites couvrent le chevauchement de toutes les ressources défaillantes avec des remplacements avant la résiliation des ressources défaillantes. Tenez compte du risque de défaillance d'une zone de disponibilité lors du calcul de cet écart.
Plan d'amélioration
Connaissance des quotas de service et des contraintes
What is Service Quotas?
- Sélection des comptes et régions pertinents en fonction de vos exigences de services, de la latence, des exigences réglementaires et de reprise après sinistre (DR)
- Consultation des quotas de service AWS dans la documentation publiée et dans Quotas
de service
AWS Service Quotas (formerly referred to as limits)- Identification de tous les services indispensables à votre charge de travail en prenant en compte le code de déploiement
- Utilisation d'AWS Config pour rechercher toutes les ressources AWS utilisées dans
vos comptes AWS
AWS Config Supported AWS Resource Types and Resource Relationships - Vous pouvez également utiliser votre AWS CloudFormation pour identifier vos ressources
AWS utilisées. Examinez les ressources créées dans la console AWS ou via la commande
list-stack-resources de l'interface de ligne de commande (CLI). Vous pouvez également
voir les ressources configurées pour être déployées directement dans le modèle.
Viewing AWS CloudFormation Stack Data and Resources on the AWS Management Console
AWS CLI for CloudFormation: list-stack-resources - Identifiez les quotas de service pertinents. Utilisez les informations accessibles par programmation par le biais de Trusted Advisor et Service Quotas.
Gestion des quotas de service entre les comptes et les régions
What is Service Quotas?
- Sélection des comptes et régions pertinents en fonction de vos exigences de services, de la latence, des exigences réglementaires et de reprise après sinistre (DR)
- Consultation des quotas de service AWS dans la documentation publiée et dans Quotas
de service
AWS Service Quotas (formerly referred to as limits)- Identification de tous les services indispensables à votre charge de travail en prenant en compte le code de déploiement
- Utilisation d'AWS Config pour rechercher toutes les ressources AWS utilisées dans
vos comptes AWS
AWS Config Supported AWS Resource Types and Resource Relationships - Vous pouvez également utiliser votre AWS CloudFormation pour identifier vos ressources
AWS utilisées. Examinez les ressources créées dans la console AWS ou via la commande
list-stack-resources de l'interface de ligne de commande (CLI). Vous pouvez également
voir les ressources configurées pour être déployées directement dans le modèle.
Viewing AWS CloudFormation Stack Data and Resources on the AWS Management Console
AWS CLI for CloudFormation: list-stack-resources - Identifiez les quotas de service pertinents. Utilisez les informations accessibles par programmation par le biais de Trusted Advisor et Service Quotas.
Prise en compte de quotas et de contraintes de services fixes par l'architecture
AWS Service Quotas
Surveillance et gestion des quotas
- Enregistrer la consommation des ressources actuelles (par exemple, les compartiments et les instances): Utilisez les opérations d'API de services, par exemple l'API DescribeInstances d'Amazon EC2, pour collecter les informations sur la consommation des ressources actuelle.
- Enregistrement de vos quotas actuels: Utilisation d'AWS Service Quotas, d'AWS Trusted Advisor et de la documentation AWS
- Utilisation d'AWS Service Quotas, un service AWS qui vous aide à gérer vos quotas pour plus de 100 services AWS depuis un seul emplacement
- Utilisation ses Service Limits de Trusted Advisor pour identifier vos limites de service actuelles
- Utilisation des opérations d'API de service pour identifier les quotas de service actuels, le cas échéant
- Garder un enregistrement des hausses de quota qui ont été demandées, et leur statut: Une fois qu'une augmentation de quota a été approuvée, veillez mettre à jour vos enregistrements pour refléter la modification du quota.
Automatisation de la gestion des quotas
- Utilisez les quotas de service et augmentez le service avec une solution automatisée
de surveillance des quotas, tels qu'AWS Limit Monitor ou une offre sur AWS Marketplace
What is Service Quotas?
AWS limit monitor - Configuration des réponses déclenchées en fonction des seuils de quota, à l'aide des
API Amazon SNS et AWS Service Quotas
- Configuration des seuils de limites
- Intégration à des événements de modification provenant d'AWS Config, de pipelines de déploiement, d'Amazon EventBridge ou d'une solution d'un tiers
- Configuration des déclencheurs pour prendre les mesures appropriées en ce qui concerne les notifications et contacter AWS Support, le cas échéant
- Test de l'automatisation
- Définition de seuils de quotas artificiellement bas pour tester les réponses
- Déclenchement manuel d'événements de modifications
- Exécution d'une journée de jeu pour tester le processus de modification de l'augmentation des quotas
Vérification qu'un écart suffisant existe entre les quotas actuels et l'utilisation
maximale pour s'adapter au basculement
- Identification des quotas de service en tenant compte de vos modèles de déploiement,
de vos exigences en matière de disponibilité et de la croissance de votre consommation
- Identification de vos exigences de fiabilité (également appelées votre « nombre de 9 »)
- Établissement de vos scénarios de défaillance (par exemple, perte d'un composant, d'une zone de disponibilité ou d'une région)
- Établissement de votre méthodologie de déploiement (par exemple, canari, bleu/vert, rouge/noir ou par propagation)
- Inclure une mémoire tampon appropriée (par exemple, 15 %) pour la limite actuelle
- Planification de la croissance de la consommation (par exemple, surveillance de vos tendances de consommation)
- Demande d'augmentations de quota si nécessaire: Planification du temps nécessaire pour l'approbation des demandes d'augmentation des quotas