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à.
Parametri di definizione del lavoro per ContainerProperties
Le definizioni delle mansioni utilizzate ContainerProperties sono suddivise in diverse parti:
Il nome della definizione del lavoro
Il tipo di definizione del lavoro
I valori predefiniti del segnaposto per la sostituzione dei parametri
Le proprietà del contenitore per il lavoro
-
Le proprietà Amazon EKS per la definizione del processo necessarie per i lavori eseguiti su risorse Amazon EKS
Le proprietà dei nodi necessarie per un processo parallelo a più nodi
Le funzionalità della piattaforma necessarie per i lavori vengono eseguite sulle risorse Fargate
I dettagli di propagazione dei tag predefiniti della definizione del lavoro
La strategia di ripetizione predefinita per la definizione del processo
La priorità di pianificazione predefinita per la definizione del processo
I tag predefiniti per la definizione del lavoro
Il timeout predefinito per la definizione del lavoro
Indice
Nome della definizione del lavoro
jobDefinitionName-
Quando si registra una definizione di processo, è necessario specificare un nome, Il nome può contenere fino a 128 caratteri. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (_). Alla prima definizione di lavoro registrata con quel nome viene assegnata una revisione di 1. Tutte le successive definizioni del processo registrate con tale nome vengono contrassegnate con un numero di revisione incrementale.
Tipo: stringa
Obbligatorio: sì
Tipo
type-
Quando si registra una definizione di processo, è necessario specificare il tipo di processo. Se il lavoro viene eseguito con risorse Fargate,
multinodenon è supportato. Per ulteriori informazioni sui processi in parallelo a più nodi, consulta Creare una definizione di processo parallelo multinodo.Tipo: String
Valori validi:
container|multinodeObbligatorio: sì
Parameters
parameters-
Quando invii un lavoro, puoi specificare parametri che sostituiscono i segnaposto o sovrascrivono i parametri di definizione del lavoro predefiniti. I parametri delle richieste di invio del processo hanno priorità rispetto ai valori predefiniti di una definizione del processo. Ciò significa che è possibile utilizzare la stessa definizione di lavoro per più lavori che utilizzano lo stesso formato. È inoltre possibile modificare a livello di codice i valori del comando al momento dell'invio.
Tipo: mappatura stringa a stringa
Obbligatorio: no
Quando si registra una definizione di processo, è possibile utilizzare segnaposto di sostituzione dei parametri nel campo
commanddelle proprietà del container del processo. La sintassi è esposta di seguito."command": [ "ffmpeg", "-i", "Ref::inputfile", "-c", "Ref::codec", "-o", "Ref::outputfile" ]Nell'esempio precedente, sono presenti segnaposto per la sostituzione del parametro
,Ref::inputfileeRef::codecnel comando. È possibile utilizzare l'Ref::outputfileparametersoggetto nella definizione del lavoro per impostare i valori predefiniti per questi segnaposto. Ad esempio, per impostare un valore predefinito per il segnaposto, è necessario specificare quanto segue nella definizione del processo:Ref::codec"parameters" : {"codec" : "mp4"}Quando questa definizione di processo viene inviata per l'esecuzione, l'
argomento nel comando relativo al contenitore viene sostituito con il valore predefinito,.Ref::codecmp4
Proprietà del contenitore
Quando registri una definizione di processo, specifica un elenco di proprietà del contenitore che vengono passate al demone Docker su un'istanza del contenitore quando il lavoro viene inserito. Di seguito sono indicate le proprietà del container consentite in una definizione di processo. Per i processi a nodo singolo, queste proprietà del container vengono impostate a livello di definizione del processo. Per i processi paralleli a più nodi, le proprietà del container vengono impostate nel livello Proprietà del nodo, per ciascun gruppo di nodi.
command-
Il comando che viene inviato al container. Questo parametro è mappato a
Cmdnella sezione Crea un containerdell'API remota Docker e al parametro COMMANDdi docker run. Per ulteriori informazioni sul CMDparametro Docker, vedere #cmd. https://docs.docker.com/engine/reference/builder/"command": ["string", ...]Tipo: array di stringhe
Obbligatorio: no
environment-
Le variabili di ambiente da passare a un container. Questo parametro è mappato a
Envnella sezione Create a containerdi Docker Remote API e l'opzione --enva docker run. Importante
Non è consigliabile utilizzare variabili d'ambiente non crittografate per informazioni sensibili, ad esempio dati di credenziali.
Nota
Le variabili di ambiente non devono iniziare con
AWS_BATCH. Questa convenzione di denominazione è riservata alle variabili impostate dal AWS Batch servizio.Tipo: array di coppie chiave-valore
Obbligatorio: no
name-
Il nome della variabile di ambiente.
Tipo: String
Campo obbligatorio: sì, quando viene usato
environment. value-
Il valore della variabile di ambiente.
Tipo: String
Campo obbligatorio: sì, quando viene usato
environment.
"environment" : [ { "name" : "envName1", "value" : "envValue1" }, { "name" : "envName2", "value" : "envValue2" } ] executionRoleArn-
Quando registri una definizione di lavoro, puoi specificare un ruolo IAM. Il ruolo fornisce all'agente container Amazon ECS le autorizzazioni per chiamare le azioni API specificate nelle politiche associate per tuo conto. I job eseguiti su risorse Fargate devono fornire un ruolo di esecuzione. Per ulteriori informazioni, consulta AWS Batch Ruolo di esecuzione IAM.
▬Tipo: stringa
Obbligatorio: no
fargatePlatformConfiguration-
La configurazione della piattaforma per i lavori eseguiti sulle risorse Fargate. I processi in esecuzione su risorse EC2 non devono specificare questo parametro.
Tipo: oggetto FargatePlatformConfiguration
Obbligatorio: no
platformVersion-
La versione della piattaforma AWS Fargate utilizzata per i lavori o per
LATESTutilizzare una versione recente e approvata della piattaforma AWS Fargate.Tipo: String
Impostazione predefinita:
LATESTObbligatorio: no
image-
L'immagine utilizzata per iniziare un lavoro. Questa stringa viene trasmessa direttamente al daemon Docker. Le immagini nel registro Docker Hub sono disponibili di default. Puoi anche specificare altri repository con
. Il nome può contenere un massimo di 255 lettere (maiuscole e minuscole); sono consentiti numeri, trattini, caratteri di sottolineatura, due punti, punti, barre e cancelletti. Questo parametro è mappato arepository-url/image:tagImagenella sezione Crea un containerdell'API remota Docker e al parametro IMAGEdi docker run. Nota
L'architettura immagine Docker deve corrispondere all'architettura del processore delle risorse di calcolo su cui sono pianificate. Ad esempio, le immagini ARM-based Docker possono essere eseguite solo su risorse di ARM-based calcolo.
-
Le immagini nei repository pubblici di Amazon ECR utilizzano le convenzioni complete
registry/repository[:tag]o diregistry/repository[@digest]denominazione (ad esempio).public.ecr.aws/registry_alias/my-web-app:latest -
Le immagini nei repository Amazon ECR utilizzano la convenzione di denominazione completa.
registry/repository:[tag]Ad esempio,aws_account_id.dkr.ecr.region.amazonaws.com/.my-web-app:latest -
Le immagini in repository ufficiali su Docker Hub utilizzano un singolo nome (ad esempio
ubuntuomongo). -
Le immagini in altri repository su Docker Hub vengono qualificate con un nome di organizzazione (ad esempi,
amazon/amazon-ecs-agent). -
Le immagini in altri archivi online vengono ulteriormente qualificate da un nome di dominio (ad esempi,
quay.io/assemblyline/ubuntu).
Tipo: stringa
Obbligatorio: sì
-
instanceType-
Il tipo di istanza da usare per un processo parallelo a più nodi. Attualmente tutti i gruppi di nodi in un processo parallelo a più nodi devono utilizzare lo stesso tipo di istanza. Questo parametro non è valido per i lavori in container a nodo singolo o per i lavori eseguiti su risorse Fargate.
▬Tipo: stringa
Obbligatorio: no
jobRoleArn-
Quando registri una definizione di job, puoi specificare un ruolo IAM. che fornisce al container del processo le autorizzazioni necessarie per chiamare le operazioni dell'API specificate nelle policy associate per conto dell'utente. Per ulteriori informazioni, consulta Ruoli IAM per le attività nella Guida per sviluppatori di Amazon Elastic Container Service.
▬Tipo: stringa
Obbligatorio: no
linuxParameters-
Linux-specific modifiche applicate al contenitore, ad esempio i dettagli per le mappature dei dispositivi.
"linuxParameters": { "devices": [ { "hostPath": "string", "containerPath": "string", "permissions": [ "READ", "WRITE", "MKNOD" ] } ], "initProcessEnabled":true|false, "sharedMemorySize": 0, "tmpfs": [ { "containerPath": "string", "size":integer, "mountOptions": [ "string" ] } ], "maxSwap":integer, "swappiness":integer}Tipo: oggetto LinuxParameters
Obbligatorio: no
devices-
Elenco dei dispositivi mappati nel container. Questo parametro è mappato a
Devicesnella sezione Crea un containerdi API Docker Remote e l'opzione --devicea docker run. Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: matrice di oggetti Device
Obbligatorio: no
hostPath-
Percorso in cui si trova il dispositivo disponibile nell'istanza del contenitore host.
Tipo: stringa
Obbligatorio: sì
containerPath-
Percorso in cui il dispositivo è esposto nel contenitore. Se questo non è specificato, il dispositivo viene esposto nello stesso percorso del percorso host.
▬Tipo: stringa
Obbligatorio: no
permissions-
Autorizzazioni per il dispositivo nel container. Se non viene specificato, le autorizzazioni sono impostate su
READWRITE, eMKNOD.Tipo: array di stringhe
Obbligatorio: no
Valori validi:
READ|WRITE|MKNOD
initProcessEnabled-
Se true, esegue un processo
initnel container che inoltra segnali e raccoglie i processi. Questo parametro è mappato all'opzione--initsu docker run. Questo parametro richiede la versione 1.25 o successiva di Docker Remote API sull'istanza di container. Per controllare la versione Docker Remote API nell'istanza di container, accedi all'istanza di container ed esegui il seguente comando: sudo docker version | grep "Server API version"Tipo: Booleano
Obbligatorio: no
maxSwap-
La quantità totale di memoria di swap (in MiB) che un job può utilizzare. Questo parametro viene convertito nell'opzione
--memory-swapin docker rundove il valore sarebbe la somma della memoria del container più il valore maxSwap. Per ulteriori informazioni, consulta la sezione relativa ai dettagli--memory-swapnella documentazione Docker. Se viene specificato il valore
maxSwapdi0, il container non utilizzerà lo swap. I valori accettati sono0o qualsiasi numero intero positivo. Se ilmaxSwapparametro viene omesso, il contenitore utilizza la configurazione di swap per l'istanza del contenitore su cui viene eseguito. È necessario impostare un valoremaxSwapper il parametroswappinessda utilizzare.Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: Integer
Obbligatorio: no
sharedMemorySize-
Valore per le dimensioni (in MiB) del volume
/dev/shm. Questo parametro è mappato all'opzione--shm-sizesu docker run. Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: Integer
Obbligatorio: no
swappiness-
In questo modo è possibile ottimizzare il comportamento swappiness di memoria di un container.
swappinessIl valore di0fa sì che lo scambio non avvenga a meno che non sia assolutamente necessario. Un valoreswappinessdi100produrrà lo swap delle pagine in modo aggressivo. I valori accettati sono numeri interi compresi tra0e100. Se il parametroswappinessnon è specificato, viene utilizzato un valore predefinito60. Se non viene specificato un valore permaxSwap, questo parametro verrà ignorato. SemaxSwapè impostato su 0, il container non utilizza lo swap. Questo parametro è mappato all'opzione--memory-swappinesssu docker run. Quando utilizzi una configurazione swap container, considera quanto segue:
-
Lo spazio di swap deve essere abilitato e allocato sull'istanza di container per consentire ai container di utilizzarlo.
Nota
Le AMI ottimizzate per Amazon ECS non hanno lo swap abilitato per impostazione predefinita. È necessario abilitare lo swap sull'istanza per utilizzare questa funzionalità. Per ulteriori informazioni, consulta Instance Store Swap Volumes nella Amazon EC2 User Guide o How do I allocate memory to work as swap space in un'istanza Amazon EC2 utilizzando un file di swap?
. -
I parametri dello spazio di swap sono supportati solo per le definizioni dei processi che utilizzano risorse EC2.
-
Se i parametri
maxSwapeswappinessvengono omessi dalla definizione di un processo, per ogni container viene ripristinato il valoreswappinesspredefinito di 60. L'utilizzo totale dello swap è limitato a due volte la riserva di memoria del contenitore.
Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: Integer
Obbligatorio: no
-
tmpfs-
Il percorso del container, le opzioni di montaggio e la dimensione montaggio tmpfs.
Tipo: matrice di oggetti Tmpfs
Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Obbligatorio: no
containerPath-
Il percorso assoluto del file nel container in cui è montato il volume tmpfs.
Tipo: stringa
Obbligatorio: sì
mountOptions-
L'elenco delle opzioni di montaggio del volume tmpfs.
Valori validi:
defaults"ro" | "rw" | "suid" | "" |nosuid"dev" | "" |nodev"exec" | "noexec" | "sync" | "async" | "dirsync" | "remount" | "mand" | "nomand" | "atime" | "noatime" | "diratime" | "nodiratime" | "bind" | "" |rbind"unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime" | "norelatime"» | "strictatime" | "nostrictatime" |»mode«|"uid"|gid" "|nr_inodes" "|nr_blocks" "mpol»Tipo: array di stringhe
Obbligatorio: no
size-
Le dimensioni (in MiB) del volume tmpfs.
Tipo: numero intero
Obbligatorio: sì
logConfiguration-
La specifica di configurazione del registro per il lavoro.
Questo parametro è mappato a
LogConfignella sezione Crea un containerdi API Docker Remote e l'opzione --log-drivera docker run. Per impostazione predefinita, i container utilizzano lo stesso driver di log utilizzato dal daemon Docker. Tuttavia, il contenitore può utilizzare un driver di registrazione diverso rispetto al demone Docker specificando un driver di registro con questo parametro nella definizione del contenitore. Per utilizzare un driver di registrazione diverso per un contenitore, il sistema di log deve essere configurato sull'istanza del contenitore o su un altro server di log per fornire opzioni di registrazione remota. Per ulteriori informazioni sulle opzioni per diversi driver di log supportati, consulta Configure logging drivers (Configurazione dei driver di log) nella documentazione di Docker. Nota
AWS Batch attualmente supporta un sottoinsieme dei driver di registrazione disponibili per il demone Docker (mostrati nel tipo di dati). LogConfiguration
Questo parametro richiede la versione 1.18 o successiva di Docker Remote API sull’istanza di container. Per controllare la versione Docker Remote API nell'istanza di container, accedi all'istanza di container ed esegui il seguente comando:
sudo docker version | grep "Server API version""logConfiguration": { "devices": [ { "logDriver": "string", "options": { "optionName1" : "optionValue1", "optionName2" : "optionValue2" } "secretOptions": [ { "name" : "secretOptionName1", "valueFrom" : "secretOptionArn1" }, { "name" : "secretOptionName2", "valueFrom" : "secretOptionArn2" } ] } ] }Tipo: oggetto LogConfiguration
Obbligatorio: no
logDriver-
Il driver di registro da utilizzare per il lavoro. Per impostazione predefinita, AWS Batch abilita il driver di
awslogsregistro. I valori validi elencati per questo parametro sono driver di log con i quali l'agente del container Amazon ECS può comunicare per impostazione predefinita.Questo parametro è mappato a
LogConfignella sezione Crea un containerdi API Docker Remote e l'opzione --log-drivera docker run. Per impostazione predefinita, i job utilizzano lo stesso driver di registrazione utilizzato dal demone Docker. Tuttavia, il job può utilizzare un driver di registrazione diverso rispetto al demone Docker specificando un driver di log con questo parametro nella definizione del job. Se si desidera specificare un altro driver di registrazione per un job, il sistema di log deve essere configurato sull'istanza del contenitore nell'ambiente di calcolo. Oppure, in alternativa, configuralo su un altro server di log per fornire opzioni di registrazione remota. Per ulteriori informazioni sulle opzioni per diversi driver di log supportati, consulta Configure logging drivers (Configurazione dei driver di log) nella documentazione di Docker. Nota
AWS Batch attualmente supporta un sottoinsieme dei driver di registrazione disponibili per il demone Docker. Ulteriori driver di log potranno essere disponibili nei rilasci futuri dell'agente del container Amazon ECS.
I driver di log supportati sono
awslogs,fluentd,gelf,json-file,journald,logentries,syslogesplunk.Nota
I lavori eseguiti sulle risorse di Fargate sono limitati ai driver e log.
awslogssplunkQuesto parametro richiede la versione 1.18 o successiva di Docker Remote API sull’istanza di container. Per controllare la versione Docker Remote API nell'istanza di container, accedi all'istanza di container ed esegui il seguente comando:
sudo docker version | grep "Server API version"Nota
L'agente container Amazon ECS che viene eseguito su un'istanza del contenitore deve registrare i driver di registrazione disponibili su quell'istanza con la
ECS_AVAILABLE_LOGGING_DRIVERSvariabile di ambiente. Altrimenti, i contenitori collocati su quell'istanza non possono utilizzare queste opzioni di configurazione dei log. Per ulteriori informazioni, consulta Configurazione dell'agente del container Amazon ECS nella Guida per gli sviluppatori di Amazon Elastic Container Service.awslogs-
Specifica il driver di registrazione Amazon CloudWatch Logs. Per ulteriori informazioni, consulta il driver Usa il driver di registro awslogs di registrazione di Amazon CloudWatch Logs
nella documentazione Docker. fluentd-
Specifica il driver di log Fluentd. Per ulteriori informazioni, inclusi utilizzo e opzioni, consulta il driver di registrazione
Fluentd nella documentazione Docker. gelf-
Specifica il driver di log GELF (Greylog Extended Format). Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, vedi il driver di registrazione Graylog Extended Format nella documentazione Docker.
journald-
Specifica il driver di log journald. Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, vedi il driver di registrazione Journald nella documentazione Docker.
json-file-
Specifica il driver di log del file JSON. Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, consulta il driver di registrazione
JSON File nella documentazione Docker. splunk-
Specifica il driver di log Splunk. Per ulteriori informazioni, inclusi utilizzo e opzioni, consulta il driver di registrazione
Splunk nella documentazione Docker. syslog-
Specifica il driver di log syslog. Per ulteriori informazioni, inclusi utilizzo e opzioni, consulta il driver di registrazione Syslog nella documentazione Docker.
Tipo: stringa
Obbligatorio: sì
Valori validi:
awslogs|fluentd|gelf|journald|json-file|splunk|syslogNota
Se disponi di un driver personalizzato non elencato in precedenza che desideri utilizzare con l'agente container Amazon ECS, puoi creare un fork del progetto di agente contenitore Amazon ECS disponibile su GitHub
e personalizzarlo in modo che funzioni con quel driver. Ti consigliamo di inviare le richieste pull per le modifiche che desideri siano incluse. Tuttavia, Amazon Web Services attualmente non supporta le richieste che eseguono copie modificate di questo software. options-
Opzioni di configurazione dei log da inviare a un driver di registro per il lavoro.
Questo parametro richiede la versione 1.19 o successiva di Docker Remote API sull'istanza di container.
Tipo: mappatura stringa a stringa
Obbligatorio: no
secretOptions-
Un oggetto che rappresenta il segreto da inviare alla configurazione di log. Per ulteriori informazioni, consulta Specificare dati sensibili.
Tipo: matrice di oggetti
Obbligatorio: no
name-
Il nome dell'opzione del driver di registro da impostare nel job.
Tipo: stringa
Obbligatorio: sì
valueFrom-
L'Amazon Resource Name (ARN) del segreto da esporre alla configurazione del log del contenitore. I valori supportati sono l'ARN completo del segreto di Secrets Manager o l'ARN completo del parametro nell'SSM Parameter Store.
Nota
Se il parametro SSM Parameter Store è presente Regione AWS nell'operazione che stai avviando, puoi utilizzare l'ARN completo o il nome del parametro. Se il parametro esiste in una Regione diversa, deve essere specificato l'ARN completo.
Tipo: stringa
Obbligatorio: sì
memory-
Questo parametro è obsoleto, utilizzalo invece.
resourceRequirementsIl numero di MiB di memoria riservati per il lavoro.
Ad esempio
resourceRequirements, se la definizione del lavoro contiene una sintassi simile alla seguente."containerProperties": { "memory":512}La sintassi equivalente utilizzata
resourceRequirementsè la seguente."containerProperties": { "resourceRequirements": [ { "type": "MEMORY", "value": "512" } ] }Tipo: numero intero
Obbligatorio: sì
mountPoints-
I punti di montaggio per i volumi di dati nel container. Questo parametro è mappato a
Volumesnella sezione Create a containerdi Docker Remote API e l'opzione --volumea docker run. "mountPoints": [ { "sourceVolume": "string", "containerPath": "string", "readOnly":true|false} ]Tipo: array di oggetti
Obbligatorio: no
sourceVolume-
Il nome del volume da montare.
Tipo: String
Campo obbligatorio: sì, quando viene usato
mountPoints. containerPath-
Il percorso nel contenitore in cui montare il volume host.
Tipo: String
Campo obbligatorio: sì, quando viene usato
mountPoints. readOnly-
Se il valore è
true, il container avrà accesso in sola lettura al volume. Se il valore èfalse, il container avrà accesso in scrittura al volume.Tipo: Booleano
Obbligatorio: no
Impostazione predefinita: False
networkConfiguration-
La configurazione di rete per i job eseguiti sulle risorse Fargate. I processi in esecuzione su risorse EC2 non devono specificare questo parametro.
"networkConfiguration": { "assignPublicIp": "string" }Tipo: array di oggetti
Obbligatorio: no
assignPublicIp-
Indica se il processo ha un indirizzo IP pubblico. Questa operazione è necessaria se il job richiede l'accesso alla rete in uscita.
Tipo: String
Valori validi:
ENABLED|DISABLEDObbligatorio: no
Impostazione predefinita:
DISABLED
privileged-
Se il parametro è true, al container vengono assegnati privilegi elevati nell'istanza di container host (simile all'utente
root). Questo parametro è mappato aPrivilegednella sezione Create a containerdi Docker Remote API e l'opzione --privilegeda docker run. Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate. Non fornirlo né specificarlo come falso. "privileged":true|falseTipo: Booleano
Obbligatorio: no
readonlyRootFilesystem-
Se il parametro è true, al container viene assegnato l'accesso in sola lettura al file system radice. Questo parametro è mappato a
ReadonlyRootfsnella sezione Create a containerdi Docker Remote API e l'opzione --read-onlya docker run. "readonlyRootFilesystem":true|falseTipo: Booleano
Obbligatorio: no
resourceRequirements-
Il tipo e la quantità di una risorsa da assegnare a un container. Le risorse supportate includono
GPU,MEMORYeVCPU."resourceRequirements" : [ { "type": "GPU", "value": "number" } ]Tipo: array di oggetti
Obbligatorio: no
type-
Il tipo di risorsa da assegnare a un container. Le risorse supportate includono
GPU,MEMORYeVCPU.Tipo: String
Campo obbligatorio: sì, quando viene usato
resourceRequirements. value-
La quantità di risorsa specificata da prenotare per il container. I valori variano in base al
typespecificato.- type="GPU"
-
Il numero di GPU fisici da prenotare per il container. Il numero di GPU riservate per tutti i contenitori di un job non può superare il numero di GPU disponibili sulla risorsa di calcolo su cui viene avviato il job.
- type="MEMORY"
-
Il limite rigido (in MiB) della memoria da presentare al container. Se il container tenta di superare la memoria specificata qui, viene terminato. Questo parametro è mappato a
Memorynella sezione Crea un containerdi API Docker Remote e l'opzione --memorya docker run. Per un processo, è necessario specificare almeno 4 MiB di memoria. Questo è obbligatorio ma può essere specificato in più posizioni per i processi MNP (Multi-Node Parallel). Deve essere specificato almeno una volta per ogni nodo. Questo parametro è mappato a Memorynella sezione Crea un containerdi API Docker Remote e l'opzione --memorya docker run. Nota
Se stai cercando di massimizzare l'utilizzo delle risorse fornendo ai tuoi job quanta più memoria possibile per un particolare tipo di istanza, consulta. Gestione della memoria delle risorse di calcolo
Per i lavori eseguiti su risorse Fargate,
valuedevono corrispondere a uno dei valori supportati. Inoltre, iVCPUvalori devono essere uno dei valori supportati per quel valore di memoria.VCPUMEMORY0,25 vCPU
512, 1024 e 2048 MiB
0,5 vCPU
1024-4096 MiB con incrementi di 1024 MiB
1 vCPU
2048-8192 MiB con incrementi di 1024 MiB
2 vCPU
4096-16384 MiB con incrementi di 1024 MiB
4 vCPU
8192-30720 MiB con incrementi di 1024 MiB
8 vCPU
16384-61440 MiB con incrementi di 4096 MiB
16 vCPU
32768-122880 MiB con incrementi di 8192 MiB
32 vCPU
61440, 122880 e 249856 MiB
- type="VCPU"
-
Il numero di vCPU prenotate per il processo. Questo parametro è mappato a
CpuSharesnella sezione Crea un containerdi API Docker Remote e l'opzione --cpu-sharesa docker run. Ogni vCPU equivale a 1.024 condivisioni di CPU. Per i processi eseguiti su risorse EC2, è necessario specificare almeno una vCPU. Questa operazione è obbligatoria ma può essere specificata in più punti. Deve essere specificato almeno una volta per ogni nodo. Per i lavori eseguiti su risorse Fargate,
valuedeve corrispondere a uno dei valori supportati e iMEMORYvalori devono essere uno dei valori supportati per quel valore VCPU. I valori supportati sono 0,25, 0,5, 1, 2, 4, 8, 16 e 32.L'impostazione predefinita per la quota di conteggio delle risorse di Fargate On-Demand vCPU è 6 vCPU. Per ulteriori informazioni sulle quote Fargate, vedere le quote Fargate nel. AWS Riferimenti generali di Amazon Web Services
Tipo: String
Campo obbligatorio: sì, quando viene usato
resourceRequirements.
secrets-
I segreti del lavoro che vengono esposti come variabili di ambiente. Per ulteriori informazioni, consulta Specificare dati sensibili.
"secrets": [ { "name": "secretName1", "valueFrom": "secretArn1" }, { "name": "secretName2", "valueFrom": "secretArn2" } ... ]Tipo: array di oggetti
Obbligatorio: no
name-
Il nome della variabile di ambiente che contiene il segreto.
Tipo: String
Campo obbligatorio: sì, quando viene usato
secrets. valueFrom-
Il segreto da esporre al container. I valori supportati sono l'Amazon Resource Name (ARN) completo del segreto di Secrets Manager o l'ARN completo del parametro in SSM Parameter Store.
Nota
Se il parametro SSM Parameter Store esiste nello Regione AWS stesso processo che stai avviando, puoi utilizzare l'ARN completo o il nome del parametro. Se il parametro esiste in una Regione diversa, deve essere specificato l'ARN completo.
Tipo: String
Campo obbligatorio: sì, quando viene usato
secrets.
ulimits-
Un elenco di valori
ulimitsda impostare nel container. Questo parametro è mappato aUlimitsnella sezione Create a containerdi Docker Remote API e l'opzione --ulimita docker run. "ulimits": [ { "name":string, "softLimit":integer, "hardLimit":integer} ... ]Tipo: array di oggetti
Obbligatorio: no
name-
typediulimit.Tipo: String
Campo obbligatorio: sì, quando viene usato
ulimits. hardLimit-
Il limite rigido per il tipo
ulimit.Tipo: numero intero
Campo obbligatorio: sì, quando viene usato
ulimits. softLimit-
Il limite flessibile per il tipo
ulimit.Tipo: numero intero
Campo obbligatorio: sì, quando viene usato
ulimits.
user-
Il nome utente per l'utilizzo all'interno del container. Questo parametro è mappato a
Usernella sezione Create a containerdi Docker Remote API e l'opzione --usera docker run. "user": "string"▬Tipo: stringa
Obbligatorio: no
vcpus-
Questo parametro è obsoleto, utilizzalo invece.
resourceRequirementsIl numero di vCPU prenotate per il container.
Ad esempio
resourceRequirements, se la definizione del lavoro contiene righe simili a questa:"containerProperties": { "vcpus":2}Le righe equivalenti utilizzate
resourceRequirementssono le seguenti."containerProperties": { "resourceRequirements": [ { "type": "VCPU", "value": "2" } ] }Tipo: numero intero
Obbligatorio: sì
volumes-
Quando si registra una definizione di processo, è possibile specificare un elenco di volumi da passare al daemon Docker su un'istanza di container. Nelle proprietà del container sono consentiti i seguenti parametri:
"volumes": [ { "name": "string", "host": { "sourcePath": "string" }, "efsVolumeConfiguration": { "authorizationConfig": { "accessPointId": "string", "iam": "string" }, "fileSystemId": "string", "rootDirectory": "string", "transitEncryption": "string", "transitEncryptionPort":number} } ]name-
Nome del volume. Sono consentiti fino a 255 lettere (maiuscole e minuscole), numeri, trattini e trattini bassi. Nel parametro
sourceVolumedella definizione del containermountPointsviene fatto riferimento a questo nome.▬Tipo: stringa
Obbligatorio: no
host-
Il contenuto del parametro
hostdetermina se il volume dati persiste nell'istanza di container host e dove viene archiviato. Se il parametrohostè vuoto, il daemon Docker assegna automaticamente un percorso dell'host per il volume di dati. Tuttavia, non è garantito che i dati persistano dopo l'interruzione dell'esecuzione del contenitore ad essi associato.Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: oggetto
Obbligatorio: no
sourcePath-
Il percorso sull'istanza di container dell'host presentato al container. Se questo parametro è vuoto, il daemon Docker assegna automaticamente un percorso host.
Se il parametro
hostcontiene una posizione del filesourcePath, il volume di dati rimane nella posizione specificata sull'istanza di container dell'host finché non viene eliminato manualmente. Se il valoresourcePathnon è presente nell'istanza di container host, viene creato automaticamente dal daemon Docker. Se la posizione è presente, i contenuti della cartella del percorso di origine vengono esportati.▬Tipo: stringa
Obbligatorio: no
efsVolumeConfiguration-
Questo parametro viene specificato quando utilizzi un file system Amazon Elastic File System per l'archiviazione di attività. Per ulteriori informazioni, consulta Volumi Amazon EFS.
Tipo: oggetto
Obbligatorio: no
authorizationConfig-
I dettagli di configurazione dell'autorizzazione per il file system Amazon EFS.
▬Tipo: stringa
Obbligatorio: no
accessPointId-
L'ID del punto di accesso Amazon EFS da utilizzare. Se viene specificato un punto di accesso, il valore della directory principale specificato in
EFSVolumeConfigurationdeve essere omesso o impostato su./Ciò impone il percorso impostato sul punto di accesso EFS. Se si utilizza un punto di accesso, la crittografia di transito deve essere abilitata inEFSVolumeConfiguration. Per ulteriori informazioni, consulta Utilizzo dei punti di accesso Amazon EFS nella Guida per l'utente di Amazon Elastic File System.▬Tipo: stringa
Obbligatorio: no
iam-
Determina se utilizzare il ruolo IAM del AWS Batch job definito in una definizione di job durante il montaggio del file system Amazon EFS. Se abilitato, la crittografia di transito deve essere abilitata nella casella
EFSVolumeConfiguration. Se questo parametro viene omesso, viene utilizzato il comportamento predefinito diDISABLED. Per ulteriori informazioni, consulta Usa i punti di accesso Amazon EFS.Tipo: String
Valori validi:
ENABLED|DISABLEDObbligatorio: no
fileSystemId-
L'ID del file system Amazon EFS da utilizzare.
▬Tipo: stringa
Obbligatorio: no
rootDirectory-
La directory all'interno del file system Amazon EFS da montare come directory principale all'interno dell'host. Se questo parametro viene omesso, viene utilizzata la radice del volume Amazon EFS. Se lo specifichi
/, ha lo stesso effetto dell'omissione di questo parametro. La lunghezza massima è 4.096 caratteri.Importante
Se viene specificato un punto di accesso EFS in
authorizationConfig, il parametro della directory principale deve essere omesso o impostato su./Ciò impone il percorso impostato sul punto di accesso Amazon EFS.▬Tipo: stringa
Obbligatorio: no
transitEncryption-
Indica se abilitare o meno la crittografia per i dati Amazon EFS in transito tra l'host Amazon ECS e il server Amazon EFS. Se si utilizza l'autorizzazione Amazon EFS IAM, è necessario abilitare la crittografia di transito. Se questo parametro viene omesso, viene utilizzato il comportamento predefinito di
DISABLED. Per ulteriori informazioni, consulta Crittografia dei dati in transito nella Guida per l'utente di Amazon Elastic File System.Tipo: String
Valori validi:
ENABLED|DISABLEDObbligatorio: no
transitEncryptionPort-
La porta da utilizzare per l'invio di dati crittografati tra l'host Amazon ECS e il server Amazon EFS. Se non si specifica una porta di crittografia di transito, verrà utilizzata la strategia di selezione della porta utilizzata dall'helper per il montaggio di Amazon EFS. Il valore deve essere compreso tra 0 e 65.535. Per ulteriori informazioni, consulta Assistente per il montaggio di EFS nella Guida per l'utente di Amazon Elastic File System.
Tipo: Integer
Obbligatorio: no
Proprietà di Amazon EKS
Un oggetto con varie proprietà specifiche dei processi basati su Amazon ECS. Questo non deve essere specificato per le definizioni di job basate su Amazon ECS.
podProperties-
Le proprietà delle risorse Kubernetes pod di un job.
Tipo: oggetto EksPodProperties
Obbligatorio: no
containers-
Le proprietà del container utilizzato nel pod Amazon EKS.
Tipo: oggetto EksContainer
Obbligatorio: no
args-
Un array di argomenti per il punto di ingresso. Se non è specificato, viene utilizzato il
CMDdell’immagine del container. Corrisponde alargsmembro nella parteEntrypoint del Pod in. Kubernetes I riferimenti alle variabili di ambiente vengono espansi utilizzando l’ambiente del container. Se la variabile di ambiente a cui si fa riferimento non esiste, il riferimento nel comando non viene modificato. Ad esempio, se il riferimento è a "
$(NAME1)" e la variabile di ambienteNAME1non esiste, la stringa del comando rimarrà "$(NAME1)".$$viene sostituito con$e la stringa risultante non viene espansa. Ad esempio,$$(VAR_NAME)viene passato come$(VAR_NAME)a prescindere dall’esistenza della variabile di ambienteVAR_NAME. Per ulteriori informazioni, vedi CMDnel riferimento al Dockerfile e Definisci un comando e argomenti per un pod nella documentazione. Kubernetes Tipo: array di stringhe
Obbligatorio: no
command-
Il punto di ingresso per il container. Non viene eseguito in una shell (interprete di comandi). Se non è specificato, viene utilizzato il
ENTRYPOINTdell’immagine del container. I riferimenti alle variabili di ambiente vengono espansi utilizzando l'ambiente del container.Se la variabile di ambiente a cui si fa riferimento non esiste, il riferimento nel comando non viene modificato. Ad esempio, se il riferimento è a "
$(NAME1)" e la variabile di ambienteNAME1non esiste, la stringa del comando rimarrà "$(NAME1)".$$viene sostituito con$e la stringa risultante non viene espansa. Ad esempio,$$(VAR_NAME)verrà passato come$(VAR_NAME)a prescindere dall’esistenza della variabile di ambienteVAR_NAME. Il punto di ingresso non può essere aggiornato. Per ulteriori informazioni, vedi ENTRYPOINTnel riferimento al Dockerfile e Definizione di un comando e argomenti per un contenitore e Entrypoint nella documentazione. https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#entrypoint Kubernetes Tipo: array di stringhe
Obbligatorio: no
env-
Le variabili di ambiente da passare a un container.
Nota
Le variabili di ambiente non possono iniziare con "
AWS_BATCH". Questa convenzione di denominazione è riservata alle variabili che impostano. AWS BatchTipo: matrice di oggetti EksContainerEnvironmentVariable
Obbligatorio: no
name-
Il nome della variabile di ambiente.
Tipo: stringa
Obbligatorio: sì
value-
Il valore della variabile di ambiente.
▬Tipo: stringa
Obbligatorio: no
image-
L'immagine Docker utilizzata per avviare il container.
Tipo: stringa
Obbligatorio: sì
imagePullPolicy-
La policy di estrazione immagini per il container. I valori supportati sono
Always,IfNotPresenteNever. Questo parametro per impostazione predefinita èIfNotPresent. Tuttavia, se è specificato il tag:latest, viene ripristinata l’impostazione predefinitaAlways. Per ulteriori informazioni, consulta Aggiornamento delle immagininella Kubernetes documentazione. ▬Tipo: stringa
Obbligatorio: no
name-
Il nome del container. Se il nome non è specificato, viene utilizzato il nome predefinito, "
Default". Ogni container in un pod deve avere un nome univoco.▬Tipo: stringa
Obbligatorio: no
resources-
Il tipo e la quantità di risorse da assegnare a un container. Le risorse supportate includono
memory,cpuenvidia.com/gpu. Per ulteriori informazioni, consulta Gestione delle risorse per contenitori e contenitorinella Kubernetes documentazione. Tipo: oggetto EksContainerResourceRequirements
Obbligatorio: no
limits-
Il tipo e la quantità di risorse specificate da prenotare per il container. I valori variano in base al
namespecificato. Le risorse possono essere chieste utilizzando oggettilimitsorequests.- memory
-
Il limite rigido di memoria (in MiB) per il container, espresso in numeri interi con il suffisso "Mi". Se il container prova a superare la memoria qui specificata, sarà terminato. Devi specificare almeno 4 MiB di memoria per un processo. La
memorypuò essere specificata inlimitse/orequests. Se lamemoryè specificata in entrambi, il valore specificato inlimitsdeve essere uguale al valore specificato inrequests.Nota
Per ottimizzare l'utilizzo delle risorse, fornisci ai processi quanta più memoria possibile per il tipo di istanza specifica in uso. Per scoprire come, consulta Gestione della memoria delle risorse di calcolo.
- cpu
-
Il numero di CPU prenotate per il container. I valori devono essere un multiplo pari di
0.25. Lacpupuò essere specificata inlimitse/orequests. Se lacpuè specificata in entrambi, il valore specificato inlimitsdeve essere almeno pari al valore specificato inrequests. - nvidia. com/gpu
-
Il numero di GPU prenotate per il container. I valori devono essere un numero intero. La
memorypuò essere specificata inlimitse/orequests. Se lamemoryè specificata in entrambi, il valore specificato inlimitsdeve essere uguale al valore specificato inrequests.
Tipo: mappatura stringa a stringa
Valore dei vincoli di lunghezza: lunghezza minima di 1. La lunghezza massima è 256 caratteri.
Obbligatorio: no
requests-
Il tipo e la quantità di risorse specificate da chiedere per il container. I valori variano in base al
namespecificato. Le risorse possono essere chieste utilizzando oggettilimitsorequests.- memory
-
Il limite rigido di memoria (in MiB) per il container, espresso in numeri interi con il suffisso "Mi". Se il container prova a superare la memoria qui specificata, sarà terminato. Devi specificare almeno 4 MiB di memoria per un processo. La
memorypuò essere specificata inlimitse/orequests. Se lamemoryè specificata in entrambi, il valore specificato inlimitsdeve essere uguale al valore specificato inrequests.Nota
Se stai cercando di massimizzare l'utilizzo delle risorse fornendo ai tuoi lavori quanta più memoria possibile per un particolare tipo di istanza, consulta. Gestione della memoria delle risorse di calcolo
- cpu
-
Il numero di vCPU prenotate per il container. I valori devono essere un multiplo pari di
0.25. Lacpupuò essere specificata inlimitse/orequests. Se lacpuè specificata in entrambi, il valore specificato inlimitsdeve essere uguale al valore specificato inrequests. - nvidia. com/gpu
-
Il numero di GPU prenotate per il container. I valori devono essere un numero intero. La
nvidia.com/gpupuò essere specificata inlimitse/orequests. Se lanvidia.com/gpuè specificata in entrambi, il valore specificato inlimitsdeve essere uguale al valore specificato inrequests.
Tipo: mappatura stringa a stringa
Valore dei vincoli di lunghezza: lunghezza minima di 1. La lunghezza massima è 256 caratteri.
Obbligatorio: no
securityContext-
Il contesto di sicurezza per un processo. Per ulteriori informazioni, consulta Configurare un contesto di sicurezza per un pod o un contenitore
nella Kubernetes documentazione. Tipo: oggetto EksContainerSecurityContext
Obbligatorio: no
privileged-
Quando questo parametro è
true, al container sono assegnate autorizzazioni elevati nell'istanza di container host. Il livello delle autorizzazioni è simile a quello delle autorizzazionirootutente. Il valore predefinito èfalse. Questo parametro è associato aiprivilegedcriteri indicati nelle politiche di sicurezza dei pod Privilegedpresenti nella Kubernetes documentazione. Tipo: Booleano
Obbligatorio: no
readOnlyRootFilesystem-
Quando questo parametro è
true, al container viene assegnato l'accesso in sola lettura al file system root. Il valore predefinito èfalse. Questo parametro è associato alleReadOnlyRootFilesystempolicy contenute nei Volumi e alle politiche di sicurezza del pod dei file systempresenti nella Kubernetes documentazione. Tipo: Booleano
Obbligatorio: no
runAsGroup-
Quando questo parametro è specificato, il container viene eseguito come ID gruppo specificato (
gid). Se questo parametro non è specificato, l’impostazione predefinita è il gruppo specificato nei medatati dell’immagine. Questo parametro è associatoRunAsGroupalleMustRunAspolitiche di sicurezza del pod Utenti e gruppipresenti nella Kubernetes documentazione. Tipo: long
Obbligatorio: no
runAsNonRoot-
Quando questo parametro è specificato, il container viene eseguito come utente con un
uiddiverso da 0. Se questo parametro non è specificato, viene applicata tale regola. Questo parametro è associatoRunAsUseralleMustRunAsNonRootpolitiche di sicurezza del pod Utenti e gruppipresenti nella Kubernetes documentazione. Tipo: long
Obbligatorio: no
runAsUser-
Quando questo parametro è specificato, il container viene eseguito come ID utente specificato (
uid). Se questo parametro non è specificato, l’impostazione predefinita è l’utente specificato nei medatati dell’immagine. Questo parametro è associatoRunAsUseralleMustRanAspolitiche di sicurezza del pod Utenti e gruppipresenti nella Kubernetes documentazione. Tipo: long
Obbligatorio: no
volumeMounts-
Il volume viene montato per un container per un processo Amazon EKS. Per ulteriori informazioni sui volumi e sui montaggi dei volumi inKubernetes, consulta Volumes
nella Kubernetes documentazione. Tipo: matrice di oggetti EksContainerVolumeMount
Obbligatorio: no
mountPath-
Il percorso sul container in cui è montato il volume.
▬Tipo: stringa
Obbligatorio: no
name-
Il nome del montaggio del volume. Deve corrispondere al nome di uno dei volumi nel pod.
▬Tipo: stringa
Obbligatorio: no
readOnly-
Se il valore è
true, il container avrà accesso in sola lettura al volume. In caso contrario, il container può scrivere sul volume. Il valore predefinito èfalse.Tipo: Booleano
Obbligatorio: no
dnsPolicy-
La policy DNS per il pod. Il valore predefinito è
ClusterFirst. Se il parametrohostNetworknon è specificato, l’impostazione predefinita èClusterFirstWithHostNet.ClusterFirstindica che qualunque query DNS non corrispondente al suffisso del dominio del cluster configurato viene inoltrata al server nomi upstream ereditato dal nodo. Se non è stato specificato alcun valorednsPolicynell'operazione RegisterJobDefinition API, non viene restituito alcun valorednsPolicyper nessuna delle DescribeJobDefinitions operazioni DescribeJobs API. L'impostazione delle specifiche del pod conterràClusterFirstoClusterFirstWithHostNet, a seconda del valore del parametrohostNetwork. Per ulteriori informazioni, consulta la politica DNS di Podnella Kubernetes documentazione. Valori validi:
Default|ClusterFirst|ClusterFirstWithHostNet▬Tipo: stringa
Obbligatorio: no
hostNetwork-
Indica se il pod utilizza l'indirizzo IP di rete degli host. Il valore predefinito è
true. Impostandolo sufalseabilita il modello di rete del Kubernetes pod. La maggior parte dei AWS Batch carichi di lavoro sono solo in uscita e non richiedono il sovraccarico dell'allocazione IP per ogni pod per le connessioni in entrata. Per ulteriori informazioni, consulta Hostnamespace e Pod networking nella documentazione. https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking Kubernetes Tipo: Booleano
Obbligatorio: no
serviceAccountName-
Il nome dell’account di servizio utilizzato per l’esecuzione del pod. Per ulteriori informazioni, consulta Kubernetes Service Accounts e Configurare un account di Kubernetes servizio per assumere un ruolo IAM nella Amazon EKS User Guide e Configurare gli account di servizio per i pod
nella documentazione. Kubernetes ▬Tipo: stringa
Obbligatorio: no
volumes-
Specifica i volumi per una definizione di processo che utilizza risorse Amazon EKS.
Tipo: matrice di oggetti EksVolume
Obbligatorio: no
- EmptyDir
-
Specifica la configurazione di un volume. Kubernetes
emptyDirUn volumeemptyDirviene creato per la prima volta quando un pod viene assegnato a un nodo. Esiste finché il pod viene eseguito su quel nodo. Il volumeemptyDirinizialmente è vuoto. Tutti i container nel pod possono leggere e scrivere i file nel volumeemptyDir. Il volumeemptyDir,tuttavia, può essere montato sullo stesso percorso o su percorsi diversi in ogni container. Quando un pod viene rimosso da un nodo per un motivo qualunque, i dati nellaemptyDirvengono eliminati definitivamente. Per ulteriori informazioni, vedi emptyDirnella documentazione. Kubernetes Tipo: oggetto EksEmptyDir
Obbligatorio: no
- medium
-
Il supporto per memorizzare il volume. Il valore predefinito è una stringa vuota, che utilizza la memoria del nodo.
- ""
-
(Impostazione predefinita) Utilizza la memoria su disco del nodo.
- "Memory"
-
Usa il volume
tmpfssupportato dalla RAM del nodo. I contenuti del volume vengono persi al riavvio del nodo e tutta la memoria sul volume viene conteggiata in base al limite di memoria del container.
▬Tipo: stringa
Obbligatorio: no
- SizeLimit
-
La dimensione massima del volume. Per impostazione predefinita, non è definita alcuna dimensione massima.
Tipo: String
Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 256 caratteri.
Obbligatorio: no
- Percorso host
-
Specifica la configurazione di un Kubernetes
hostPathvolume. Un volumehostPathmonta un file o una directory esistente dal file system del nodo host nel pod. Per ulteriori informazioni, vedere HostPathnella Kubernetes documentazione. Tipo: oggetto EksHostPath
Obbligatorio: no
- path
-
Il percorso del file o della directory sull'host da montare in container nel pod.
▬Tipo: stringa
Obbligatorio: no
- nome
-
Nome del volume. Il nome deve essere consentito come nome sottodominio DNS. Per ulteriori informazioni, consultate i nomi dei sottodomini DNS
nella documentazione. Kubernetes Tipo: stringa
Obbligatorio: sì
- Secret
-
Specifica la configurazione di un volume. Kubernetes
secretPer ulteriori informazioni, vedere secretnella Kubernetes documentazione. Tipo: oggetto EksSecret
Obbligatorio: no
- facoltativo
-
Specifica se è necessario definire il segreto o le chiavi del segreto.
Tipo: Booleano
Obbligatorio: no
- Nome segreto
-
Il nome del segreto. Il nome deve essere consentito come nome sottodominio DNS. Per ulteriori informazioni, consulta i nomi dei sottodomini DNS
nella documentazione. Kubernetes Tipo: stringa
Obbligatorio: sì
Funzionalità della piattaforma
platformCapabilities-
Le funzionalità della piattaforma richieste dalla definizione del lavoro. Se non viene specificato alcun valore, il valore predefinito è
EC2. Per i lavori eseguiti su risorse Fargate,FARGATEè specificato.Nota
Se il job viene eseguito su risorse Amazon EKS, non è necessario specificarlo
platformCapabilities.Tipo: String
Valori validi:
EC2|FARGATEObbligatorio: no
Propaga i tag
propagateTags-
Specifica se propagare i tag dal processo o dalla definizione del processo all'attività Amazon ECS corrispondente. Se non viene specificato alcun valore, i tag non vengono propagati. I tag possono essere propagati alle attività solo quando l'attività viene creata. Per i tag con lo stesso nome, viene data la priorità ai tag di processo anziché ai tag delle definizioni di processo. Se il numero totale di tag combinati tra lavoro e definizione del lavoro è superiore a 50, il lavoro viene
FAILEDspostato nello stato.Nota
Se il job viene eseguito su risorse Amazon EKS, non devi specificarlo
propagateTags.Tipo: Booleano
Obbligatorio: no
Proprietà del nodo
nodeProperties-
Quando si registra una definizione di job parallelo multinodo, è necessario specificare un elenco di proprietà del nodo. Queste proprietà dei nodi definiscono il numero di nodi da utilizzare nel job, l'indice del nodo principale e i diversi intervalli di nodi da utilizzare. Se il job viene eseguito su risorse Fargate, non è possibile specificarlo
nodeProperties. Utilizza invececontainerProperties. Di seguito sono indicate le proprietà del nodo consentite in una definizione di processo. Per ulteriori informazioni, consulta Multi-node lavori paralleli.Nota
Se il job viene eseguito su risorse Amazon EKS, non devi specificarlo
nodeProperties.Tipo: oggetto NodeProperties
Obbligatorio: no
mainNode-
Specifica l'indice del nodo per il nodo principale di un processo parallelo a più nodi. Questo valore dell'indice del nodo deve essere inferiore al numero di nodi.
Tipo: numero intero
Obbligatorio: sì
numNodes-
Il numero di nodi associati a un processo parallelo multinodo.
Tipo: numero intero
Obbligatorio: sì
nodeRangeProperties-
Un elenco di intervalli di nodi e le relative proprietà associate a un processo parallelo multinodo.
Nota
Un gruppo di nodi è un gruppo identico di nodi di processi che condividono tutti le stesse proprietà del container. È possibile AWS Batch utilizzarlo per specificare fino a cinque gruppi di nodi distinti per ogni processo.
Tipo: matrice di oggetti NodeRangeProperty
Obbligatorio: sì
targetNodes-
L’intervallo di nodi, utilizzando i valori di indice del nodo. Un intervallo di
0:3indica i nodi con i valori di indice compresi tra0e3. Se il valore dell'intervallo iniziale viene omesso (:n), viene utilizzato 0 per iniziare l'intervallo. Se il valore di chiusura dell'intervallo (n:) viene omesso, viene utilizzato l'indice di nodo più alto possibile per chiudere l'intervallo. Gli intervalli di nodo cumulativi devono comprendere tutti i nodi (0:n). È possibile annidare gli intervalli di nodi, ad esempio0:10e4:5. In questo caso, le proprietà dell'4:5intervallo sostituiscono le0:10proprietà.▬Tipo: stringa
Obbligatorio: no
container-
I dettagli del container per l'intervallo di nodo. Per ulteriori informazioni, consulta Proprietà del contenitore.
Tipo: oggetto ContainerProperties
Obbligatorio: no
Riprova la strategia
retryStrategy-
Quando si registra una definizione di processo, è possibile specificare una strategia per il numero di tentativi da utilizzare per i processi non riusciti inviati con questa definizione di processo. Qualsiasi strategia di riprova specificata durante un'SubmitJoboperazione ha la precedenza sulla strategia di riprova definita qui. Per impostazione predefinita, ogni processo viene tentato una sola volta. Se si specifica più di un tentativo, il processo viene ritentato in caso di esito negativo. Alcuni esempi di tentativo fallito includono che il job restituisce un codice di uscita diverso da zero o che l'istanza del contenitore viene terminata. Per ulteriori informazioni, consulta Ritentativi automatici del lavoro.
Tipo: oggetto RetryStrategy
Obbligatorio: no
attempts-
Il numero di volte per cui spostare un processo nello stato
RUNNABLE. Puoi specificare da 1 a 10 tentativi. Se il valore diattemptsè maggiore di uno, in caso di errore il processo viene ritentato il numero di volte specificato, fino a quando viene spostato inRUNNABLE."attempts":integerTipo: Integer
Obbligatorio: no
evaluateOnExit-
Matrice composta da un massimo di 5 oggetti che specificano le condizioni in base alle quali il processo viene ritentato o fallito. Se viene specificato questo parametro, è necessario specificare anche il parametro
attempts. SeevaluateOnExitviene specificato ma nessuna delle voci corrisponde, il processo viene ritentato."evaluateOnExit": [ { "action": "string", "onExitCode": "string", "onReason": "string", "onStatusReason": "string" } ]Tipo: matrice di oggetti EvaluateOnExit
Obbligatorio: no
action-
Specifica l'azione da eseguire se vengono soddisfatte tutte le condizioni specificate (
onStatusReason,onReasoneonExitCode). I valori non fanno distinzione tra maiuscole e minuscole.Tipo: stringa
Obbligatorio: sì
Valori validi:
RETRY|EXIT onExitCode-
Contiene un modello globale da confrontare con la rappresentazione decimale del
ExitCodevalore restituito per un lavoro. Il modello può contenere fino a 512 caratteri. Può contenere solo numeri. Non può contenere lettere o caratteri speciali. Facoltativamente può terminare con un asterisco (*) in modo che solo l'inizio della stringa debba essere una corrispondenza esatta.▬Tipo: stringa
Obbligatorio: no
onReason-
Contiene un modello globoso da confrontare con
Reasonquello restituito per un lavoro. Il modello può contenere fino a 512 caratteri. Può contenere lettere, numeri, punti (.), due punti (:)) e spazi bianchi (spazi, tabulazioni). Facoltativamente può terminare con un asterisco (*) in modo che solo l'inizio della stringa debba essere una corrispondenza esatta.▬Tipo: stringa
Obbligatorio: no
onStatusReason-
Contiene un modello globoso da confrontare con
StatusReasonquello restituito per un lavoro. Il modello può contenere fino a 512 caratteri. Può contenere lettere, numeri, punti (.), due punti (:)) e spazi bianchi (spazi, tabulazioni). Facoltativamente può terminare con un asterisco (*) in modo che solo l'inizio della stringa debba essere una corrispondenza esatta.▬Tipo: stringa
Obbligatorio: no
Priorità di pianificazione
schedulingPriority-
La priorità di pianificazione per le commesse inviate con questa definizione di mansione. Ciò riguarda solo i lavori in coda di lavoro con una politica di condivisione equa. I processi con una priorità di pianificazione più alta vengono pianificati prima dei lavori con una priorità di pianificazione inferiore.
Il valore minimo supportato è 0 e il valore massimo supportato è 9999.
Tipo: Integer
Obbligatorio: no
Tag
tags-
Key-value tag di coppia da associare alla definizione del lavoro. Per ulteriori informazioni, consulta Tagga le tue AWS Batch risorse.
Tipo: mappatura stringa a stringa
Obbligatorio: no
Timeout
timeout-
È possibile configurare una durata di timeout per i processi in modo che, se un processo viene eseguito più a lungo, AWS Batch lo interrompa. Per ulteriori informazioni, consulta Timeout dei processi. Se un processo viene terminato a causa di un timeout, non viene riprovato. Qualsiasi configurazione di timeout specificata durante un'SubmitJoboperazione sovrascrive la configurazione di timeout definita qui. Per ulteriori informazioni, consulta Timeout dei processi.
Tipo: oggetto JobTimeout
Obbligatorio: no
attemptDurationSeconds-
La durata in secondi (misurata in base al
startedAttimestamp del tentativo di lavoro) dopo la fine dei lavori non completati. AWS Batch Il valore minimo per il timeout è 60 secondi.Per i processi dell'array, il timeout si applica ai processi figlio, non al processo dell'array padre.
Per processi paralleli multinodo (MNP), il timeout si applica all'intero processo, non ai singoli nodi.
Tipo: Integer
Obbligatorio: no