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 le definizioni dei AWS Batch lavori EcsProperties
, puoi 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 (AmazonECS), Amazon Elastic Kubernetes Service (EKSAmazon) e. AWS Fargate
ContainerProperties
rispetto alle definizioni delle mansioni EcsProperties
È possibile scegliere di utilizzare ContainerProperties
o utilizzare le EcsProperties
definizioni 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 utilizzata ContainerProperties
su Amazon ECS e Fargate ha la seguente struttura:
{ "containerProperties": { ... "image": "my_ecr_image1", ... }, ... }
Una definizione di lavoro 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 di EcsProperties
e dei tipi di EcsProperties
API dati:
-
Molti dei parametri utilizzati all'interno vengono
ContainerProperties
visualizzati all'internoTaskContainerProperties
. Alcuni esempi includonocommand
,image
,privileged
,secrets
, eusers
. Si possono trovare tutti all'interno TaskContainerProperties. -
Alcuni
TaskContainerProperties
parametri non hanno equivalenti funzionali nella struttura precedente. Alcuni esempi includono,dependsOn
,essential
,name
ipcMode
, epidMode
. Per ulteriori informazioni, vedere EcsTaskDetailse TaskContainerProperties.Inoltre, alcuni
ContainerProperties
parametri non hanno equivalenti o applicazioni nellaEcsProperties
struttura. IntaskProperties
,container
è stato sostituito con incontainers
modo che il nuovo oggetto possa accettare fino a dieci elementi. Per ulteriori informazioni, vedere RegisterJobDefinition: containerProperties and:containersEcsTaskProperties. -
taskRoleArn
è funzionalmente equivalente a.jobRoleArn
Per ulteriori informazioni, vedere EcsTaskProperties: taskRoleArn e ContainerProperties: jobRoleArn. -
È possibile includere da uno (1) a dieci (10) contenitori nella
EcsProperties
struttura. Per ulteriori informazioni, vedi:containersEcsTaskProperties. -
instanceTypes Gli oggetti
taskProperties
e sono matrici, ma attualmente accettano solo un elemento. Ad esempio, EcsProperties: taskProperties e NodeRangeProperty: instanceTypes.
Definizioni di lavoro multi-container per Amazon ECS
Per adattarsi alla struttura multi-contenitore di AmazonECS, alcuni tipi di API dati sono diversi. Ad esempio,
-
ecsProperties
è lo stesso livello della definizionecontainerProperties
a contenitore singolo. Per ulteriori informazioni, consulta EcsPropertiesla Guida AWS Batch API di riferimento. -
taskProperties
contiene le proprietà definite per il ECS task Amazon. Per ulteriori informazioni, EcsPropertiesconsulta la Guida AWS Batch API di riferimento. -
containers
include informazioni simili a quelle contenutecontainerProperties
nella definizione di contenitore singolo. La differenza principale è checontainers
consente di definire fino a dieci contenitori. Per ulteriori informazioni, vedi:containers ECSTaskPropertiesnella Guida di riferimento.AWS Batch API -
essential
il 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 è
true
e almeno un contenitore deve essere contrassegnato come.essential
Per ulteriori informazioni,essential
consulta la Guida AWS Batch API di riferimento. -
Con il
dependsOn
parametro, puoi definire un elenco di dipendenze del contenitore. Per ulteriori informazioni,dependsOn
consultate la Guida AWS Batch API di riferimento.Nota
La complessità dell'
dependsOn
elenco 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 unoSTARTING
stato fino al completamento.
Per ulteriori informazioni sulla struttura ecsProperties
and, consulta la sintassi della RegisterJobDefinitionrichiesta per. ecsProperties
Definizioni di lavoro multi-container per Amazon EKS
Per adattarsi alla struttura multi-contenitore di AmazonEKS, alcuni tipi di API dati 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. Quandoname
non è definito per singoli contenitori, viene applicato il nome predefinitodefault
,. -
initContainers
sono 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 nel data store di backend di Amazon Elastic Kubernetes Service. L'
initContainers
oggetto può accettare fino a dieci (10) elementi. Per ulteriori informazioni, vedete Init Containersnel Kubernetes documentazione. Nota
L'
initContainers
oggetto può influire sull'ora di inizio del lavoro. Se l'esecuzioneinitContainers
richiede molto tempo, il processo rimarrà in unoSTARTING
stato fino al completamento. -
shareProcessNamespace
indica se i contenitori nel pod possono condividere lo stesso spazio dei nomi del processo. I valori predefiniti sono.false
Impostando questa impostazionetrue
per 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, consulta la sintassi della RegisterJobDefinitionrichiesta per. eksProperties