INVALIDenvironnement informatique - AWS Batch

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.

INVALIDenvironnement informatique

Il est possible que vous ayez mal configuré un environnement informatique géré. Si c'est le cas, l'environnement informatique entre dans un INVALID état et ne peut pas accepter de postes à des fins de placement. Les sections suivantes décrivent les causes possibles et la procédure de dépannage en fonction de la cause.

Nom de rôle incorrect ou ARN

La raison la plus courante pour laquelle un environnement informatique entre dans un INVALID état est que le rôle de AWS Batch service ou le rôle Amazon EC2 Spot Fleet porte un nom ou un nom de ressource Amazon (ARN) incorrect. Cela est plus courant dans les environnements informatiques créés à l'aide du AWS CLI ou du AWS SDKs. Lorsque vous créez un environnement informatique dans le AWS Management Console, AWS Batch cela vous aide à choisir le service ou les rôles Spot Fleet appropriés. Supposons toutefois que vous saisissiez manuellement le nom ou le ARN et que vous les saisissiez incorrectement. Ensuite, l'environnement de calcul qui en résulte l'est égalementINVALID.

Supposons toutefois que vous saisissiez manuellement le nom ou celui ARN d'une IAM ressource dans une AWS CLI commande ou dans votre SDK code. Dans ce cas, AWS Batch impossible de valider la chaîne. AWS Batch Il faut plutôt accepter la mauvaise valeur et tenter de créer l'environnement. Si la création de l'environnement AWS Batch échoue, celui-ci passe à un INVALID état et les erreurs suivantes s'affichent.

Pour un rôle de service non valide :

CLIENT_ERROR - Not authorized to perform sts:AssumeRole (Service: AWSSecurityTokenService; Status Code: 403; Error Code: AccessDenied; Request ID: dc0e2d28-2e99-11e7-b372-7fcc6fb65fe7)

Pour un rôle de parc d'instances Spot non valide :

CLIENT_ERROR - Parameter: SpotFleetRequestConfig.IamFleetRole is invalid. (Service: AmazonEC2; Status Code: 400; Error Code: InvalidSpotFleetRequestConfig; Request ID: 331205f0-5ae3-4cea-bac4-897769639f8d) Parameter: SpotFleetRequestConfig.IamFleetRole is invalid

L'une des causes fréquentes de ce problème est le scénario suivant. Vous ne spécifiez le nom d'un IAM rôle que lorsque vous utilisez le AWS CLI ou le AWS SDKs, au lieu du nom complet de la ressource Amazon (ARN). Selon la façon dont vous avez créé le rôle, celui-ci ARN peut contenir un préfixe de aws-service-role chemin. Par exemple, si vous créez manuellement le rôle de AWS Batch service à l'aide des procédures décrites dansUtilisez des rôles liés à un service pour AWS Batch, votre rôle de service ARN peut ressembler à ce qui suit.

arn:aws:iam::123456789012:role/AWSBatchServiceRole

Toutefois, si vous avez créé le rôle de service dans le cadre de l'assistant de première exécution de la console aujourd'hui, votre rôle de service ARN pourrait ressembler à ce qui suit.

arn:aws:iam::123456789012:role/aws-service-role/AWSBatchServiceRole

Ce problème peut également se produire si vous associez la politique de AWS Batch niveau de service (AWSBatchServiceRole) à un rôle non lié au service. Par exemple, vous pouvez recevoir un message d'erreur semblable au suivant dans ce scénario :

CLIENT_ERROR - User: arn:aws:sts::account_number:assumed-role/batch-replacement-role/aws-batch is not authorized to perform: action on resource ...

Pour résoudre ce problème, effectuez l'une des opérations suivantes.

  • Utilisez une chaîne vide pour le rôle de service lorsque vous créez l'environnement AWS Batch informatique.

  • Spécifiez le rôle de service au format suivant :arn:aws:iam::account_number:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch.

Lorsque vous spécifiez uniquement le nom d'un IAM rôle lorsque vous utilisez le AWS CLI ou le AWS SDKs, cela AWS Batch suppose que vous ARN n'utilisez pas le préfixe de aws-service-role chemin. C'est pourquoi nous vous recommandons de spécifier l'intégralité ARN de vos IAM rôles lorsque vous créez des environnements informatiques.

Pour réparer un environnement informatique mal configuré de cette façon, consultezRéparation d'un environnement INVALID informatique.

Réparation d'un environnement INVALID informatique

Lorsqu'un environnement informatique est dans un INVALID état, mettez-le à jour pour réparer le paramètre non valide. Dans le cas Nom de rôle incorrect ou ARN contraire, mettez à jour l'environnement de calcul en utilisant le rôle de service approprié.

Pour réparer un environnement de calcul mal configuré
  1. Ouvrez la AWS Batch console à l'adresse https://console.aws.amazon.com/batch/.

  2. Dans la barre de navigation, sélectionnez le Région AWS à utiliser.

  3. Dans le panneau de navigation, choisissez Environnements de calcul.

  4. Sur la page Environnements de calcul, cochez la case en regard de l'environnement de calcul à modifier, puis choisissez Modifier.

  5. Sur la page Mettre à jour l'environnement de calcul, pour Rôle de service, choisissez le IAM rôle à utiliser avec votre environnement de calcul. La console AWS Batch affiche uniquement les rôles ayant la relation d'approbation appropriée pour les environnements de calcul.

  6. Choisissez Enregistrer pour mettre à jour votre environnement de calcul.