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à.
Ambiente di elaborazione NON VALIDO
È possibile che tu abbia configurato in modo errato un ambiente di elaborazione gestito. Se lo hai fatto, l'ambiente di calcolo entra in uno INVALID stato e non può accettare lavori per il collocamento. Le sezioni seguenti descrivono le possibili cause e come risolvere i problemi in base alla causa.
Importante
AWS Batch crea e gestisce più AWS risorse per tuo conto e all'interno del tuo account, tra cui Amazon EC2 Launch Templates, Amazon EC2 Auto Scaling Groups, Amazon EC2 Spot Fleets e Amazon ECS Clusters. Queste risorse gestite sono configurate specificamente per garantire un funzionamento ottimale. AWS Batch
La modifica manuale di queste Batch-managed risorse, a meno che non sia esplicitamente indicato nella AWS Batch
documentazione, può comportare un comportamento imprevisto con conseguente ambiente di INVALID calcolo, un comportamento non ottimale di scalabilità delle istanze, un ritardo nell'elaborazione del carico di lavoro o costi imprevisti. Queste modifiche manuali non possono essere supportate in modo deterministico dal servizio. AWS Batch Usa sempre le API Batch supportate o la console Batch per gestire i tuoi ambienti di calcolo.
Nome del ruolo o ARN errati
La causa più comune per cui un ambiente di calcolo entra in uno INVALID stato è che il ruolo di AWS Batch servizio o il ruolo Spot Fleet di Amazon EC2 ha un nome o Amazon Resource Name (ARN) errati. Questo è più comune negli ambienti di calcolo creati utilizzando o gli SDK. AWS CLI AWS Quando crei un ambiente di elaborazione in Console di gestione AWS, ti AWS Batch aiuta a scegliere il servizio o i ruoli Spot Fleet corretti. Supponiamo tuttavia di inserire manualmente il nome o l'ARN e di inserirli in modo errato. Quindi, lo è anche l'ambiente di calcolo risultante. INVALID
Tuttavia, supponiamo di inserire manualmente il nome o l'ARN di una risorsa IAM in un AWS CLI
comando o nel codice SDK. In questo caso, non è AWS Batch possibile convalidare la stringa. AWS Batch
Deve invece 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 causa comune di questo problema è il seguente scenario. Specifichi il nome di un ruolo IAM solo quando usi AWS CLI o gli AWS SDK, anziché l'Amazon Resource Name (ARN) completo. A seconda di come hai creato il ruolo, l'ARN potrebbe contenere un aws-service-role prefisso di percorso. Ad esempio, se si crea manualmente il ruolo di AWS Batch
servizio utilizzando le procedure inUtilizzo di ruoli collegati ai servizi per AWS Batch, l'ARN del ruolo di servizio 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 a AWS Batch livello di servizio (AWSBatchServiceRole) a un ruolo non di servizio. Ad esempio, in questo scenario potresti ricevere un messaggio di errore simile al seguente:
CLIENT_ERROR - User: arn:aws:sts::account_number:assumed-role/batch-replacement-role/aws-batch is not authorized to perform:actionon resource ...
Per risolvere il problema, effettuate una delle seguenti operazioni.
-
Utilizzate una stringa vuota per il ruolo del servizio quando create l'ambiente di AWS Batch elaborazione.
-
Specifica il ruolo del servizio nel seguente formato:
arn:aws:iam::.account_number:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch
Quando si specifica il nome di un ruolo IAM solo quando si utilizzano AWS CLI o gli AWS SDK, si AWS Batch presuppone che l'ARN non utilizzi il prefisso del aws-service-role percorso. Per questo motivo, ti consigliamo di specificare l'ARN completo per i tuoi ruoli IAM quando crei ambienti di calcolo.
Per riparare un ambiente di elaborazione mal configurato in questo modo, consulta. Riparare un ambiente di elaborazione NON VALIDO
Riparare un ambiente di elaborazione NON VALIDO
Quando hai un ambiente di calcolo in uno INVALID stato, aggiornalo per correggere il parametro non valido. Per esempioNome del ruolo o ARN errati, aggiorna l'ambiente di calcolo utilizzando il ruolo di servizio corretto.
Riparazione di un ambiente di calcolo configurato in modo errato
-
Apri la AWS Batch console all'indirizzo. https://console.aws.amazon.com/batch/
-
Dalla barra di navigazione, seleziona quello Regione AWS da usare.
-
Nel riquadro di navigazione, seleziona Compute environments (Ambienti di calcolo).
-
Nella pagina Ambienti di elaborazione, seleziona il pulsante di opzione accanto all'ambiente di elaborazione da modificare. È necessario selezionare un ambiente di elaborazione prima che le opzioni nel menu Azioni diventino disponibili.
-
Scegli Azioni e poi Modifica.
-
Nella pagina Aggiorna ambiente di elaborazione, per il ruolo Servizio, scegli il ruolo IAM da utilizzare con il tuo ambiente di elaborazione. La console di AWS Batch visualizza solo i ruoli con una relazione di trust corretta per gli ambienti di calcolo.
Suggerimento
Per istruzioni su come creare un ruolo collegato al servizio, consulta. Utilizzo dei ruoli per AWS Batch
-
Seleziona Save (Salva) per aggiornare l'ambiente di calcolo.