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.
Gestion des révisions dans les définitions de AWS Batch tâches
Cet exemple suppose que vous déployez des tâches par lots en utilisant le AWS Batch service et en utilisant Terraform comme outil IaC.
Défi
AWS Batch crée une nouvelle révision d'une définition de tâche à chaque mise à jour, ce qui entraîne une accumulation de révisions au fil du temps. Cela peut compliquer la gestion des ressources et créer de la confusion quant aux révisions actuelles, en particulier dans les environnements d'entreprise où les définitions de tâches sont fréquemment mises à jour et où les ressources en aval nécessitent des références précises aux dernières versions.
Solution
Le code Terraform suivant utilise plusieurs composants clés pour gérer les AWS Batch révisions.
resource "terraform_data" "batch_job_definition_cleanup" { triggers_replace = { always_run = timestamp() } provisioner "local-exec" { command = "..." # AWS CLI commands to list and de-register older revisions } }
Dans ce code :
-
terraform_dataest associé à unlocal-execapprovisionneur pour exécuter les commandes run AWS Command Line Interface (AWS CLI) lors des opérations Terraform. -
Les déclencheurs d'horodatage garantissent que chaque
terraform applycommande exécute le script de nettoyage. -
AWS CLI des requêtes d'intégration AWS Batch pour toutes les révisions de définitions de tâches actives et annule l'enregistrement des anciennes révisions.
-
Vous pouvez ajouter une configuration de rétention personnalisée à la section des commandes pour spécifier le nombre de révisions récentes à conserver.
Avantages
-
Gestion simplifiée : empêche l'accumulation de révisions périmées des définitions de tâches.
-
Références claires : fournit des pointeurs précis vers les versions actuelles des définitions de tâches.
-
Optimisation des ressources : réduit l'encombrement dans l' AWS Batch environnement.
-
Automatisation : s'intègre parfaitement aux flux de travail Terraform existants.
Cette approche montre comment les fonctionnalités d'extensibilité de Terraform peuvent surmonter les limites des fournisseurs tout en maintenant les meilleures pratiques en matière d'IaC. Vous pouvez utiliser cette solution comme modèle pour des scénarios similaires nécessitant une découverte et une gestion dynamiques des ressources.