Automatisez les plannings d'arrêt et de démarrage - AWS Conseils prescriptifs

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Automatisez les plannings d'arrêt et de démarrage

Présentation

L'Instance Scheduler activé AWS peut vous aider à réduire les coûts opérationnels en automatisant le démarrage et l'arrêt des instances Amazon EC2 et Amazon Relational Database Service (Amazon). RDS Si vous laissez toutes vos instances fonctionner à pleine capacité en continu, vous pourriez finir par payer pour des ressources qui ne sont pas utilisées. Le planificateur d'instances activé vous AWS permet de désactiver les instances lorsqu'elles ne sont pas nécessaires, par exemple en dehors des heures de bureau, le week-end ou à d'autres périodes où l'utilisation est faible. Cela peut permettre de réaliser d'importantes économies au fil du temps.

Le planificateur d'instances activé permet AWS également la planification d'instances entre comptes, le balisage automatique et la possibilité de configurer des plannings ou des périodes à l'aide d'une interface de ligne de commande ou de la fenêtre de maintenance. AWS Systems Manager Ces fonctionnalités peuvent vous aider à gérer vos instances de manière plus efficace et à suivre et répartir les coûts avec précision entre différents projets ou équipes.

Études de cas

Prenons l'exemple d'une entreprise qui utilise Instance Scheduler AWS dans un environnement de production pour arrêter automatiquement les instances en dehors des heures de bureau tous les jours. Si cette entreprise laisse toutes ses instances fonctionner à pleine capacité, elle peut réaliser jusqu'à 70 % d'économies sur les instances qui ne sont nécessaires que pendant les heures normales de bureau. Le graphique suivant montre comment l'utilisation hebdomadaire est réduite de 168 heures à 50 heures.

Tableau de réduction de l'utilisation hebdomadaire

Prenons un autre exemple. La société d'électricité Jamaica Public Service Company Limited (JPS) a migré sa base de données vers AmazonRDS. JPSUtilise désormais Amazon EC2 pour héberger API des services et exécuter d'autres applications. En effetJPS, Instance Scheduler AWS est devenu l'outil clé pour gérer les environnements hors production. JPSa utilisé le planificateur d'instances AWS pour réduire les coûts de développement et gérer les EC2 instances en fonction des besoins de l'équipe et des horaires de travail. Cela a permis JPS de réduire les coûts de 40 %. Pour plus d'informations, consultez l'étude de AWS cas Jamaica Public Service migre efficacement vers le cloud et réduit les coûts de 40 % à l'aide d' AWS Instance Scheduler.

Scénario d'optimisation des coûts

L'exemple de scénario suivant permet d'illustrer les avantages financiers liés à l'utilisation d'Instance Scheduler sur. AWS Dans ce scénario, une grande entreprise de vente au détail de Singapour déploie deux environnements Windows sur AmazonEC2. Le premier environnement, connu sous le nom de charge de travail A, est utilisé par l'équipe marketing pour analyser les transactions en temps réel pendant que les magasins sont ouverts. Le second environnement, connu sous le nom de charge de travail B, est réservé à l'équipe comptable, qui travaille uniquement pendant les heures normales de bureau. Le calendrier d'exploitation actuel des deux environnements (24 heures sur 24, 7 jours sur 7) n'est pas idéal compte tenu des modèles d'utilisation actuels et doit être optimisé pour réduire les coûts d'exploitation de l'entreprise.

Le schéma suivant montre le coût mensuel avant optimisation.

Coût mensuel avant optimisation

Par exemple, le mois de mars compte 31 jours, dont 23 jours de semaine. Si l'équipe marketing utilise Instance Scheduler AWS et ne fait fonctionner ses instances qu'en cas de besoin (c'est-à-dire 321 heures par mois au lieu de 730 heures par mois), elle pourrait potentiellement économiser 932,52$ par mois. Cela représente une réduction de 56 % des coûts d'exploitation. L'équipe comptable peut également bénéficier d'avantages significatifs, la durée d'utilisation de ses instances passant de 730 heures par mois à 230 heures. Cela se traduit par une réduction de 1 140$, soit 68,5 %. L'entreprise pourrait économiser un total combiné de 2 072,52$ par mois (soit une réduction de 62 %), soit 24 870,24$ par an.

Le schéma suivant montre le coût mensuel après optimisation.

Coût mensuel après optimisation
Note

Le prix de cet exemple a été déterminé en utilisant le AWS Pricing Calculatoren mars 2023.

Recommandations d'optimisation des coûts

Cette section explique comment déployer et configurer le planificateur d'instances sur la AWS base de l'exemple de scénario décrit dans la section précédente consacrée aux scénarios d'optimisation des coûts. Nous vous recommandons de suivre les étapes suivantes pour optimiser vos coûts en utilisant le planificateur d'instance sur : AWS

  1. Lancez la pile Instance Scheduler

  2. Configuration des périodes

  3. Configuration des plannings

  4. Baliser les instances de

Le schéma d'architecture suivant montre ce qui est créé dans la pile AWS Cloud by the Instance Scheduler.

Architecture de pile du planificateur d'instances

Le diagramme montre les étapes du flux de travail suivantes :

  1. Un AWS CloudFormation modèle configure un CloudWatch événement Amazon selon un intervalle que vous définissez. Cet événement invoque une AWS Lambda fonction. Lors de la configuration, vous définissez les comptes Régions AWS et. Vous définissez également une balise personnalisée qu'Instance Scheduler AWS utilise pour associer les plannings aux EC2 instances Amazon, RDS instances Amazon et clusters applicables.

  2. Les valeurs de configuration du planning sont stockées dans Amazon DynamoDB, et la fonction Lambda les récupère à chaque exécution. Vous pouvez ensuite appliquer la balise personnalisée aux instances applicables.

  3. Lors de la configuration initiale de l'Instance Scheduler, vous définissez une clé de balise pour identifier les instances Amazon et EC2 Amazon RDS applicables. Lorsque vous créez un calendrier, le nom que vous spécifiez est utilisé comme valeur de balise identifiant le calendrier que vous souhaitez appliquer à la ressource balisée.

Lancez la pile Instance Scheduler

Cette section explique comment lancer la CloudFormation pile pour le planificateur d'instances sur. AWS

Note

Vous êtes responsable du coût de l' Services AWS utilisation lors de l'exécution d'Instance Scheduler sur. AWS En janvier 2023, le coût d'exécution de cette solution avec les paramètres par défaut dans la us-east-1 région était d'environ 9,90$ par mois pour les frais Lambda, ou moins si vous disposez d'un crédit d'utilisation mensuel pour le niveau gratuit Lambda. Pour plus d'informations, consultez la section Coûts du guide d' AWS implémentation du planificateur d'instance dans la bibliothèque de AWS solutions.

Pour lancer la pile de planificateurs d'instances, procédez comme suit.

  1. Connectez-vous au AWS Management Consoleet choisissez Launch solution (modèle téléchargeable) pour lancer le instance-scheduler-on-aws.template CloudFormation modèle.

    Note

    Vous pouvez également télécharger le modèle comme point de départ pour votre propre implémentation.

  2. Le modèle est lancé par défaut dans la région USA Est (Virginie du Nord). Pour lancer le planificateur d'instance dans une autre région, utilisez le sélecteur de région dans la barre de navigation de la console.

    Note

    Cet exemple utilise la région Asie-Pacifique (Singapour).

  3. Sur la page Créer une pile, dans la section Prérequis - Préparer le modèle, vérifiez que l'option Le modèle est prêt est sélectionnée. Dans la section Source du modèle, vérifiez que l'URLoption Amazon S3 est sélectionnée.

  4. Vérifiez que le modèle correct URL se trouve dans la zone de URL texte Amazon S3, puis choisissez Next.

  5. Sur la page Spécifier les détails de la pile, attribuez un nom à votre pile de solutions. Pour plus d'informations sur les limitations relatives aux caractères de dénomination, reportez-vous IAM à la section STSLimits de la documentation AWS Identity and Access Management (IAM). Le nom de la pile pour l'exemple présenté dans ce guide est appeléMyInstanceScheduler.

    Note

    Le nom de la pile ne peut pas contenir plus de 28 caractères.

  6. Sous Paramètres, passez en revue les paramètres du modèle et modifiez-les si nécessaire.

  7. Choisissez Suivant. Sur la page Configurer les options de pile, choisissez Suivant.

  8. Sur la page Révision, vérifiez et confirmez les paramètres. Cochez la case indiquant que le modèle créera des IAM ressources.

  9. Choisissez Créer pour déployer la pile.

Configuration des périodes

Après avoir déployé le CloudFormation modèle, la solution crée une table DynamoDB qui contient des exemples de règles et de calendriers de période que vous pouvez utiliser comme référence pour créer vos propres règles et calendriers de période personnalisés. Pour un exemple de configuration de période, consultez la section Exemples de plannings dans le planificateur d'instances sur AWS la documentation.

Pour terminer l'étape de ce scénario, vous devez générer des périodes correspondant à chaque charge de travail et à leurs besoins spécifiques. Par exemple :

Period 1 (Workload A): Name: retail-hours Days: Monday to Sunday Hours: 1100 - 2300 Period 2 (Workload B): Name: office-hours Days: Monday to Friday Hours: 0800 - 1800

Pour configurer les périodes, procédez comme suit :

  1. Connectez-vous à la console DynamoDB et assurez-vous que vous vous trouvez dans la même région que celle dans laquelle vous avez lancé le modèle pour CloudFormation le planificateur d'instances. AWS

  2. Dans le volet de navigation, choisissez Tables, puis sélectionnez la table nommée ConfigTable.

  3. Choisissez Explorer les éléments de table.

  4. Pour créer une période pour les heures de bureau, sélectionnez une période pour l'élément des heures de bureau.

  5. Sur la page Modifier l'élément, remplacez la valeur de begintime par 0800 et celle de endtime par 1800. Laissez la valeur par défaut en place pour les jours de semaine.

    Note

    Les valeurs de début et de fin déterminent le moment où les instances doivent être démarrées et arrêtées, tandis que la valeur des jours de la semaine détermine les jours de la semaine auxquels ce calendrier s'applique (du lundi au vendredi pour cet exemple).

  6. Sélectionnez Enregistrer les modifications.

  7. Pour dupliquer la période des heures de bureau et l'utiliser pour créer une nouvelle période pour les heures de vente au détail, sélectionnez une période pour l'élément des heures de bureau. Ensuite, dans le menu Actions, choisissez Dupliquer l'élément.

  8. Modifiez les attributs en fonction de vos besoins. Les attributs suivants sont utilisés pour répondre aux exigences de l'exemple de scénario :

    type: period name: retail-hours begintime: 11:00 description: Retail hours endtime: 23:00 weekdays: mon-sun
  9. Choisissez Créer un élément.

  10. Dans ConfigTableDynamoDB, identifiez les deux périodes que vous venez de créer répertoriées dans les listes d'éléments.

Configuration des plannings

Dans le contexte d'Instance Scheduler activé AWS, les plannings font référence à l'application d'une ou de plusieurs périodes et au fuseau horaire correspondant. Ces plannings sont ensuite affectés à vos instances sous forme de balises. Cette section explique comment créer deux plannings (illustrés ci-dessous) adaptés aux différents modèles temporels des deux exemples de charges de travail, puis comment associer les plannings aux périodes que vous avez créées dans la section précédente.

Schedule 1: Name: singapore-office-hours Period: office-hours Timezone: Asia/Singapore Schedule 2: Name: singapore-retail-hours Period: retail-hours Timezone: Asia/Singapore

Pour créer et configurer des plannings, procédez comme suit :

  1. Connectez-vous à la console DynamoDB et assurez-vous que vous vous trouvez dans la même région que celle dans laquelle vous avez lancé le modèle pour CloudFormation le planificateur d'instances. AWS

  2. Dans le volet de navigation, choisissez Tables, puis sélectionnez la table nommée ConfigTable.

  3. Choisissez Explorer les éléments de table.

  4. Pour dupliquer le calendrier des heures de bureau au Royaume-Uni et l'utiliser pour créer un nouveau calendrier pour vos heures de bureau (heures de bureau de Singapour, par exemple), sélectionnez le calendrier pour l'uk-office-hours article. Ensuite, dans le menu Actions, choisissez Dupliquer l'élément.

  5. Modifiez les attributs en fonction de vos besoins. Les attributs suivants sont utilisés pour répondre aux exigences de l'exemple de scénario :

    type: schedule name: singapore-office-hours description: Office hours in Singapore periods: office-hours timezone: Asia/Singapore
  6. Choisissez Créer un élément.

  7. Répétez les étapes 4 à 6 pour créer un calendrier pour les heures de vente au détail à Singapour en utilisant les valeurs d'attribut suivantes :

    type: schedule name: singapore-retail-hours description: Retail hours in Singapore periods: retail-hours timezone: Asia/Singapore
  8. Dans ConfigTableDynamoDB, identifiez les deux plannings et les deux périodes que vous avez créés.

Baliser les instances de

Après avoir établi vos plannings, vous devez utiliser des tags pour allouer les plannings aux instances spécifiques que vous souhaitez utiliser. Vous pouvez utiliser l'éditeur de balises intégré AWS Resource Groupspour générer et attribuer des balises à vos EC2 instances Amazon.

  1. Connectez-vous au AWS Management Consoleet assurez-vous que vous vous trouvez dans la même région que celle dans laquelle vous avez lancé le CloudFormation modèle.

  2. Ouvrez la console Resource Groups. Dans le volet de navigation, développez Tagging, puis choisissez Tag Editor.

  3. Dans la section Trouver des ressources à étiqueter, pour Régions, choisissez vos régions. Pour les types de ressources, choisissez Amazon EC2 ou AmazonRDS. Ce scénario se concentre sur les EC2 instances Amazon de la charge de travail A. L'équipe marketing utilise la charge de travail A dans la région de Singapour. Les ressources pour cette charge de travail sont déjà étiquetées avec une clé de département et une valeur marketing. Vous pouvez utiliser cette balise pour rechercher les instances.

  4. Choisissez Rechercher des ressources.

  5. Sélectionnez les instances que vous souhaitez inclure dans le calendrier dans la liste des résultats de recherche, puis choisissez Gérer les balises des ressources sélectionnées.

  6. Dans la section Modifier les balises de toutes les ressources sélectionnées, choisissez Ajouter une balise pour ajouter les balises de planification du planificateur d'instances à vos EC2 instances. Vous pouvez utiliser les clés de balise et les valeurs correspondant à schedulea (créées précédemment dans DynamoDB).

  7. Pour la touche Tag, ajoutez Schedule. Pour Valeur du tag, entrez singapore-retail-hours.

  8. Choisissez Vérifier et appliquer les modifications apportées à la balise.

  9. Pour appliquer la balise à toutes les EC2 instances que vous avez sélectionnées, choisissez Appliquer les modifications à toutes les instances sélectionnées.

  10. Répétez les étapes 3 à 9 pour tous les programmes supplémentaires que vous souhaitez appliquer.

Validation des résultats

Nous vous recommandons de l'utiliser AWS Cost Explorerpour mesurer les avantages en termes de coûts liés à l'utilisation d'Instance Scheduler sur. AWS Vous pouvez utiliser Cost Explorer pour effectuer les opérations suivantes :

  • Consultez et analysez les coûts associés à vos EC2 instances, y compris les instances gérées par Instance Scheduler.

  • Filtrez votre affichage Cost Explorer par balises afin de vous concentrer sur des charges de travail spécifiques et d'obtenir une vue détaillée des économies réalisées grâce à Instance Scheduler.

  • Obtenez des informations sur l'impact financier de l'utilisation d'Instance Scheduler.

  • Identifiez les opportunités d'optimisation des coûts et prenez des décisions basées sur les données pour optimiser vos AWS dépenses.

Les graphiques suivants illustrent le coût d'exploitation des charges de travail A et B sur une période de sept jours (du lundi au dimanche) avant l'optimisation à l'aide du planificateur d'instance.

Total des dépenses combinées liées aux charges de travail A et B

Total des dépenses combinées liées aux charges de travail A et B

Charges de travail A

Dépenses liées à la charge de travail A

Charge de travail B et dépenses

Dépenses liées à la charge de travail B

Dans ce scénario, Cost Explorer montre les réductions de coûts résultant de la mise en œuvre d'Instance Scheduler sur. AWS Les graphiques suivants montrent les coûts opérationnels des charges de travail A et B pour une période de sept jours (du lundi au dimanche) après l'optimisation.

Dépenses totales combinées liées aux charges de travail A et B

Dépenses totales combinées liées aux charges de travail A et B

Charges de travail A

Dépenses liées à la charge de travail A

Charge de travail B et dépenses

Dépenses liées à la charge de travail B

Ressources supplémentaires