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.
Effectuer des mises à jour d'infrastructure
Les mises à jour de l'infrastructure remplacent les instances de votre environnement informatique par de nouvelles instances dont les paramètres ont été mis à jour. Cette stratégie de mise à jour prend plus de temps que les mises à l'échelle et nécessite des paramètres de rôle de service et de stratégie d'allocation spécifiques. Les mises à jour de l'infrastructure permettent de modifier les configurations fondamentales de l'environnement informatique tout en maintenant la disponibilité des services.
Important
Les mises à jour de l'infrastructure nécessitent le rôle AWSServiceRoleForBatch lié aux services et une stratégie d'allocation de BEST_FIT_PROGRESSIVEBEST_FIT_PROGRESSIVE_ORDERED, SPOT_CAPACITY_OPTIMIZEDSPOT_PRICE_CAPACITY_OPTIMIZED, ou. SPOT_CAPACITY_OPTIMIZED_PRIORITIZED Si votre environnement ne répond pas à ces exigences, utilisez plutôt les blue/green mises à jour.
Changements déclenchant des mises à jour de l'infrastructure
Lorsque vous modifiez l'un des paramètres suivants, AWS Batch effectue une mise à jour de l'infrastructure. Les mises à jour de l'infrastructure se produisent également lorsque vous modifiez ces paramètres en même temps que les paramètres de mise à l'échelle.
Les paramètres suivants déclenchent les mises à jour de l'infrastructure :
Configuration informatique
-
allocationStrategy— Détermine le mode de AWS Batch sélection des types d'instances. -
instanceTypes— Spécifie les types d'instance EC2 à utiliser. -
bidPercentage— Pourcentage maximum du On-Demand prix pour les instances Spot. -
type— Type d'environnement de calcul (EC2ouSPOT).
AMI et configuration de lancement
-
imageId— AMI spécifique à utiliser pour les instances. -
ec2Configuration— Configuration EC2 incluseimageIdOverride. -
launchTemplate— Paramètres du modèle de lancement EC2. -
ec2KeyPair— Paire de clés SSH pour l'accès à l'instance. -
updateToLatestImageVersion— Paramètre de mise à jour automatique de l'AMI.
Mise en réseau et sécurité
-
subnets— Sous-réseaux VPC sur lesquels les instances sont lancées (pour les environnements de calcul EC2). -
securityGroupIds— Groupes de sécurité pour les instances (pour les environnements de calcul EC2). -
placementGroup— Configuration du groupe de placement EC2.
Autres paramètres
-
instanceRole— Rôle IAM pour les instances EC2. -
tags— Tags appliqués aux instances EC2.
Important
Si vous modifiez des paramètres de mise à jour de l'infrastructure en même temps que des paramètres de mise à l'échelle (tels que desiredvCpusmaxvCpus, ouminvCpus), AWS Batch effectue une mise à jour de l'infrastructure. Les mises à jour de l'infrastructure prennent plus de temps que les mises à niveau.
Sélection d'AMI lors des mises à jour de l'infrastructure
Lors d'une mise à jour de l'infrastructure, l'ID AMI de l'environnement informatique peut changer, selon que les AMI sont spécifiées ou non dans l'un de ces trois paramètres. Les AMI sont spécifiées dans le imageId (incomputeResources), imageIdOverride (inec2Configuration) ou dans le modèle de lancement spécifié danslaunchTemplate. Supposons qu'aucun ID AMI n'est spécifié dans aucun de ces paramètres et que celui-ci soit updateToLatestImageVersion défini comme teltrue. Ensuite, la dernière AMI optimisée pour Amazon ECS prise en charge par AWS Batch est utilisée pour toute mise à jour de l'infrastructure.
Si un ID AMI est spécifié dans au moins l'un de ces paramètres, la mise à jour dépend du paramètre qui a fourni l'ID AMI utilisé avant la mise à jour. Lorsque vous créez un environnement informatique, la priorité pour sélectionner un ID AMI est d'abord le modèle de lancement, puis le imageId paramètre et enfin le imageIdOverride paramètre. Toutefois, si l'ID AMI utilisé provient du modèle de lancement, la mise à jour des imageIdOverride paramètres imageId ou ne met pas à jour l'ID AMI. La seule façon de mettre à jour un ID AMI sélectionné dans le modèle de lancement est de mettre à jour le modèle de lancement. Si le paramètre de version du modèle de lancement est $Default ou$Latest, la version par défaut ou la dernière version du modèle de lancement spécifié est évaluée. Si un autre ID AMI est sélectionné par défaut ou si la dernière version du modèle de lancement est sélectionnée, cet ID AMI est utilisé dans la mise à jour.
Si le modèle de lancement n'a pas été utilisé pour sélectionner l'ID AMI, c'est l'ID AMI spécifié dans les imageIdOverride paramètres imageId ou qui est utilisé. Si les deux sont spécifiés, l'ID AMI spécifié dans le imageIdOverride paramètre est utilisé.
Supposons que l'environnement de calcul utilise un ID d'AMI spécifié par le imageId ou launchTemplate les paramètres, et que vous souhaitez utiliser la dernière AMI optimisée pour Amazon ECS prise en charge par AWS Batch. imageIdOverride La mise à jour doit ensuite supprimer les paramètres qui ont fourni des ID AMI. Pour celaimageId, il faut spécifier une chaîne vide pour ce paramètre. Pour celaimageIdOverride, il faut spécifier une chaîne vide pour le ec2Configuration paramètre.
Si l'ID d'AMI provient du modèle de lancement, vous pouvez passer à la dernière AMI optimisée pour Amazon ECS qui est prise AWS Batch en charge de l'une des manières suivantes :
-
Supprimez le modèle de lancement en spécifiant une chaîne vide pour le
launchTemplateNameparamètrelaunchTemplateIdou. Cela supprime l'intégralité du modèle de lancement, au lieu de supprimer uniquement l'ID AMI. -
Si la version mise à jour du modèle de lancement ne spécifie pas d'ID AMI, le
updateToLatestImageVersionparamètre doit être défini surtrue.
Gestion des tâches lors des mises à jour
Configurez la façon dont les tâches en cours sont gérées lors d'une mise à jour de l'infrastructure à l'aide de la politique de mise à jour Lorsque vous définissezterminateJobsOnUpdate=true, les tâches en cours sont immédiatement interrompues, le jobExecutionTimeoutMinutes paramètre est ignoré et la mise à jour se poursuit dès que les instances peuvent être remplacées. Lorsque vous le définissezterminateJobsOnUpdate=false, les tâches en cours d'exécution se poursuivent pendant la période de temporisation spécifiée, avec un délai d'expiration par défaut de 30 minutes, et les tâches sont interrompues si elles dépassent ce délai.
Note
Pour réessayer des tâches qui ont été interrompues lors d'une mise à jour, configurez une stratégie de nouvelle tentative. Pour de plus amples informations, veuillez consulter Reprises de travail automatisées.
Surveillance des mises à jour des infrastructures
Surveillez les mises à jour de votre infrastructure à l'aide de la AWS Batch console pour suivre l'évolution de l'état de l'environnement de calculUPDATING, suivre la progression du remplacement des instances et vérifier si les mises à jour ont échoué. La mise à jour est réussie une fois que l'état de l'environnement de calcul est atteintVAILD. Vous pouvez également l'utiliser CloudWatch pour suivre les événements de fermeture d'instance et surveiller l'état des tâches pendant la mise à jour. À l'aide de AWS CLI, utilisez la describe-compute-environments commande pour vérifier l'état et surveiller les événements liés au cycle de vie de l'instance.