INVALIDambiente di calcolo - AWS Batch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

INVALIDambiente di calcolo

È possibile che tu abbia configurato in modo errato un ambiente di elaborazione gestito. Se l'hai fatto, l'ambiente di elaborazione entra in uno INVALID stato e non può accettare offerte di lavoro per il collocamento. Le sezioni seguenti descrivono le possibili cause e come risolverli in base alla causa.

Nome del ruolo errato o ARN

La causa più comune per cui un ambiente di elaborazione entra in uno INVALID stato è che il ruolo di AWS Batch servizio o il ruolo Amazon EC2 Spot Fleet hanno un nome o un nome Amazon Resource Name errati (ARN). Questo è più comune negli ambienti di elaborazione creati utilizzando AWS CLI o il. AWS SDKs Quando crei un ambiente di elaborazione in AWS Management Console, ti AWS Batch aiuta a scegliere il servizio o i ruoli corretti di Spot Fleet. Tuttavia, supponiamo che tu inserisca manualmente il nome o il ARN e lo inserisca in modo errato. Quindi, lo è anche l'ambiente di calcolo risultante. INVALID

Si supponga tuttavia di immettere manualmente il nome o ARN una IAM risorsa in un AWS CLI comando o nel codiceSDK. In questo caso, non è AWS Batch possibile convalidare la stringa. Invece, AWS Batch deve accettare il valore errato e tentare di creare l'ambiente. Se AWS Batch non riesce a creare l'ambiente, l'ambiente passa a uno INVALID stato e vengono visualizzati i seguenti errori.

In caso di ruolo del servizio non valido:

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

In caso di parco istanze Spot non valido:

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

Una delle cause più comuni di questo problema è lo scenario seguente. Specifichi il nome di un IAM ruolo solo quando usi AWS CLI o il AWS SDKs, anziché l'Amazon Resource Name completo (ARN). A seconda di come hai creato il ruolo, ARN potrebbe contenere un prefisso di aws-service-role percorso. Ad esempio, se si crea manualmente il ruolo di AWS Batch servizio utilizzando le procedure inUtilizza ruoli collegati ai servizi per AWS Batch, il ruolo di servizio ARN potrebbe essere simile al seguente.

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

Tuttavia, se oggi hai creato il ruolo di servizio come parte della procedura guidata per la prima esecuzione della console, il tuo ruolo di servizio ARN potrebbe essere simile al seguente.

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

Questo problema può verificarsi anche se si associa la policy del AWS Batch livello di servizio (AWSBatchServiceRole) a un ruolo non di servizio. Ad esempio, in questo scenario è possibile che venga visualizzato un messaggio di errore analogo al seguente:

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

Per risolvere questo problema, effettuate una delle seguenti operazioni.

  • Usa una stringa vuota per il ruolo di servizio quando crei l'ambiente di AWS Batch calcolo.

  • Specificare il ruolo di servizio nel seguente formato:arn:aws:iam::account_number:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch.

Quando si specifica il nome di un IAM ruolo solo quando si utilizza AWS CLI o il AWS SDKs, si AWS Batch presume che ARN non si utilizzi il prefisso del aws-service-role percorso. Per questo motivo, ti consigliamo di specificare il valore completo ARN dei tuoi IAM ruoli quando crei ambienti di calcolo.

Per riparare un ambiente di calcolo configurato in modo errato in questo modo, vedi. Riparazione di un ambiente di elaborazione INVALID

Riparazione di un ambiente di elaborazione INVALID

Quando hai un ambiente di calcolo in uno INVALID stato, aggiornalo per correggere il parametro non valido. Ad esempioNome del ruolo errato o ARN, aggiorna l'ambiente di calcolo utilizzando il ruolo di servizio corretto.

Riparazione di un ambiente di calcolo configurato in modo errato
  1. Apri la AWS Batch console all'indirizzo https://console.aws.amazon.com/batch/.

  2. Dalla barra di navigazione, seleziona quello Regione AWS da usare.

  3. Nel riquadro di navigazione, seleziona Compute environments (Ambienti di calcolo).

  4. Nella pagina Compute environments (Ambienti di calcolo), seleziona il pulsante accanto all'ambiente di calcolo da modificare, quindi scegliere Edit (Modifica).

  5. Nella pagina Aggiorna ambiente di calcolo, per Ruolo di servizio, scegli il IAM ruolo da utilizzare con il tuo ambiente di calcolo. La console di AWS Batch visualizza solo i ruoli con una relazione di trust corretta per gli ambienti di calcolo.

  6. Seleziona Save (Salva) per aggiornare l'ambiente di calcolo.