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à.
Riferimento: parametri di definizione del lavoro per ContainerProperties
Le definizioni di Job utilizzate ContainerProperties
sono suddivise in più parti:
il nome della definizione del processo
il tipo di definizione del lavoro
i valori predefiniti del segnaposto per la sostituzione dei parametri
le proprietà del contenitore per il lavoro
-
le EKS proprietà Amazon per la definizione del processo necessarie per i lavori eseguiti sulle EKS risorse Amazon
le proprietà del nodo necessarie per un lavoro parallelo a più nodi
le funzionalità della piattaforma necessarie per i lavori eseguiti sulle risorse di Fargate
i dettagli di propagazione dei tag predefiniti della definizione del processo
la strategia di riprova predefinita per la definizione del processo
la priorità di pianificazione predefinita per la definizione del processo
i tag predefiniti per la definizione del processo
il timeout predefinito per la definizione del lavoro
Indice
Nome della definizione del Job
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 processo registrata con quel nome viene assegnata una revisione pari a 1. Tutte le successive definizioni del processo registrate con tale nome vengono contrassegnate con un numero di revisione incrementale.
Tipo: stringa
Campo obbligatorio: sì
Tipo
type
-
Quando si registra una definizione di processo, è necessario specificare il tipo di processo. Se il processo viene eseguito su risorse Fargate,
multinode
non è supportato. Per ulteriori informazioni sui processi in parallelo a più nodi, consulta Creare una definizione di processo parallelo multinodo.Tipo: stringa
Valori validi:
container
|multinode
Campo obbligatorio: sì
Parametri
parameters
-
Quando invii un lavoro, puoi specificare parametri che sostituiscono i segnaposto o sostituiscono 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 processo 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
Campo obbligatorio: no
Quando si registra una definizione di processo, è possibile utilizzare segnaposto di sostituzione dei parametri nel campo
command
delle 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::inputfile
eRef::codec
nel comando. È possibile utilizzare l'Ref::outputfile
parameters
oggetto nella definizione del processo per impostare 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 per il contenitore viene sostituito con il valore predefinito,.Ref::codec
mp4
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 viene mappato a
Cmd
nella sezione Crea un contenitoredel Docker Remote API e il parametro a. COMMAND
docker runPer ulteriori informazioni sul CMD
parametro Docker, vedere https://docs.docker.com/engine/reference/builder/#cmd. "command": ["
string
", ...]Tipo: array di stringhe
Campo obbligatorio: no
environment
-
Le variabili di ambiente da passare a un container. Questo parametro è mappato alla
Env
sezione Crea un contenitoredel Docker Remote e all'opzione a. API --env
docker runImportante
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
Campo 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 si registra una definizione di mansione, è possibile specificare un IAM ruolo. Il ruolo fornisce all'agente Amazon ECS Container le API autorizzazioni per eseguire per tuo conto le azioni specificate nelle politiche associate. I lavori eseguiti su risorse Fargate devono fornire un ruolo di esecuzione. Per ulteriori informazioni, consulta Ruolo di esecuzione di AWS Batch IAM.
Tipo: string
Campo obbligatorio: no
fargatePlatformConfiguration
-
La configurazione della piattaforma per i lavori eseguiti sulle risorse di Fargate. I lavori eseguiti su EC2 risorse non devono specificare questo parametro.
Tipo: oggetto FargatePlatformConfiguration
Campo obbligatorio: no
platformVersion
-
La versione della piattaforma AWS Fargate da utilizzare per i lavori o per
LATEST
utilizzare una versione recente e approvata della piattaforma Fargate AWS .Tipo: stringa
Impostazione predefinita:
LATEST
Campo obbligatorio: 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 èrepository-url
/image
:tag
Image
mappato alla sezione Crea un contenitoredel Docker Remote API e al IMAGE
parametro di docker run. Nota
Docker l'architettura dell'immagine deve corrispondere all'architettura del processore delle risorse di calcolo su cui è pianificata. Ad esempio, Arm fondato Docker le immagini possono essere eseguite solo su Arm risorse di elaborazione basate.
-
Le immagini negli archivi Amazon ECR Public utilizzano le convenzioni complete
registry/repository[:tag]
oregistry/repository[@digest]
di denominazione (ad esempio,).public.ecr.aws/
registry_alias
/my-web-app
:latest
-
Le immagini nei ECR repository Amazon utilizzano la convenzione di
registry/repository:[tag]
denominazione completa. Ad esempioaws_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
ubuntu
omongo
). -
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
Campo 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 processi di container a nodo singolo o per i lavori eseguiti su risorse Fargate.
Tipo: string
Campo obbligatorio: no
jobRoleArn
-
Quando si registra una definizione di lavoro, è possibile specificare un IAM ruolo. Il ruolo fornisce al job container le autorizzazioni per eseguire per conto dell'utente API le azioni specificate nelle politiche associate. Per ulteriori informazioni, consulta IAMRoles for Tasks nella Amazon Elastic Container Service Developer Guide.
Tipo: string
Campo obbligatorio: no
linuxParameters
-
Modifiche specifiche di Linux che vengono applicate al container, 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
Campo obbligatorio: no
devices
-
Elenco dei dispositivi mappati nel container. Questo parametro è
Devices
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --device
opzione DockerRun. Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: matrice di oggetti Device
Campo obbligatorio: no
hostPath
-
Percorso in cui si trova il dispositivo disponibile nell'istanza del contenitore host.
Tipo: stringa
Campo obbligatorio: sì
containerPath
-
Si trova il percorso in cui è esposto il dispositivo nel contenitore. Se questo non è specificato, il dispositivo viene esposto nello stesso percorso del percorso host.
Tipo: string
Campo obbligatorio: no
permissions
-
Autorizzazioni per il dispositivo nel container. Se questo non è specificato, le autorizzazioni sono impostate su
READ
WRITE
, eMKNOD
.Tipo: matrice di stringhe
Campo obbligatorio: no
Valori validi:
READ
|WRITE
|MKNOD
initProcessEnabled
-
Se true, esegue un processo
init
nel container che inoltra segnali e raccoglie i processi. Questo parametro è mappato all'opzione--init
su docker run. Questo parametro richiede la versione 1.25 API o successiva di Docker Remote sull'istanza del contenitore. Per verificare la API versione di Docker Remote sull'istanza del contenitore, accedi all'istanza del contenitore ed esegui il comando seguente: sudo docker version | grep "Server API version"
Tipo: Booleano
Campo obbligatorio: no
maxSwap
-
La quantità totale di memoria di swap (in MiB) che un job può utilizzare. Questo parametro viene convertito nell'opzione
--memory-swap
in 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-swap
nella documentazione Docker. Se viene specificato il valore
maxSwap
di0
, il container non utilizzerà lo swap. I valori accettati sono0
o qualsiasi numero intero positivo. Se ilmaxSwap
parametro viene omesso, il contenitore utilizza la configurazione di swap per l'istanza del contenitore su cui viene eseguito. È necessario impostare un valoremaxSwap
per il parametroswappiness
da utilizzare.Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: integer
Campo obbligatorio: no
sharedMemorySize
-
Valore per le dimensioni (in MiB) del volume
/dev/shm
. Questo parametro è mappato all'opzione--shm-size
su docker run. Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Tipo: integer
Campo obbligatorio: no
swappiness
-
In questo modo è possibile ottimizzare il comportamento swappiness di memoria di un container. Un
swappiness
valore di0
fa sì che lo scambio non avvenga a meno che non sia assolutamente necessario. Un valoreswappiness
di100
produrrà lo swap delle pagine in modo aggressivo. I valori accettati sono numeri interi compresi tra0
e100
. Se il parametroswappiness
non è 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-swappiness
su 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
Gli Amazon ECS Optimized AMIs 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 Come posso allocare la memoria per funzionare come spazio di swap in un'EC2istanza Amazon utilizzando un
file di swap? . -
I parametri dello spazio di swap sono supportati solo per le definizioni dei processi che utilizzano EC2 risorse.
-
Se i parametri
maxSwap
eswappiness
vengono omessi dalla definizione di un processo, per ogni container viene ripristinato il valoreswappiness
predefinito 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
Campo obbligatorio: no
-
tmpfs
-
Il percorso del contenitore, le opzioni di montaggio e le dimensioni del tmpfs montare.
Tipo: matrice di oggetti Tmpfs
Nota
Questo parametro non è applicabile ai processi in esecuzione su risorse Fargate.
Campo obbligatorio: no
containerPath
-
Il percorso assoluto del file nel contenitore in cui tmpfs il volume è montato.
Tipo: stringa
Campo obbligatorio: sì
mountOptions
-
L'elenco di tmpfs opzioni di montaggio del volume.
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: matrice di stringhe
Campo obbligatorio: no
size
-
La dimensione (in MiB) del tmpfs volume.
Tipo: integer
Campo obbligatorio: sì
logConfiguration
-
La specifica di configurazione del registro per il lavoro.
Questo parametro è
LogConfig
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --log-driver
opzione DockerRun. 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 dal 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 registro deve essere configurato sull'istanza del contenitore o su un altro server di registro 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 del contenitore. Per verificare la API versione di Docker Remote sull'istanza del contenitore, accedi all'istanza del contenitore ed esegui il comando seguente:
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
Campo obbligatorio: no
logDriver
-
Il driver di registro da utilizzare per il lavoro. Per impostazione predefinita, AWS Batch abilita il driver di
awslogs
registro. I valori validi elencati per questo parametro sono driver di log con cui l'agente Amazon ECS Container può comunicare per impostazione predefinita.Questo parametro è
LogConfig
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --log-driver
opzione DockerRun. 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 dal daemon Docker specificando un driver di log con questo parametro nella definizione del processo. 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 registro 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. Nelle future versioni di Amazon ECS Container Agent potrebbero essere disponibili driver di log aggiuntivi.
I driver di log supportati sono
awslogs
,fluentd
,gelf
,json-file
,journald
,logentries
,syslog
esplunk
.Nota
I lavori eseguiti sulle risorse Fargate sono limitati ai driver
awslogs
esplunk
log.Questo parametro richiede la versione 1.18 API o successiva di Docker Remote sull'istanza del contenitore. Per verificare la API versione di Docker Remote sull'istanza del contenitore, accedi all'istanza del contenitore ed esegui il comando seguente:
sudo docker version | grep "Server API version"
Nota
L'agente ECS container Amazon che viene eseguito su un'istanza di contenitore deve registrare i driver di registrazione disponibili su quell'istanza con la variabile di
ECS_AVAILABLE_LOGGING_DRIVERS
ambiente. Altrimenti, i contenitori posizionati su quell'istanza non possono utilizzare queste opzioni di configurazione del registro. Per ulteriori informazioni, consulta Amazon ECS Container Agent Configuration nella Amazon Elastic Container Service Developer Guide.awslogs
-
Speciifica il driver di registrazione Amazon CloudWatch Logs. Per ulteriori informazioni, consulta Usa il driver di registro awslogs il driver di registrazione di Amazon CloudWatch Logs
nella documentazione di Docker. fluentd
-
Specifica il driver di log Fluentd. Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, consulta il driver di registrazione Fluentd nella documentazione Docker.
gelf
-
Specifica il driver di registrazione Graylog Extended Format (). GELF Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, vedete il driver di registrazione Graylog Extended Format
nella documentazione Docker. journald
-
Specifica il driver di log journald. Per ulteriori informazioni, incluso l'utilizzo e le opzioni, consulta il driver di registrazione Journald nella documentazione di Docker.
json-file
-
Speciifica il driver di registrazione dei file. JSON Per ulteriori informazioni, inclusi l'utilizzo e le opzioni, consulta JSONFile logging driver nella documentazione
Docker. splunk
-
Specifica il driver di log Splunk. Per ulteriori informazioni, incluso l'utilizzo e le opzioni, consulta il driver di registrazione Splunk nella documentazione di Docker
. syslog
-
Specifica il driver di log syslog. Per ulteriori informazioni, incluso l'utilizzo e le opzioni, consulta il driver di registrazione Syslog nella documentazione di Docker.
Tipo: stringa
Campo obbligatorio: sì
Valori validi:
awslogs
|fluentd
|gelf
|journald
|json-file
|splunk
|syslog
Nota
Se disponi di un driver personalizzato non elencato in precedenza che desideri utilizzare con Amazon ECS Container Agent, puoi eseguire il fork del progetto Amazon ECS Container Agent 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 del registro da inviare a un driver di registro per il lavoro.
Questo parametro richiede la versione 1.19 API o successiva di Docker Remote sull'istanza del contenitore.
Tipo: mappatura stringa a stringa
Campo 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
Campo obbligatorio: no
name
-
Il nome dell'opzione del driver di registro da impostare nel job.
Tipo: stringa
Campo obbligatorio: sì
valueFrom
-
L'Amazon Resource Name (ARN) del segreto da esporre alla configurazione di log del contenitore. I valori supportati sono l'intero segreto ARN di Secrets Manager o ARN l'intero SSM parametro nel Parameter Store.
Nota
Se il SSM parametro Parameter Store esiste nella Regione AWS stessa operazione che stai avviando, puoi utilizzare il nome ARN o il nome completo del parametro. Se il parametro esiste in una regione diversa, è ARN necessario specificare il valore completo.
Tipo: stringa
Campo obbligatorio: sì
memory
-
Questo parametro è obsoleto, utilizzatelo al suo posto.
resourceRequirements
Il numero di MiB di memoria riservati per il lavoro.
Come esempio di utilizzo
resourceRequirements
, se la definizione del processo contiene una sintassi simile alla seguente."containerProperties": { "memory":
512
}La sintassi equivalente utilizzata
resourceRequirements
è la seguente."containerProperties": { "resourceRequirements": [ { "type": "MEMORY", "value": "
512
" } ] }Tipo: integer
Campo obbligatorio: sì
mountPoints
-
I punti di montaggio per i volumi di dati nel container. Questo parametro è
Volumes
mappato alla sezione Crea un contenitoredel Docker Remote API e all' --volume
opzione a. docker run"mountPoints": [ { "sourceVolume": "
string
", "containerPath": "string
", "readOnly":true|false
} ]Tipo: array di oggetti
Campo obbligatorio: no
sourceVolume
-
Il nome del volume da montare.
Tipo: stringa
Campo obbligatorio: sì, quando viene usato
mountPoints
. containerPath
-
Il percorso sul 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
Campo obbligatorio: no
Impostazione predefinita: False
networkConfiguration
-
La configurazione di rete per i lavori eseguiti su risorse Fargate. I lavori eseguiti su EC2 risorse non devono specificare questo parametro.
"networkConfiguration": { "assignPublicIp": "string" }
Tipo: array di oggetti
Campo obbligatorio: no
assignPublicIp
-
Indica se il processo ha un indirizzo IP pubblico. Questo è necessario se il job richiede l'accesso alla rete in uscita.
Tipo: stringa
Valori validi:
ENABLED
|DISABLED
Campo obbligatorio: 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 èPrivileged
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --privileged
opzione a. docker runQuesto parametro non è applicabile ai processi in esecuzione su risorse Fargate. Non fornirlo né specificarlo come falso. "privileged":
true|false
Tipo: Booleano
Campo obbligatorio: no
readonlyRootFilesystem
-
Se il parametro è true, al container viene assegnato l'accesso in sola lettura al file system radice. Questo parametro è
ReadonlyRootfs
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --read-only
opzione a docker run. "readonlyRootFilesystem":
true|false
Tipo: Booleano
Campo obbligatorio: no
resourceRequirements
-
Il tipo e la quantità di una risorsa da assegnare a un container. Le risorse supportate includono
GPU
,MEMORY
eVCPU
."resourceRequirements" : [ { "type": "GPU", "value": "
number
" } ]Tipo: array di oggetti
Campo obbligatorio: no
type
-
Il tipo di risorsa da assegnare a un container. Le risorse supportate includono
GPU
,MEMORY
eVCPU
.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
type
specificato.- tipo=»» GPU
-
Il numero di materiali fisici GPUs da riservare per il contenitore. Il numero di contenitori GPUs riservati per tutti i contenitori di un job non può superare il numero di risorse di calcolo disponibili GPUs sulla quale il job viene avviato.
- tipo=»» 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 è
Memory
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --memory
opzione DockerRun. Per un processo, è necessario specificare almeno 4 MiB di memoria. È obbligatorio, ma può essere specificato in diversi punti per i job parallel (MNP) a più nodi. Deve essere specificato almeno una volta per ogni nodo. Questo parametro è Memory
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --memory
opzione DockerRun. 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,
value
devono corrispondere a uno dei valori supportati. Inoltre, iVCPU
valori devono essere uno dei valori supportati per quel valore di memoria.VCPU
MEMORY
0,25 v CPU
512, 1024 e 2048 MiB
0,5 v CPU
1024-4096 MiB con incrementi di 1024 MiB
1 v CPU
2048-8192 MiB con incrementi di 1024 MiB
2 v CPU
4096-16384 MiB con incrementi di 1024 MiB
4 v CPU
8192-30720 MiB con incrementi di 1024 MiB
8 v CPU
16384-61440 MiB con incrementi di 4096 MiB
16 v CPU
32768-122880 MiB con incrementi di 8192 MiB
- tipo =VCPU»»
-
Il numero di persone vCPUs riservate per il lavoro. Questo parametro è
CpuShares
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --cpu-shares
opzione DockerRun. Ogni v CPU equivale a 1.024 CPU condivisioni. Per i lavori che vengono eseguiti su EC2 risorse, è necessario specificare almeno una vCPU. È obbligatorio ma può essere specificato in diversi punti. Deve essere specificato almeno una volta per ogni nodo. Per i lavori eseguiti su risorse Fargate,
value
deve corrispondere a uno dei valori supportati e iMEMORY
valori devono essere uno dei valori supportati per quel VCPU valore. I valori supportati sono 0,25, 0,5, 1, 2, 4, 8 e 16.L'impostazione predefinita per la quota di conteggio delle CPU risorse di Fargate On-Demand v è 6. vCPUs Per ulteriori informazioni sulle quote Fargate, vedere Quote AWS Fargate nel. Riferimenti generali di Amazon Web Services
Tipo: stringa
Campo obbligatorio: sì, quando viene usato
resourceRequirements
.
secrets
-
I segreti del lavoro che sono 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
Campo 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'intero Amazon Resource Name (ARN) del segreto ARN di Secrets Manager o l'intero parametro nel SSM Parameter Store.
Nota
Se il SSM parametro Parameter Store esiste nello Regione AWS stesso del processo che stai avviando, puoi utilizzare il nome ARN o il nome completo del parametro. Se il parametro esiste in una regione diversa, è ARN necessario specificare il valore completo.
Tipo: stringa
Campo obbligatorio: sì, quando viene usato
secrets
.
ulimits
-
Un elenco di valori
ulimits
da impostare nel container. Questo parametro èUlimits
mappato alla sezione Crea un contenitoredi Docker Remote API e all' --ulimit
opzione a docker run. "ulimits": [ { "name":
string
, "softLimit":integer
, "hardLimit":integer
} ... ]Tipo: array di oggetti
Campo obbligatorio: no
name
-
type
diulimit
.Tipo: stringa
Campo obbligatorio: sì, quando viene usato
ulimits
. hardLimit
-
Il limite rigido per il tipo
ulimit
.Tipo: integer
Campo obbligatorio: sì, quando viene usato
ulimits
. softLimit
-
Il limite flessibile per il tipo
ulimit
.Tipo: integer
Campo obbligatorio: sì, quando viene usato
ulimits
.
user
-
Il nome utente per l'utilizzo all'interno del container. Questo parametro è
User
mappato alla sezione Crea un contenitoredel Docker Remote API e all' --user
opzione a. docker run"user": "
string
"Tipo: string
Campo obbligatorio: no
vcpus
-
Questo parametro è obsoleto, utilizzalo al suo posto.
resourceRequirements
Il numero vCPUs riservato per il contenitore.
Ad esempio
resourceRequirements
, se la definizione del lavoro contiene righe simili a queste:"containerProperties": { "vcpus":
2
}Le righe equivalenti utilizzate
resourceRequirements
sono le seguenti."containerProperties": { "resourceRequirements": [ { "type": "VCPU", "value": "
2
" } ] }Tipo: integer
Campo 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. Il nome può contenere un massimo di 255 lettere (maiuscole e minuscole), numeri, trattini e caratteri di sottolineatura. Nel parametro
sourceVolume
della definizione del containermountPoints
viene fatto riferimento a questo nome.Tipo: string
Campo obbligatorio: no
host
-
Il contenuto del parametro
host
determina 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
Campo 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
host
contiene 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 valoresourcePath
non è 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: string
Campo 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 EFSVolumi Amazon.
Tipo: oggetto
Campo obbligatorio: no
authorizationConfig
-
I dettagli di configurazione delle autorizzazioni per il EFS file system Amazon.
Tipo: string
Campo obbligatorio: no
accessPointId
-
L'ID del punto di EFS accesso Amazon da utilizzare. Se viene specificato un punto di accesso, il valore della directory principale specificato in
EFSVolumeConfiguration
deve essere omesso o impostato/
su. Ciò impone il percorso impostato sul punto di EFS accesso. Se si utilizza un punto di accesso, la crittografia di transito deve essere abilitata inEFSVolumeConfiguration
. Per ulteriori informazioni, consulta Working with Amazon EFS Access Points nella Amazon Elastic File System User Guide.Tipo: string
Campo obbligatorio: no
iam
-
Determina se utilizzare il IAM ruolo di AWS Batch lavoro definito in una definizione di processo durante il montaggio del EFS file system Amazon. 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 EFS accesso Amazon.Tipo: stringa
Valori validi:
ENABLED
|DISABLED
Campo obbligatorio: no
fileSystemId
-
L'ID EFS del file system Amazon da utilizzare.
Tipo: string
Campo obbligatorio: no
rootDirectory
-
La directory all'interno del EFS file system Amazon da montare come directory principale all'interno dell'host. Se questo parametro viene omesso, viene utilizzata la radice del EFS volume Amazon. 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 EFS accesso in
authorizationConfig
, il parametro della directory principale deve essere omesso o impostato su./
Ciò impone il percorso impostato sul punto di EFS accesso Amazon.Tipo: string
Campo obbligatorio: no
transitEncryption
-
Determina se abilitare la crittografia per EFS i dati Amazon in transito tra l'ECShost Amazon e il EFS server Amazon. La crittografia di transito deve essere abilitata se viene utilizzata EFS IAM l'autorizzazione Amazon. 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
|DISABLED
Campo obbligatorio: no
transitEncryptionPort
-
La porta da utilizzare per l'invio di dati crittografati tra l'ECShost Amazon e il EFS server Amazon. Se non specifichi una porta di crittografia di transito, utilizza la strategia di selezione delle porte utilizzata da Amazon EFS Mount Helper. Il valore deve essere compreso tra 0 e 65.535. Per ulteriori informazioni, consulta EFSMount Helper nella Amazon Elastic File System User Guide.
Tipo: integer
Campo obbligatorio: no
EKSProprietà Amazon
Un oggetto con varie proprietà specifiche per i lavori EKS basati su Amazon. Questo non deve essere specificato per le definizioni di lavoro ECS basate su Amazon.
podProperties
-
Le proprietà per Kubernetes tutte le risorse di un lavoro.
Tipo: oggetto EksPodProperties
Campo obbligatorio: no
containers
-
Le proprietà del contenitore utilizzato nel EKS pod Amazon.
Tipo: oggetto EksContainer
Campo obbligatorio: no
args
-
Un array di argomenti per il punto di ingresso. Se non è specificato, viene utilizzato il
CMD
dell’immagine del container. Corrisponde alargs
membro nella parte Entrypointdel Pod in Kubernetes. I riferimenti alle variabili di ambiente vengono espansi utilizzando l'ambiente del contenitore. 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 ambienteNAME1
non 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, vedete CMDnel riferimento a Dockerfile e Definizione di un comando e argomenti per un pod nel Kubernetes documentazione. Tipo: matrice di stringhe
Campo 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
ENTRYPOINT
dell’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 ambienteNAME1
non 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 ENTRYPOINTnel riferimento a Dockerfile e Definire un comando e argomenti per un contenitore e Entrypoint nel Kubernetes documentazione. Tipo: matrice di stringhe
Campo 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 AWS Batch impostate.Tipo: matrice di oggetti EksContainerEnvironmentVariable
Campo obbligatorio: no
name
-
Il nome della variabile di ambiente.
Tipo: stringa
Campo obbligatorio: sì
value
-
Il valore della variabile di ambiente.
Tipo: string
Campo obbligatorio: no
image
-
L'immagine Docker utilizzata per avviare il container.
Tipo: stringa
Campo obbligatorio: sì
imagePullPolicy
-
La policy di estrazione immagini per il container. I valori supportati sono
Always
,IfNotPresent
eNever
. Questo parametro per impostazione predefinita èIfNotPresent
. Tuttavia, se è specificato il tag:latest
, viene ripristinata l’impostazione predefinitaAlways
. Per ulteriori informazioni, vedete Aggiornamento delle immaginiin Kubernetes documentazione. Tipo: string
Campo 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: string
Campo obbligatorio: no
resources
-
Il tipo e la quantità di risorse da assegnare a un container. Le risorse supportate includono
memory
,cpu
envidia.com/gpu
. Per ulteriori informazioni, consulta Gestione delle risorse per pod e contenitorinel Kubernetes documentazione. Tipo: oggetto EksContainerResourceRequirements
Campo obbligatorio: no
limits
-
Il tipo e la quantità di risorse specificate da prenotare per il container. I valori variano in base al
name
specificato. Le risorse possono essere chieste utilizzando oggettilimits
orequests
.- 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
memory
può essere specificata inlimits
e/orequests
. Se lamemory
è specificata in entrambi, il valore specificato inlimits
deve 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 CPUs è riservato al contenitore. I valori devono essere un multiplo pari di
0.25
. Lacpu
può essere specificata inlimits
e/orequests
. Se lacpu
è specificata in entrambi, il valore specificato inlimits
deve essere almeno pari al valore specificato inrequests
. - nvidia.com/gpu
-
Il numero di GPUs quello è riservato al contenitore. I valori devono essere un numero intero. La
memory
può essere specificata inlimits
e/orequests
. Se lamemory
è specificata in entrambi, il valore specificato inlimits
deve 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.
Campo obbligatorio: no
requests
-
Il tipo e la quantità di risorse specificate da chiedere per il container. I valori variano in base al
name
specificato. Le risorse possono essere chieste utilizzando oggettilimits
orequests
.- 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
memory
può essere specificata inlimits
e/orequests
. Se lamemory
è specificata in entrambi, il valore specificato inlimits
deve essere uguale al valore specificato inrequests
.Nota
Se stai cercando di massimizzare l'utilizzo delle risorse fornendo ai job quanta più memoria possibile per un particolare tipo di istanza, consulta. Gestione della memoria delle risorse di calcolo
- cpu
-
Il numero di questi CPUs è riservato al contenitore. I valori devono essere un multiplo pari di
0.25
. Lacpu
può essere specificata inlimits
e/orequests
. Se lacpu
è specificata in entrambi, il valore specificato inlimits
deve essere uguale al valore specificato inrequests
. - nvidia.com/gpu
-
Il numero di GPUs quelli è riservato al contenitore. I valori devono essere un numero intero. La
nvidia.com/gpu
può essere specificata inlimits
e/orequests
. Se lanvidia.com/gpu
è specificata in entrambi, il valore specificato inlimits
deve 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.
Campo 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
nel Kubernetes documentazione. Tipo: oggetto EksContainerSecurityContext
Campo obbligatorio: no
privileged
-
Quando questo parametro è
true
, al container sono assegnate autorizzazioni elevati nell'istanza di container host. Il livello delle autorizzazioni è simile alle autorizzazioni degliroot
utenti. Il valore predefinito èfalse
. Questo parametro viene mappato alleprivileged
politiche di sicurezza del pod Privilegedin Kubernetes documentazione. Tipo: Booleano
Campo 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 viene mappato alleReadOnlyRootFilesystem
politiche di sicurezza del pod Volumes and file systempresenti in Kubernetes documentazione. Tipo: Booleano
Campo 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 associa iRunAsGroup
MustRunAs
criteri di sicurezza contenuti nel pod Utenti e gruppidel contenitore Utenti e gruppi in Kubernetes documentazione. Tipo: long
Campo obbligatorio: no
runAsNonRoot
-
Quando questo parametro è specificato, il container viene eseguito come utente con un
uid
diverso da 0. Se questo parametro non è specificato, viene applicata tale regola. Questo parametro associa iRunAsUser
MustRunAsNonRoot
criteri di sicurezza contenuti nel pod Utenti e gruppidel contenitore Utenti e gruppi in Kubernetes documentazione. Tipo: long
Campo 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 associa iRunAsUser
MustRanAs
criteri di sicurezza contenuti nel pod Utenti e gruppidel contenitore Utenti e gruppi in Kubernetes documentazione. Tipo: long
Campo obbligatorio: no
volumeMounts
-
Il volume viene montato per un container per un EKS job Amazon. Per ulteriori informazioni sui volumi e sui montaggi dei volumi in Kubernetes, vedete Volumes
in Kubernetes documentazione. Tipo: matrice di oggetti EksContainerVolumeMount
Campo obbligatorio: no
mountPath
-
Il percorso sul container in cui è montato il volume.
Tipo: string
Campo obbligatorio: no
name
-
Il nome del montaggio del volume. Deve corrispondere al nome di uno dei volumi nel pod.
Tipo: string
Campo 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
Campo obbligatorio: no
dnsPolicy
-
La DNS politica per il pod. Il valore predefinito è
ClusterFirst
. Se ilhostNetwork
parametro non è specificato, l'impostazione predefinita èClusterFirstWithHostNet
.ClusterFirst
indica che qualsiasi DNS query che non corrisponde al suffisso del dominio del cluster configurato viene inoltrata al nameserver upstream ereditato dal nodo. SednsPolicy
nell'operazione non è stato specificato alcun valore, nessuna delle RegisterJobDefinitionAPIoperazioni restituisce alcun valore.dnsPolicy
DescribeJobDefinitionsDescribeJobsAPI L'impostazione delle specifiche del pod conterràClusterFirst
oClusterFirstWithHostNet
, a seconda del valore del parametrohostNetwork
. Per ulteriori informazioni, consulta la DNS politica di Podnella Kubernetes documentazione. Valori validi:
Default
|ClusterFirst
|ClusterFirstWithHostNet
Tipo: string
Campo obbligatorio: no
hostNetwork
-
Indica se il pod utilizza l'indirizzo IP di rete degli host. Il valore predefinito è
true
. Impostando questa opzione perfalse
abilitare Kubernetes modello di rete pod. La maggior parte dei AWS Batch carichi di lavoro è di sola uscita e non richiede il sovraccarico dell'allocazione IP per ogni pod per le connessioni in ingresso. Per ulteriori informazioni, consulta Host namespaces e Pod networking nelKubernetes documentazione. Tipo: Booleano
Campo obbligatorio: no
serviceAccountName
-
Il nome dell’account di servizio utilizzato per l’esecuzione del pod. Per ulteriori informazioni, consulta Kubernetes account di servizio e Configure a Kubernetes account di servizio per assumere un IAM ruolo nella Amazon EKS User Guide e configurare gli account di servizio per i pod
nel Kubernetes documentazione. Tipo: string
Campo obbligatorio: no
volumes
-
Speciifica i volumi per una definizione di processo che utilizza EKS risorse Amazon.
Tipo: matrice di oggetti EksVolume
Campo obbligatorio: no
- emptyDir
-
Specifica la configurazione di un Kubernetes
emptyDir
volume. Un volumeemptyDir
viene creato per la prima volta quando un pod viene assegnato a un nodo. Esiste finché il pod funziona su quel nodo. Il volumeemptyDir
inizialmente è 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 nellaemptyDir
vengono eliminati definitivamente. Per ulteriori informazioni, emptyDirconsulta Kubernetes documentazione. Tipo: oggetto EksEmptyDir
Campo 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
tmpfs
volume supportato dal RAM 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: string
Campo obbligatorio: no
- sizeLimit
-
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.
Campo obbligatorio: no
- hostPath
-
Specifica la configurazione di un Kubernetes
hostPath
volume. Un volumehostPath
monta un file o una directory esistente dal file system del nodo host nel pod. Per ulteriori informazioni, hostPathconsulta Kubernetes documentazione. Tipo: oggetto EksHostPath
Campo obbligatorio: no
- path
-
Il percorso del file o della directory sull'host da montare in container nel pod.
Tipo: string
Campo obbligatorio: no
- nome
-
Nome del volume. Il nome deve essere consentito come nome di DNS sottodominio. Per ulteriori informazioni, consulta i nomi dei DNS sottodomini
nella Kubernetes documentazione. Tipo: stringa
Campo obbligatorio: sì
- Secret
-
Specifica la configurazione di un Kubernetes
secret
volume. Per ulteriori informazioni, vedere secretin Kubernetes documentazione. Tipo: oggetto EksSecret
Campo obbligatorio: no
- facoltativo
-
Speciifica se è necessario definire il segreto o le chiavi del segreto.
Tipo: Booleano
Campo obbligatorio: no
- secretName
-
Il nome del segreto. Il nome deve essere consentito come nome di DNS sottodominio. Per ulteriori informazioni, consulta i nomi dei DNS sottodomini
nella Kubernetes documentazione. Tipo: stringa
Campo 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 processo viene eseguito su EKS risorse Amazon, non devi specificare
platformCapabilities
.Tipo: stringa
Valori validi:
EC2
|FARGATE
Campo obbligatorio: 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 del processo e della definizione del processo è superiore a 50, il lavoro viene
FAILED
spostato nello stato.Nota
Se il processo viene eseguito su EKS risorse Amazon, non devi specificare
propagateTags
.Tipo: Booleano
Campo obbligatorio: no
Proprietà del nodo
nodeProperties
-
Quando si registra una definizione di processo 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 lavoro 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 Lavori paralleli multinodo.Nota
Se il processo viene eseguito su EKS risorse Amazon, non devi specificare
nodeProperties
.Tipo: oggetto NodeProperties
Campo obbligatorio: no
mainNode
-
Specifica l'indice del nodo per il nodo principale di un processo parallelo a più nodi. Il valore dell'indice del nodo deve essere inferiore al numero di nodi.
Tipo: integer
Campo obbligatorio: sì
numNodes
-
Il numero di nodi associati a un processo parallelo multinodo.
Tipo: integer
Campo 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 lavoro che condividono tutti le stesse proprietà del contenitore. È possibile utilizzare AWS Batch per specificare fino a cinque gruppi di nodi distinti per ogni job.
Tipo: matrice di oggetti NodeRangeProperty
Campo obbligatorio: sì
targetNodes
-
L'intervallo di nodi, utilizzando i valori di indice del nodo. Un intervallo di
0:3
indica i nodi con i valori di indice compresi tra0
e3
. 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 intervalli di nodi, ad esempio0:10
e4:5
. In questo caso, le proprietà dell'4:5
intervallo hanno la precedenza sulle0:10
proprietà.Tipo: string
Campo obbligatorio: no
container
-
I dettagli del container per l'intervallo di nodo. Per ulteriori informazioni, consulta Proprietà del contenitore.
Tipo: oggetto ContainerProperties
Campo 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 nuovo tentativo specificata durante un'SubmitJoboperazione ha la precedenza sulla strategia di nuovo tentativo definita qui. Per impostazione predefinita, ogni processo viene tentato una sola volta. Se si specifica più di un tentativo, il processo viene ritentato se fallisce. Esempi di tentativo fallito includono il processo che restituisce un codice di uscita diverso da zero o l'istanza del contenitore viene terminata. Per ulteriori informazioni, consulta Ritentativi di lavoro automatizzati.
Tipo: oggetto RetryStrategy
Campo 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":
integer
Tipo: integer
Campo obbligatorio: no
evaluateOnExit
-
Matrice di un massimo di 5 oggetti che specificano le condizioni in base alle quali il processo viene riprovato o fallito. Se viene specificato questo parametro, è necessario specificare anche il parametro
attempts
. SeevaluateOnExit
viene specificato ma nessuna delle voci corrisponde, il processo viene ritentato."evaluateOnExit": [ { "action": "
string
", "onExitCode": "string
", "onReason": "string
", "onStatusReason": "string
" } ]Tipo: matrice di oggetti EvaluateOnExit
Campo obbligatorio: no
action
-
Specifica l'azione da eseguire se vengono soddisfatte tutte le condizioni specificate (
onStatusReason
,onReason
eonExitCode
). I valori non fanno distinzione tra maiuscole e minuscole.Tipo: stringa
Campo obbligatorio: sì
Valori validi:
RETRY
|EXIT
onExitCode
-
Contiene uno schema a globo da confrontare con la rappresentazione decimale di
ExitCode
ciò che 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: string
Campo obbligatorio: no
onReason
-
Contiene uno schema a globo da confrontare con
Reason
quello 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: string
Campo obbligatorio: no
onStatusReason
-
Contiene uno schema a globo da confrontare con
StatusReason
quello 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: string
Campo obbligatorio: no
Priorità di pianificazione
schedulingPriority
-
La priorità di pianificazione per i lavori inviati con questa definizione di processo. Ciò riguarda solo i processi in coda di lavoro con una policy di ripartizione 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
Campo obbligatorio: no
Tag
tags
-
Tag di coppia chiave-valore da associare alla definizione del processo. Per ulteriori informazioni, consulta Etichetta le tue AWS Batch risorse.
Tipo: mappatura stringa a stringa
Campo obbligatorio: no
Timeout
timeout
-
È possibile configurare una durata di timeout per i processi in modo che, se un lavoro dura più a lungo, lo AWS Batch interrompa. Per ulteriori informazioni, consulta Job timeout. Se un lavoro viene interrotto a causa di un timeout, non viene ritentato. Qualsiasi configurazione di timeout specificata durante un'SubmitJoboperazione ha la precedenza sulla configurazione di timeout definita qui. Per ulteriori informazioni, consulta Job timeout.
Tipo: oggetto JobTimeout
Campo obbligatorio: no
attemptDurationSeconds
-
La durata in secondi (misurata in base al
startedAt
timestamp 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 i lavori parallel (MNP) a più nodi, il timeout si applica all'intero processo, non ai singoli nodi.
Tipo: integer
Campo obbligatorio: no