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
Definizioni di lavoro che utilizzano ContainerProperties sono suddivise in più 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 di 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 job viene eseguito su risorse Fargate o Amazon ECS Managed Instances, allora
multinodenon è supportato. Per ulteriori informazioni sui processi in parallelo a più nodi, consulta Creare una definizione di processo parallelo multinodo.Tipo: stringa
Valori validi:
container|multinodeObbligatorio: sì
Parametri
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" ]AWS Batch esamina ogni elemento del
commandmatrice. Se un elemento inizia conRef::, AWS Batch rimuove il prefisso e utilizza il testo rimanente come nome del parametro. Pertanto, ogni segnaposto per la sostituzione dei parametri deve essere separatocommandelemento dell'array. AWS Batch non cerca né sostituisce i segnaposto incorporati in un'altra stringa. Ad esempios3://Ref::s3Bucket/Ref::objectKeyviene passato al contenitore invariato.Per costruire questo URI S3 con
bash -c, passate ogni segnaposto come elemento separato dell'array di comandi e fate riferimento ai valori sostituiti come parametri posizionali nella stringa di comando. Ad esempio:"command": [ "/bin/bash", "-c", "aws s3 cp \"s3://$1/$2\" ./input-file", "_", "Ref::s3Bucket", "Ref::objectKey" ]AWS Batch sostituisce
eRef::s3Bucketprima che il contenitore si avvii. IlRef::objectKey_forniture di valore$0, quindi Bash riceve il bucket e la chiave dell'oggetto sostituiti come$1e$2.Nel
ffmpegad esempio, ci sono,Ref::inputfile, eRef::codecsegnaposti per la sostituzione dei parametri nel comando. È possibile utilizzareRef::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 lavoro viene inviata per l'esecuzione,
l'argomento nel comando per il 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 Docker CMDparametro, vedi https://docs.docker.com/engine/reference/builder/#cmd. "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 da AWS Batch servizio.Tipo: array di coppie chiave-valore
Obbligatorio: no
name-
Il nome della variabile di ambiente.
Tipo: stringa
Campo obbligatorio: sì, quando viene usato
environment. value-
Il valore della variabile di ambiente.
Tipo: stringa
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 AWS uso della versione della piattaforma Fargate per i lavori, o
LATESTutilizzare una versione recente e approvata di AWS piattaforma Fargate.Tipo: stringa
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 ARM-based Le immagini Docker possono essere eseguite solo su ARM-based risorse di calcolo.
-
Le immagini nei repository pubblici di Amazon ECR utilizzano l'intero
registry/repository[:tag]oregistry/repository[@digest]convenzioni di denominazione (ad esempio,public.ecr.aws/).registry_alias/my-web-app:latest -
Le immagini nei repository Amazon ECR utilizzano l'intero
registry/repository:[tag]convenzione di denominazione. 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 questo non è specificato, le autorizzazioni sono impostate su
READ,WRITE, 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 ilmaxSwapil parametro 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. A
swappinessvalore 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, vedere Volumi di swap dell'Instance Store nel Guida per l'utente di Amazon EC2 o Come posso allocare la memoria per funzionare come spazio di swap 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-
Le specifiche 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 (mostrato nella LogConfiguration tipo di dati).
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
awslogsdriver di registro. 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 da quello del 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 a
awslogsesplunkdriver di registro.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"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 il
ECS_AVAILABLE_LOGGING_DRIVERSvariabile di ambiente. Altrimenti, i contenitori collocati in quell'istanza non possono utilizzare queste opzioni di configurazione del registro. Per ulteriori informazioni, consulta Configurazione dell'agente del container Amazon ECS nella Guida per gli sviluppatori di Amazon Elastic Container Service.awslogs-
Specifica Amazon CloudWatch Registra il driver di registrazione. Per ulteriori informazioni, vedere Usa il driver di registro awslogs e Amazon CloudWatch Registra il driver di registrazione
nella documentazione Docker. fluentd-
Specifica il driver di log Fluentd. Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi Driver di registrazione Fluentd
nella documentazione Docker. gelf-
Specifica il driver di log GELF (Greylog Extended Format). Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi Driver di registrazione Graylog Extended Format
nella documentazione Docker. journald-
Specifica il driver di log journald. Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi Driver di registrazione di Journald
nella documentazione Docker. json-file-
Specifica il driver di log del file JSON. Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi Driver di registrazione dei file JSON
nella documentazione Docker. splunk-
Specifica il driver di log Splunk. Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi Driver di registrazione Splunk
nella documentazione Docker. syslog-
Specifica il driver di log syslog. Per ulteriori informazioni, inclusi utilizzo e opzioni, vedi 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 e che desideri utilizzare con l'agente container Amazon ECS, puoi eseguire il fork del progetto Amazon ECS container agent che è disponibile su GitHub
e personalizzalo 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 nello stesso Regione AWS come attività da avviare, 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, usa
resourceRequirementsinvece.Il numero di MiB di memoria riservati per il lavoro.
Come esempio di utilizzo
resourceRequirements, se la definizione del lavoro contiene una sintassi simile alla seguente."containerProperties": { "memory":512}La sintassi equivalente che utilizza
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: stringa
Campo obbligatorio: sì, quando viene usato
mountPoints. containerPath-
Il percorso nel contenitore in cui montare il volume host.
Tipo: stringa
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: stringa
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: stringa
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 lavori quanta più memoria possibile per un particolare tipo di istanza, vedi Gestione della memoria delle risorse di calcolo.
Per i lavori che utilizzano le risorse di Fargate, allora
valuedeve corrispondere a uno dei valori supportati. Inoltre,VCPUi valori 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 con le risorse di Fargate,
valuedeve corrispondere a uno dei valori supportati e alMEMORYi valori 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 il Fargate On-Demand La quota di conteggio delle risorse vCPU è di 6 vCPU. Per ulteriori informazioni sulle quote Fargate, vedere AWS Quote Fargate nel Riferimenti generali di Amazon Web Services.
Tipo: stringa
Campo obbligatorio: sì, quando viene usato
resourceRequirements.
runtimePlatform-
Un oggetto che rappresenta l'architettura dell'ambiente di calcolo per AWS Batch lavori. Questo parametro si applica ai lavori eseguiti su AWS Risorse Fargate e Amazon ECS Managed Instances.
"runtimePlatform": { "cpuArchitecture": "string", "operatingSystemFamily": "string" }Tipo: oggetto RuntimePlatform
Obbligatorio: no
cpuArchitecture-
L'architettura vCPU. Il valore predefinito è
X86_64.Nota
Questo parametro deve essere impostato su
X86_64per contenitori Windows.Tipo: stringa
Valori validi:
X86_64|ARM64Obbligatorio: no
operatingSystemFamily-
Il sistema operativo per l'ambiente di elaborazione.
Nota
I seguenti parametri non possono essere impostati per i contenitori Windows:
linuxParameters,privileged,user,ulimits,readonlyRootFilesystem, eefsVolumeConfiguration.Tipo: stringa
Valori validi:
LINUX|WINDOWS_SERVER_2019_CORE|WINDOWS_SERVER_2019_FULL|WINDOWS_SERVER_2022_CORE|WINDOWS_SERVER_2022_FULLObbligatorio: no
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: stringa
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 è presente nello stesso Regione AWS come 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: stringa
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: stringa
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, usa
resourceRequirementsinvece.Il numero di vCPU prenotate per il container.
Come esempio di come usare
resourceRequirements, se la definizione del lavoro contiene righe simili a questa:"containerProperties": { "vcpus":2}Le righe equivalenti che utilizzano
resourceRequirementsè la seguente."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 AWS Batch ruolo job IAM definito in una definizione del lavoro 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: stringa
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 specifichi
/, ha lo stesso effetto dell'omissione di questo parametro. La lunghezza massima è 4.096 caratteri.Importante
Se un punto di accesso EFS è specificato nel
authorizationConfig, il parametro della directory principale deve essere omesso o impostato su/. Questo applica 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: stringa
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à di Kubernetes risorse pod di un lavoro.
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. Ciò corrisponde alargsmembro del Punto di ingressoporzione del Cialda nel 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, vedere CMDnel riferimento al Dockerfile e Definisci un comando e gli argomenti per un pod nel Kubernetes documentazione. 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, vedere PUNTO DI INGRESSOnel riferimento al Dockerfile e Definire un comando e gli argomenti per un contenitore e Punto di ingresso nel Kubernetes documentazione. 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 AWS Batch insiemi.Tipo: 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, vedere Aggiornamento delle immagininel 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, vedere Gestione delle risorse per cialde e contenitorinel 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, vedi 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, vedere Configura un contesto di sicurezza per un pod o un contenitore
nel 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 arootautorizzazioni utente. Il valore predefinito èfalse. Questo parametro è associato aprivilegedpolitica in Politiche di sicurezza privilegiate per i podnel 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 aReadOnlyRootFilesystempolitica in Volumi e file system pod policy di sicurezzanel 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 è associato aRunAsGroupeMustRunAspolitica in Utenti e gruppi pod policy di sicurezzanel 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 è associato aRunAsUsereMustRunAsNonRootpolitica in Utenti e gruppi pod policy di sicurezzanel 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 è associato aRunAsUsereMustRanAspolitica in Utenti e gruppi pod policy di sicurezzanel 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 relativi montaggi in Kubernetes, vedere Volumi
nel 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 valore perdnsPolicynel RegisterJobDefinition operazione API, quindi non viene restituito alcun valore perdnsPolicyda uno dei DescribeJobDefinitions o DescribeJobs operazioni API. L'impostazione delle specifiche del pod conterràClusterFirstoClusterFirstWithHostNet, a seconda del valore del parametrohostNetwork. Per ulteriori informazioni, vedere Politica DNS di Podnel 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. Impostando questo sufalseabilita il Kubernetes modello di rete pod. La maggior parte AWS Batch i 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 Namespace degli hoste Rete Pod nel Kubernetes documentazione. Tipo: Booleano
Obbligatorio: no
serviceAccountName-
Il nome dell’account di servizio utilizzato per l’esecuzione del pod. Per ulteriori informazioni, vedere Kubernetes account di servizio e Configura un Kubernetes account di servizio per assumere un ruolo IAM nel Guida per l'utente di Amazon EKS e Configurare gli account di servizio per i pod
nel Kubernetes documentazione. ▬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
- Dir vuota
-
Specifica la configurazione di a Kubernetes
emptyDirvolume. Un 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, vedere EmptyDirnel Kubernetes documentazione. 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
- Limite di dimensione
-
La dimensione massima del volume. Per impostazione predefinita, non è definita alcuna dimensione massima.
Tipo: stringa
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 HostPathnel 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, vedere Nomi di sottodomini DNS
nel Kubernetes documentazione. Tipo: stringa
Obbligatorio: sì
- Secret
-
Specifica la configurazione di un Kubernetes
secretvolume. Per ulteriori informazioni, vedere segretonel 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, vedere Nomi di sottodomini DNS
nel Kubernetes documentazione. 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 con le risorse di Fargate,FARGATEè specificato. Per i processi eseguiti su istanze gestite di Amazon ECS,MANAGED_INSTANCESè specificato.Lavori con
MANAGED_INSTANCESè necessario utilizzare la funzionalità della piattaformaecsProperties(noncontainerProperties) e non supportano processi paralleli a più nodi. Per ulteriori informazioni, consulta Definizioni dei job sulle istanze gestite di Amazon ECS.Nota
Se il job viene eseguito su risorse Amazon EKS, non devi specificarlo
platformCapabilities.Tipo: stringa
Valori validi:
EC2|FARGATE|MANAGED_INSTANCESObbligatorio: 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 spostato nel
FAILEDstato.Nota
Se il job viene eseguito su risorse Amazon EKS, non devi specificare
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 specificare
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 processo viene eseguito su risorse Amazon EKS, non devi specificare
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. Puoi usare AWS Batch 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), quindi 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,4:5le proprietà dell'intervallo hanno la precedenza su0: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
Strategia di riprova
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 SubmitJob l'operazione ha la precedenza sulla strategia di ripetizione 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 6 oggetti che specificano le condizioni in base alle quali AWS Batch riprova o fallisce il lavoro. 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 globoso da confrontare con la rappresentazione decimale di
ExitCodeche viene 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 pattern glob da confrontare con
Reasonviene 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
StatusReasonviene 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-
Puoi configurare una durata di timeout per i tuoi lavori in modo che se un lavoro viene eseguito più a lungo, AWS Batch termina il lavoro. 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 SubmitJob l'operazione 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 tentativo di lavoro)
startedAttimestamp) dopo AWS Batch termina i lavori incompiuti. 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