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à.
Crea definizioni di lavoro utilizzando EcsProperties
Utilizzando AWS Batch Job Definitions EcsProperties, è possibile modellare hardware, sensori, ambienti 3D e altre simulazioni in contenitori separati. È possibile utilizzare questa funzionalità per organizzare in modo logico i componenti del carico di lavoro e separarli dall'applicazione principale. Questa funzionalità può essere utilizzata con AWS Batch Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Kubernetes Service (Amazon EKS) e. AWS Fargate
ContainerPropertiesrispetto alle definizioni delle mansioni EcsProperties
È possibile scegliere di utilizzare ContainerPropertieso utilizzare le EcsPropertiesdefinizioni in base al caso d'uso. A un livello elevato, l'esecuzione di AWS Batch job with EcsProperties è simile all'esecuzione di job con a. ContainerProperties
La struttura di definizione dei processi esistente, in usoContainerProperties, rimane supportata. Se attualmente disponi di flussi di lavoro che utilizzano questa struttura, puoi continuare a eseguirli.
La differenza principale è che è stato aggiunto un nuovo oggetto alla definizione del processo per contenere le definizioni EcsProperties basate.
Ad esempio, una definizione di lavoro che viene utilizzata ContainerProperties su Amazon ECS e Fargate ha la seguente struttura:
{ "containerProperties": { ... "image": "my_ecr_image1", ... }, ... }
Una definizione di lavoro che viene utilizzata EcsProperties su Amazon ECS e Fargate ha la seguente struttura:
{ "ecsProperties": { "taskProperties": [{ "containers": [ { ... "image": "my_ecr_image1", ... }, { ... "image": "my_ecr_image2", ... },
Modifiche generali al AWS Batch APIs
Di seguito vengono illustrate ulteriormente alcune delle principali differenze nell'utilizzo dei tipi di dati ContainerProperties e delle EcsProperties API:
-
Molti dei parametri utilizzati all'interno vengono
ContainerPropertiesvisualizzati all'internoTaskContainerProperties. Alcuni esempi includonocommand,image,privileged,secrets, eusers. Si possono trovare tutti all'interno TaskContainerProperties. -
Alcuni
TaskContainerPropertiesparametri non hanno equivalenti funzionali nella struttura precedente. Alcuni esempi includono,dependsOn,essential,nameipcMode, epidMode. Per ulteriori informazioni, consultare EcsTaskDetails e TaskContainerProperties.Inoltre, alcuni
ContainerPropertiesparametri non hanno equivalenti o applicazioni nellaEcsPropertiesstruttura. IntaskProperties,containerè stato sostituito con incontainersmodo che il nuovo oggetto possa accettare fino a dieci elementi. Per ulteriori informazioni, vedi:containerProperties e:containersRegisterJobDefinition. EcsTaskProperties -
taskRoleArnè funzionalmente equivalentejobRoleArna. Per ulteriori informazioni, vedere EcsTaskProperties: taskRoleArn e ContainerProperties: jobRoleArn. -
È possibile includere da uno (1) a dieci (10) contenitori nella
EcsPropertiesstruttura. Per ulteriori informazioni, vedi:containersEcsTaskProperties. -
Gli oggetti
taskPropertiese InstanceTypes sono matrici, ma attualmente accettano solo un elemento. Ad esempio, :taskProperties e:instanceTypesEcsProperties. NodeRangeProperty
Definizioni di processi multi-container per Amazon ECS
Per adattarsi alla struttura multi-contenitore per Amazon ECS, alcuni tipi di dati delle API sono diversi. Ad esempio,
-
ecsPropertiesè lo stesso livello della definizione dicontainerPropertiescontenitore singolo. Per ulteriori informazioni, consulta EcsProperties nella guida di riferimento delle API AWS Batch . -
taskPropertiescontiene le proprietà definite per il task Amazon ECS. Per ulteriori informazioni, consulta EcsProperties nella guida di riferimento delle API AWS Batch . -
containersinclude informazioni simili a quelle contenutecontainerPropertiesnella definizione di contenitore singolo. La differenza principale è checontainersconsente di definire fino a dieci contenitori. Per ulteriori informazioni, consulta ECSTaskProperties:Containers nella API Reference Guide.AWS Batch -
essentialil parametro indica in che modo il contenitore influisce sul lavoro. Tutti i contenitori essenziali devono essere completati correttamente (uscire come 0) per far avanzare il lavoro. Se un contenitore contrassegnato come essenziale fallisce (esce come diverso da 0), il processo fallisce.Il valore predefinito è
truee almeno un contenitore deve essere contrassegnato come.essentialPer ulteriori informazioni, consultaessentialnella guida di riferimento delle API AWS Batch . -
Con il
dependsOnparametro, è possibile definire un elenco di dipendenze del contenitore. Per ulteriori informazioni, consultadependsOnnella guida di riferimento delle API AWS Batch .Nota
La complessità dell'
dependsOnelenco e il relativo runtime del contenitore possono influire sull'ora di inizio del processo. Se l'esecuzione delle dipendenze impiega molto tempo, il processo rimarrà in unoSTARTINGstato fino al completamento.
Per ulteriori informazioni sulla struttura ecsProperties and, consulta la sintassi della RegisterJobDefinitionrichiesta per ECSProperties.
Definizioni di processi multi-container per Amazon EKS
Per adattarsi alla struttura multi-contenitore per Amazon EKS, alcuni tipi di dati delle API sono diversi. Ad esempio,
-
nameè un identificatore univoco per il contenitore. Questo oggetto non è richiesto per un singolo contenitore, ma è necessario quando si definiscono più contenitori in un contenitore. Quandonamenon è definito per singoli contenitori, viene applicato il nome predefinitodefault,. -
initContainerssono definiti all'interno del tipo di eksPodPropertiesdati. Vengono eseguiti prima dei contenitori delle applicazioni, vengono sempre eseguiti fino al completamento e devono essere completati correttamente prima dell'avvio del contenitore successivo.Questi contenitori sono registrati con l'agente Amazon EKS Connector e mantengono le informazioni di registrazione nell'archivio dati di backend di Amazon Elastic Kubernetes Service. L'
initContainersoggetto può accettare fino a dieci (10) elementi. Per ulteriori informazioni, vedete Init Containersnella Kubernetesdocumentazione. Nota
L'
initContainersoggetto può influire sull'ora di inizio del lavoro. Se l'esecuzioneinitContainersrichiede molto tempo, il processo rimarrà in unoSTARTINGstato fino al completamento. -
shareProcessNamespaceindica se i contenitori nel contenitore possono condividere lo stesso spazio dei nomi del processo. I valori predefiniti sono.falseImpostando questa impostazionetrueper consentire ai contenitori di visualizzare e segnalare i processi in altri contenitori che si trovano nello stesso contenitore. -
Ogni contenitore ha un'importanza. Affinché il lavoro abbia esito positivo, tutti i contenitori devono essere completati correttamente (uscire come 0). Se un contenitore fallisce (esce con un valore diverso da 0), il processo fallisce.
Per ulteriori informazioni sulla struttura eksProperties and, vedere la sintassi della RegisterJobDefinitionrichiesta per EksProperties.