

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.

# Environnements de service pour AWS Batch
<a name="service-environments"></a>

Les environnements de service permettent AWS Batch de s'intégrer à SageMaker l'IA. Un environnement de service contient les paramètres de configuration spécifiques à l' SageMaker IA nécessaires AWS Batch pour soumettre et gérer les tâches de SageMaker formation tout en fournissant des fonctionnalités AWS Batch de mise en file d'attente, de planification et de gestion des priorités.

Grâce aux environnements de service, les data scientists et les ingénieurs du machine learning peuvent soumettre des tâches de SageMaker formation prioritaires aux files d'attente pour les tâches de maintenance. Cette intégration élimine le besoin de coordination manuelle des charges de travail de machine learning, évite les dépenses excessives accidentelles et améliore l'utilisation des ressources dans les flux de travail d'apprentissage automatique de votre entreprise.

**Topics**
+ [Quels sont les environnements de service dans AWS Batch](what-are-service-environments.md)
+ [État et cycle de vie de l'environnement de service dans AWS Batch](service-environment-states.md)
+ [Créez un environnement de service dans AWS Batch](create-service-environments.md)
+ [Mettre à jour un environnement de service dans AWS Batch](updating-service-environments.md)
+ [Supprimer un environnement de service dans AWS Batch](deleting-service-environments.md)

# Quels sont les environnements de service dans AWS Batch
<a name="what-are-service-environments"></a>

Un environnement de service est une AWS Batch ressource qui contient les paramètres de configuration nécessaires à l'intégration AWS Batch à l' SageMaker IA. Les environnements de service permettent AWS Batch de soumettre et de gérer les tâches de SageMaker formation tout en fournissant des AWS Batch fonctionnalités de gestion des files d'attente, de planification et des priorités.

Les environnements de service répondent aux défis courants auxquels sont confrontées les équipes de data science lorsqu'elles gèrent des charges de travail liées au machine learning. Organisations limitent souvent le nombre d'instances disponibles pour les modèles de formation afin d'éviter les dépenses excessives accidentelles, de respecter les contraintes budgétaires, de réduire les coûts grâce aux instances réservées ou d'utiliser des types d'instances spécifiques pour les charges de travail. Cependant, les data scientists peuvent souhaiter exécuter plus de charges de travail simultanément que ce qui est possible avec les instances qui leur sont allouées, ce qui nécessite une coordination manuelle pour décider quelles charges de travail s'exécutent et quand.

Ce défi de coordination concerne les organisations de toutes tailles, qu'il s'agisse d'équipes ne comptant que quelques data scientists ou d'opérations à grande échelle. À mesure que les entreprises se développent, la complexité augmente, ce qui nécessite plus de temps pour gérer la coordination de la charge de travail et nécessite souvent l'intervention de l'administrateur de l'infrastructure. Ces efforts manuels font perdre du temps et réduisent l'efficacité des instances, ce qui entraîne des coûts réels pour les clients.

Grâce aux environnements de service, les data scientists et les ingénieurs ML peuvent soumettre des tâches de SageMaker formation prioritaires à des files d'attente configurables, garantissant ainsi l'exécution automatique des charges de travail sans intervention dès que les ressources sont disponibles. Cette intégration tire parti des fonctionnalités étendues AWS Batch de mise en file d'attente et de planification, permettant aux clients de personnaliser leurs politiques de mise en file d'attente et de planification en fonction des objectifs de leur organisation.

## Comment les environnements de service fonctionnent avec les autres AWS Batch composants
<a name="service-environment-integration"></a>

Les environnements de service s'intègrent à d'autres AWS Batch composants pour permettre la mise en file d'attente des tâches de SageMaker formation :
+ **Files d'attente de tâches** : les environnements de service sont associés aux files d'attente de tâches pour permettre à la file d'attente de traiter les tâches de service pour les SageMaker tâches de formation
+ **Tâches de service** : lorsque vous soumettez une tâche de service à une file d'attente associée à un environnement de service AWS Batch , utilisez la configuration de l'environnement pour soumettre la tâche de SageMaker formation correspondante
+ **Politiques de planification** - Les environnements de service fonctionnent avec AWS Batch des politiques de planification pour hiérarchiser et gérer l'ordre d'exécution des tâches de SageMaker formation

Cette intégration vous permet de tirer parti des fonctionnalités AWS Batchéprouvées de mise en file d'attente et de planification tout en conservant les fonctionnalités complètes et la flexibilité des tâches de SageMaker formation.

## Bonnes pratiques pour les environnements de service
<a name="service-environment-best-practices"></a>

Les environnements de service fournissent des fonctionnalités permettant de gérer les tâches de SageMaker formation à grande échelle. Le respect de ces meilleures pratiques vous permet d'optimiser les coûts, les performances et l'efficacité opérationnelle tout en évitant les problèmes de configuration courants qui peuvent avoir un impact sur vos flux de travail d'apprentissage automatique.

Lorsque vous planifiez la capacité de l'environnement de service, tenez compte des quotas et limites spécifiques qui s'appliquent à la mise en file d'attente des tâches de SageMaker formation. Chaque environnement de service possède une limite de capacité maximale exprimée en nombre d'instances, qui contrôle directement le nombre de tâches de SageMaker formation pouvant être exécutées simultanément. La compréhension de ces limites permet d'éviter la saturation des ressources et de garantir des délais d'exécution des tâches prévisibles. 

La performance optimale de l'environnement de service dépend de la compréhension des caractéristiques uniques de la planification des tâches de SageMaker formation. Contrairement aux emplois conteneurisés traditionnels, les emplois de service passent par un `SCHEDULED` État tandis que l' SageMaker IA acquiert et fournit les instances de formation nécessaires. Cela signifie que les heures de début des tâches peuvent varier considérablement en fonction de la disponibilité des instances et de la capacité régionale. 

**Important**  
Les environnements de service ont des quotas spécifiques qui peuvent avoir un impact sur votre capacité à faire évoluer les charges de travail de SageMaker formation. Vous pouvez créer jusqu'à 50 environnements de service par compte, chaque file d'attente de tâches ne prenant en charge qu'un seul environnement de service associé. En outre, la charge utile des demandes de service pour les tâches individuelles est limitée à 10 KiB, et l'`SubmitServiceJob`API est limitée à 5 transactions par seconde et par compte. La compréhension de ces limites lors de la planification des capacités permet d'éviter les contraintes de dimensionnement inattendues.

Une surveillance efficace des environnements de service nécessite une attention particulière à la fois aux indicateurs AWS Batch des services fournis par l' SageMaker IA. [Les transitions d'état de poste](service-job-status.md) fournissent des informations précieuses sur les performances du système, en particulier le temps passé dans `SCHEDULED` l'état, qui indique les modèles de disponibilité des capacités. Les environnements de service conservent leurs propres états de cycle de vie, similaires à ceux des environnements informatiques`CREATING`, en passant par`VALID`,`INVALID`, et `DELETING` des états dont l'état de fonctionnement doit être surveillé. Organisations dotées de pratiques de surveillance éprouvées suivent généralement la profondeur des files d'attente, le taux d'achèvement des tâches et les modèles d'utilisation des instances afin d'optimiser la configuration de leur environnement de service au fil du temps.

# État et cycle de vie de l'environnement de service dans AWS Batch
<a name="service-environment-states"></a>

Les environnements de service conservent des états du cycle de vie qui indiquent leur état opérationnel actuel et leur état de préparation à traiter les tâches de SageMaker formation. La compréhension de ces états vous permet de surveiller l'état de l'environnement de service, de résoudre les problèmes de configuration et de garantir un traitement fiable des tâches. Le système de gestion des états suit les modèles établis des environnements informatiques tout en répondant aux exigences uniques de l'intégration des postes de SageMaker formation.

Les états de l'environnement de service sont gérés automatiquement en AWS Batch fonction de la validation de la configuration, de la disponibilité des ressources et des contrôles de santé opérationnels. Contrairement aux environnements informatiques qui gèrent l'infrastructure physique, les environnements de service se concentrent sur la validation de la configuration et la préparation à l'intégration avec les services d' SageMaker IA. Les transitions d'état permettent de savoir si votre environnement de service est capable de soumettre et de gérer avec succès les tâches de SageMaker formation.

# Définitions des états de l'environnement de service
<a name="service-environment-state-definitions"></a>

Les environnements de service peuvent se trouver dans l'un des quatre états possibles qui indiquent leur état opérationnel actuel et leur état de préparation à traiter les tâches de SageMaker formation. Chaque état représente une phase spécifique du cycle de vie de l'environnement de service, depuis la création initiale jusqu'à la suppression finale en passant par la préparation opérationnelle. Le tableau suivant décrit chaque état et sa signification :


| State | Description | 
| --- | --- | 
| CREATING |  État initial lorsque vous créez un environnement de service. Au cours de cet état, AWS Batch valide les paramètres de configuration et établit l'intégration avec les services d' SageMaker IA. L'environnement de service ne peut pas traiter les tâches, et les files d'attente de tâches qui y sont associées n'accepteront pas les soumissions de tâches de service. Le processus de création se termine généralement en quelques secondes pour les environnements de service correctement configurés.  | 
| VALID |  État opérationnel indiquant que l'environnement de service a passé avec succès tous les contrôles de validation de configuration et qu'il est prêt à traiter les tâches de SageMaker formation. Cet état indique que la configuration de l'environnement de service est correcte, que toutes les autorisations requises sont en place et que AWS Batch vous pouvez soumettre des tâches à SageMaker AI en votre nom. Les environnements de service passent la majeure partie de leur cycle de vie opérationnel dans cet état.  | 
| INVALID |  État indiquant que l'environnement de service a rencontré un problème de configuration ou d'autorisations qui l'empêche de traiter les tâches de SageMaker formation. Les files d'attente associées à des environnements de service non valides ne peuvent pas traiter les nouvelles soumissions de tâches de service tant que les problèmes sous-jacents ne sont pas résolus.  | 
| DELETING |  État qui se produit lorsque vous demandez la suppression d'un environnement de service. Dans cet état, AWS Batch garantit qu'aucune tâche de SageMaker formation active n'est associée à l'environnement et effectue les opérations de nettoyage nécessaires. Les environnements de service dans cet état ne peuvent pas traiter les nouvelles soumissions de tâches, et le processus de suppression s'achève une fois que toutes les ressources associées ont été correctement nettoyées.  | 

## Transitions d'état de l'environnement de
<a name="service-environment-state-transitions"></a>

Les transitions d'état de l'environnement de service se produisent automatiquement en fonction des modifications de configuration, des résultats de validation et de la surveillance de l'état de fonctionnement. Le AWS Batch service surveille en permanence l'état de l'environnement de service et met à jour les états en conséquence. La compréhension de ces transitions vous permet d'anticiper le moment où les modifications de configuration prendront effet et comment résoudre les problèmes à l'origine d'états non valides.

Une fois la création et la validation réussies, les environnements de service passent de `CREATING` à`VALID`. Cette transition confirme que tous les paramètres de configuration sont corrects, que les autorisations IAM requises sont correctement configurées et que l'environnement de service peut s'intégrer avec succès aux services d' SageMaker IA. Une fois dans l'`VALID`état, les files d'attente de tâches associées peuvent commencer à traiter les soumissions de tâches de service.

Les environnements de service passent d'une situation `VALID` à une `INVALID` situation où la validation de la configuration échoue ou lorsque les dépendances ne sont plus disponibles. Cela peut être dû à des modifications du rôle IAM, à des modifications des limites de capacité qui violent les quotas ou à des modifications des ressources externes qui affectent le fonctionnement de l'environnement de service. Le champ Motif du statut fournit des informations spécifiques sur la cause de l'état non valide.

Les environnements de service peuvent revenir à l'`VALID`état d'origine `INVALID` une fois les problèmes sous-jacents résolus. Cela peut impliquer la mise à jour des autorisations IAM, la correction des configurations de capacité ou le rétablissement de l'accès aux ressources requises. AWS La transition se produit généralement automatiquement une fois que l'on AWS Batch détecte que les problèmes de configuration ont été résolus.

# Créez un environnement de service dans AWS Batch
<a name="create-service-environments"></a>

Avant de pouvoir exécuter des tâches de SageMaker formation dans AWS Batch, vous devez créer un environnement de service. Vous pouvez créer un environnement de service contenant les paramètres de configuration requis AWS Batch pour intégrer les services d' SageMaker IA et soumettre des tâches de SageMaker formation en votre nom.

## Conditions préalables
<a name="create-service-environments-prerequisites"></a>

Avant de créer un environnement de service, assurez-vous de disposer des éléments suivants :
+ Autorisations **IAM : autorisations** permettant de créer et de gérer des environnements de service. Pour de plus amples informations, veuillez consulter [AWS Batch Politiques, rôles et autorisations IAM](IAM_policies.md).

------
#### [ Create a service environment (AWS Console) ]

Utilisez la AWS Batch console pour créer un environnement de service via l'interface Web.

**Pour créer un environnement de service**

1. Ouvrez la AWS Batch console à l'adresse [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dans le panneau de navigation, choisissez **Environments** (Environnements).

1. Choisissez **Créer un environnement**, puis sélectionnez **Environnement de service**.

1. Pour la **configuration de l'environnement de service**, choisissez SageMaker AI.

1. Dans **Nom**, entrez un nom unique pour votre environnement de service. Les caractères valides sont a-z, A-Z, 0-9, les tirets (-) et les traits de soulignement (\$1).

1. Pour **Nombre maximal d'instances**, entrez le nombre maximum d'instances de formation simultanées.

1. (Facultatif) Ajoutez des balises en choisissant **Ajouter une balise** et en saisissant des paires clé-valeur.

1. Choisissez **Suivant**.

1. Passez en revue les détails du nouvel environnement de service et choisissez **Créer un environnement de service**.

------
#### [ Create a service environment (AWS CLI) ]

Utilisez la `create-service-environment` commande pour créer un environnement de service avec la AWS CLI.

**Pour créer un environnement de service**

1. Créez un environnement de service avec les paramètres de base requis :

   ```
   aws batch create-service-environment \
       --service-environment-name my-sagemaker-service-env \
       --service-environment-type SAGEMAKER_TRAINING \
       --capacity-limits capacityUnit=NUM_INSTANCES,maxCapacity=10
   ```

1. (Facultatif) Créez un environnement de service avec des balises :

   ```
   aws batch create-service-environment \
       --service-environment-name my-sagemaker-service-env \
       --service-environment-type SAGEMAKER_TRAINING \
       --capacity-limits capacityUnit=NUM_INSTANCES,maxCapacity=10 \
       --tags team=data-science,project=ml-training
   ```

1. Vérifiez que l'environnement de service a été créé avec succès :

   ```
   aws batch describe-service-environments \
       --service-environment my-sagemaker-service-env
   ```

L'environnement de service apparaît dans la liste des environnements avec un `CREATING` état. Lorsque la création est terminée avec succès, l'état change `VALID` et l'environnement de service est prêt à recevoir une file d'attente de tâches de service afin que l'environnement de service puisse commencer à traiter les tâches.

------

# Mettre à jour un environnement de service dans AWS Batch
<a name="updating-service-environments"></a>

Vous pouvez mettre à jour un environnement de service pour modifier ses limites de capacité, son état de fonctionnement ou mettre à jour les balises de ressources. Les mises à jour de l'environnement de service vous permettent d'ajuster la capacité en fonction de l'évolution de vos exigences en matière de charge de SageMaker formation ou de modifier les paramètres opérationnels sans recréer l'environnement. Avant de mettre à jour un environnement de service, déterminez quels paramètres peuvent être modifiés et déterminez l'impact des modifications sur l'exécution des tâches.

Vous pouvez modifier les limites de capacité, l'état ou les balises d'un environnement de service.

------
#### [ Update a service environment (AWS Console) ]

Utilisez la AWS Batch console pour mettre à jour un environnement de service via l'interface Web.

**Pour mettre à jour un environnement de service**

1. Ouvrez la AWS Batch console à l'adresse [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dans le panneau de navigation, choisissez **Environments** (Environnements).

1. Choisissez l'onglet **Environnement de service**.

1. Choisissez l'environnement de service à mettre à jour.

1. Choisissez **Actions**, puis choisissez l'une des options suivantes :
   + **État** - Choisissez **Activer** ou **Désactiver** pour modifier l'état.
   + **Limite de capacité** : modifiez le **nombre maximum d'instances**

1. Choisissez **Enregistrer les modifications** pour appliquer les modifications.

L'environnement de service est mis à jour immédiatement. Vérifiez les détails de l'environnement pour vous assurer que les modifications ont été correctement appliquées. Si vous avez désactivé l'environnement de service, les files d'attente de tâches associées cesseront de traiter les nouvelles soumissions de service jusqu'à ce que vous le réactiviez.

------
#### [ Update a service environment (AWS CLI) ]

Utilisez la `update-service-environment` commande pour modifier un environnement de service à l'aide de la AWS CLI.

**Pour mettre à jour les limites de capacité de l'environnement de service**

1. Mettez à jour la limite de capacité pour un environnement de service :

   ```
   aws batch update-service-environment \
       --service-environment my-sagemaker-service-env \
       --capacity-limits capacityUnit=NUM_INSTANCES,maxCapacity=20
   ```

1. Vérifiez que la mise à jour a été correctement appliquée :

   ```
   aws batch describe-service-environments \
       --service-environments my-sagemaker-service-env
   ```

**Pour mettre à jour l'état de l'environnement de service**

1. Désactivez un environnement de service pour arrêter le traitement des nouvelles tâches :

   ```
   aws batch update-service-environment \
       --service-environment my-sagemaker-service-env \
       --state DISABLED
   ```

1. Réactivez un environnement de service pour reprendre le traitement :

   ```
   aws batch update-service-environment \
       --service-environment my-sagemaker-service-env \
       --state ENABLED
   ```

Les mises à jour de l'environnement de service prennent effet immédiatement. Surveillez l'état de l'environnement de service pour vous assurer que les mises à jour sont effectuées correctement avant de soumettre de nouvelles tâches.

------

# Supprimer un environnement de service dans AWS Batch
<a name="deleting-service-environments"></a>

Vous pouvez supprimer un environnement de service lorsqu'il n'est plus nécessaire pour vos tâches de SageMaker formation. La suppression d'un environnement de service entraîne la suppression de la configuration et empêche de nouvelles soumissions de tâches. Avant de supprimer un environnement de service, assurez-vous qu'aucune tâche de SageMaker formation active n'en dépend et qu'aucune file d'attente de tâches n'est associée à l'environnement de service.

**Important**  
La suppression de l'environnement de service est irréversible. Une fois supprimé, vous ne pouvez pas restaurer l'environnement de service ou sa configuration. Si vous avez besoin de fonctionnalités similaires à l'avenir, vous devez créer un nouvel environnement de service avec les paramètres requis. Envisagez de désactiver l'environnement de service plutôt que de le supprimer si vous devez le réactiver ultérieurement.

**Note**  
La suppression de tous les environnements de service de votre compte ne supprime pas automatiquement le rôle lié au service créé pour l'intégration de AWS Batch l' SageMaker IA. Le rôle lié au service reste disponible pour la création d'un futur environnement de service. Si vous souhaitez supprimer le rôle lié à un service, vous devez le supprimer séparément à l'aide d'IAM après vous être assuré qu'aucun environnement de service n'existe dans votre compte.

## Conditions préalables à la suppression
<a name="service-environment-deletion-prerequisites"></a>

Avant de pouvoir supprimer un environnement de service, vous devez dissocier toute file d'attente de tâches de service, puis désactiver l'environnement de service.

**Avant de supprimer un environnement de service :**
+ **Vérifiez les tâches actives** : assurez-vous qu'aucune tâche de SageMaker formation n'est actuellement en cours d'exécution dans l'environnement de service.
+ Passez en **revue les files d'attente** de tâches : identifiez les files d'attente de tâches associées à l'environnement de service et associez la file d'attente de tâches à un autre environnement de service ou désactivez et supprimez la file d'attente de tâches.

**Gestion des files d'attente de tâches :** les files d'attente associées à un environnement de service supprimé peuvent toujours exister mais ne peuvent pas traiter les tâches de service. Vous devez soit supprimer les files d'attente de tâches inutilisées, soit les associer à un autre environnement de service avant de supprimer l'environnement de service d'origine.

------
#### [ Delete a service environment (AWS Console) ]

Utilisez la AWS Batch console pour supprimer un environnement de service via l'interface Web.

**Pour supprimer un environnement de service**

1. Ouvrez la AWS Batch console à l'adresse [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dans le panneau de navigation, choisissez **Environments** (Environnements).

1. Choisissez l'onglet **Environnement de service**, puis choisissez un environnement de service.

1. Si l'environnement de service est activé, choisissez **Actions**, puis **Désactiver**.

1. Une fois l'environnement de service désactivé, choisissez **Actions**, puis **Supprimer**.

1. Dans la boîte de dialogue de confirmation, choisissez **Confirmer**.

L'environnement de service affiche un `DELETING` état lors de la suppression. Une fois la suppression terminée, l'environnement de service disparaît de la liste des environnements.

------
#### [ Delete a service environment (AWS CLI) ]

Utilisez la `delete-service-environment` commande pour supprimer un environnement de service à l'aide de la AWS CLI.

**Pour supprimer un environnement de service**

1. Vérifiez les files d'attente de tâches associées à l'environnement de service :

   ```
   aws batch describe-job-queues
   ```

   Si des files d'attente de tâches sont associées à l'environnement de service, vous pouvez soit [dissocier la file d'attente](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateJobQueue.html) de l'environnement de service et l'associer à un autre environnement de service, soit supprimer la file d'attente de tâches.

1. Désactivez l'environnement de service :

   ```
   aws batch update-service-environment \
       --service-environment my-sagemaker-service-env \
       --state DISABLED
   ```

1. Supprimez l'environnement de service :

   ```
   aws batch delete-service-environment \
       --service-environment my-sagemaker-service-env
   ```

1. Surveillez le processus de suppression :

   ```
   aws batch describe-service-environments \
       --service-environment my-sagemaker-service-env
   ```

L'environnement de service passe à `DELETING` l'état pendant le processus de suppression. Une fois la suppression terminée, l'environnement de service n'est plus répertorié dans les opérations de description. Les files d'attente de tâches associées restent mais ne peuvent pas traiter les tâches de service tant qu'elles ne sont pas associées à un environnement de service différent.

------