As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Referência: parâmetros de definição de trabalho para ContainerProperties
Definições de trabalho que usam ContainerProperties
são divididas em várias partes:
o nome da definição do trabalho
o tipo de definição do trabalho
os padrões do espaço reservado para substituição de parâmetros
o contêiner para as propriedades do trabalho
-
as propriedades do Amazon EKS para a definição do trabalho que são necessárias para trabalhos executados em recursos do Amazon EKS
as propriedades do nó que são necessárias para um trabalho paralelo de vários nós
as funcionalidades da plataforma necessárias para trabalhos executados em recursos do Fargate
os detalhes padrão de propagação de tag da definição do trabalho
a estratégia de repetição padrão para a definição do trabalho
a prioridade de agendamento padrão para a definição do trabalho
as tags padrão para a definição do trabalho
o tempo limite padrão para a definição do trabalho
Sumário
Nome da definição do trabalho
jobDefinitionName
-
Ao registrar uma definição de trabalho, você especifica um nome. Os nomes podem ter até 128 caracteres. Pode conter letras minúsculas, maiúsculas, números, hifens e (-) e sublinhados (_). A primeira definição de trabalho que está registrada com esse nome recebe uma revisão de 1. Todas as definições de trabalho subsequentes registrados com esse nome recebem um número de revisão incremental.
Tipo: Sequência
Obrigatório: Sim
Tipo
type
-
Ao registrar uma definição de trabalho, você especifica o tipo de trabalho. Se o trabalho for executado em recursos do Fargate, então
multinode
não será compatível. Para obter mais informações sobre trabalho em paralelo com vários nós, consulte Criar uma definição de trabalho paralelo de vários nós.Tipo: Sequência
Valores válidos:
container
|multinode
Obrigatório: Sim
Parâmetros
parameters
-
Quando você envia um trabalho, pode especificar os parâmetros que devem substituir os marcadores ou os parâmetros de definição de trabalho padrão. Os parâmetros nas solicitações de envio de trabalho têm precedência sobre os padrões em uma definição de trabalho. Isso significa que você pode usar a mesma definição de trabalho para vários outros que usam o mesmo formato. Você também pode alterar programaticamente os valores no comando no momento do envio.
Tipo: Mapa de string para string
Obrigatório: Não
Ao registrar uma definição de trabaho, você pode usar espaços reservados para substituição de parâmetros no campo
command
de propriedades de contêiner de um trabalho. A sintaxe é a seguinte."command": [ "ffmpeg", "-i", "
Ref::inputfile
", "-c", "Ref::codec
", "-o", "Ref::outputfile
" ]No exemplo acima, há os espaços reservados de substituição de parâmetro
,Ref::inputfile
eRef::codec
no comando. Você pode usar o objetoRef::outputfile
parameters
na definição do trabalho para configurar valores padrão para esses espaços reservados. Por exemplo, para definir um padrão para o espaço reservado
, você especificará o seguinte na definição do trabalho:Ref::codec
"parameters" : {"codec" : "mp4"}
Quando essa definição de trabalho for enviada para execução, o argumento
no comando para o contêiner será substituído pelo valor padrão,Ref::codec
mp4
.
Propriedades do contêiner
Ao registrar uma definição de trabalho você deve especificar uma lista de propriedades de contêiner que são passadas para o daemon do Docker em uma instância de contêiner quando o trabalho é feito. As seguintes propriedades de contêiner são permitidas em uma definição de trabalho. Para trabalhos de nó único, essas propriedades de contêiner são configuradas no nível de definição do trabalho. Para trabalhos em paralelo de vários nós, as propriedades de contêiner são definidas no nível de Propriedades de nó para cada grupo de nós.
command
-
O comando que é passado para o contêiner. Esse parâmetro é mapeado para
Cmd
na seção Criar um contêinerda Docker Remote API e o parâmetro COMMAND
de docker run. Para obter mais informações sobre o parâmetro CMD
da Docker, consulte https://docs.docker.com/engine/reference/builder/#cmd. "command": ["
string
", ...]Tipo: Matriz de strings
Obrigatório: Não
environment
-
As variáveis de ambiente a serem passadas para um contêiner. Esse parâmetro é mapeado para
Env
na seção Criar um contêinerda Docker Remote API e a opção --env
para docker run. Importante
Não recomendamos que você use variáveis de ambiente de texto simples para informações confidenciais, como dados de credenciais.
nota
Variáveis de ambiente não podem começar com
AWS_BATCH
. Essa convenção de nomenclatura é reservada para variáveis definidas pelo serviço AWS Batch.Tipo: Matriz de pares de valores-chave
Obrigatório: Não
name
-
O nome da variável de ambiente.
Tipo: Sequência
Obrigatório: Sim, quando
environment
for usado. value
-
O valor da variável de ambiente.
Tipo: Sequência
Obrigatório: Sim, quando
environment
for usado.
"environment" : [ { "name" : "
envName1
", "value" : "envValue1
" }, { "name" : "envName2
", "value" : "envValue2
" } ] executionRoleArn
-
Ao registrar uma definição de trabalho, você pode especificar um perfil do IAM. O perfil fornece ao agente de contêiner do Amazon ECS permissões para chamar as ações da API especificadas nas políticas colaboradoras em seu nome. Para trabalhos executados em recursos do Fargate, você deve fornecer um perfil de execução. Para ter mais informações, consulte Função de execução do AWS Batch IAM.
Tipo: Sequência
Obrigatório: Não
fargatePlatformConfiguration
-
A configuração da plataforma para trabalhos que são executados nos recursos do Fargate. Os trabalhos que são executados nos recursos do EC2 não devem especificar esse parâmetro.
Tipo: Objeto FargatePlatformConfiguration
Obrigatório: Não
platformVersion
-
Use a versão da plataforma do AWS Fargate para os trabalhos ou
LATEST
para usar uma versão recente e aprovada da plataforma do AWS Fargate.Tipo: Sequência
Padrão:
LATEST
Obrigatório: Não
image
-
A imagem usada para iniciar um trabalho. Esta string é passada diretamente para o daemon do Docker. As imagens no registro do Docker Hub estão disponíveis por padrão. Você também pode especificar outros repositórios com
. São permitidos até 255 letras (caixa alta e baixa), números, hifens, sublinhados, dois pontos, ponto, barras e sinais numéricos. Esse parâmetro é mapeado pararepository-url
/image
:tag
Image
na seção Criar um contêinerda Docker Remote API e o parâmetro IMAGE
de docker run. nota
A arquitetura da imagem do Docker deve corresponder à arquitetura do processador dos recursos de computação nos quais eles foram programados. Por exemplo, imagens Arm baseadas em Docker só podem ser executadas em recursos de computação baseados em Arm.
-
As imagens em repositórios públicos do Amazon ECR usam as convenções de nomenclatura completa
registry/repository[:tag]
ouregistry/repository[@digest]
(por exemplo,public.ecr.aws/
).registry_alias
/my-web-app
:latest
-
As imagens nos repositórios do Amazon ECR usam a convenção de
registry/repository:[tag]
nomenclatura completa. Por exemplo,aws_account_id
.dkr.ecr.region
.amazonaws.com/
.my-web-app
:latest
-
As imagens em repositórios oficiais no Docker Hub usam um único nome (por exemplo,
ubuntu
oumongo
). -
As imagens em outros repositórios no Docker Hub são qualificadas com um nome de organização (por exemplo,
amazon/amazon-ecs-agent
). -
Imagens em outros repositórios online também são qualificadas por um nome de domínio (por exemplo,
quay.io/assemblyline/ubuntu
).
Tipo: Sequência
Obrigatório: Sim
-
instanceType
-
O tipo de instância a ser usado para trabalhos paralelos de vários nós. Atualmente, todos os grupos de nós em um trabalho em paralelo de vários nós devem usar o mesmo tipo de instância. Esse parâmetro não é válido para trabalhos de contêiner de nó único ou para trabalhos que são executados em recursos Fargate.
Tipo: Sequência
Obrigatório: Não
jobRoleArn
-
Ao registrar uma definição de trabalho, você pode especificar um perfil do IAM. A função fornece ao contêiner de trabalho permissões para chamar as ações da API especificadas em suas políticas colaboradoras em seu nome. Para obter mais informações, consulte Perfis do IAM para tarefas no Guia do desenvolvedor do Amazon Elastic Container Service.
Tipo: Sequência
Obrigatório: Não
linuxParameters
-
Modificações específicas do Linux que são aplicadas ao contêiner, como detalhes para mapeamentos do dispositivo.
"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: Objeto LinuxParameters
Obrigatório: Não
devices
-
Lista de dispositivos mapeados para o contêiner. Esse parâmetro é mapeado para
Devices
na seção Criar um contêinerda Docker Remote API e na opção --device
de execução do docker. nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Tipo: Matriz de objetos Device
Obrigatório: Não
hostPath
-
Caminho onde está o dispositivo disponível na instância de contêiner host.
Tipo: Sequência
Obrigatório: Sim
containerPath
-
Caminho em que o dispositivo é exposto no contêiner. Se isso não for especificado, o dispositivo será exposto ao mesmo caminho do host.
Tipo: Sequência
Obrigatório: Não
permissions
-
Permissões para o dispositivo no contêiner. Se não for especificado, as permissões serão definidas como
READ
,WRITE
eMKNOD
.Tipo: Matriz de strings
Obrigatório: Não
Valores válidos:
READ
|WRITE
|MKNOD
initProcessEnabled
-
Se verdadeiro, execute um processo
init
dentro do contêiner que encaminha sinais e colhe processos. Esse parâmetro mapeia para a opção--init
para execução do docker. Este parâmetro requer a versão 1.25 ou posterior da Docker Remote API ou posterior em sua instância de contêiner. Para verificar a versão da Docker Remote API na instância de contêiner, faça login na instância de contêiner e execute o seguinte comando: sudo docker version | grep "Server API version"
Tipo: Booliano
Obrigatório: Não
maxSwap
-
Especifica a quantidade total de memória de troca (em MiB) que um trabalho pode usar. Esse parâmetro será convertido na opção
--memory-swap
para execução do dockerem que o valor é a soma da memória do contêiner mais o valor de maxSwap
. Para obter mais informações, consulte Detalhes do--memory-swap
na documentação do Docker. Se um valor
maxSwap
de0
for especificado, o contêiner não usará a troca. Os valores aceitos são0
ou qualquer número inteiro positivo. Se o parâmetromaxSwap
for omitido, o contêiner usará a configuração de troca para a instância de contêiner na qual ele está sendo executado. Um valormaxSwap
deve ser definido para que o parâmetroswappiness
seja usado.nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Tipo: Inteiro
Obrigatório: Não
sharedMemorySize
-
O valor do tamanho (em MiB) do volume
/dev/shm
. Esse parâmetro mapeia para a opção--shm-size
para execução do docker. nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Tipo: Inteiro
Obrigatório: Não
swappiness
-
É possível usar isso para ajustar o comportamento de troca de memória de um contêiner. Um valor
swappiness
de0
fará com que a troca não ocorra, a menos que seja absolutamente necessário. Um valorswappiness
de100
fará com que as páginas sejam trocadas de forma agressiva. Os valores aceitos são números inteiros entre0
e100
. Se o parâmetroswappiness
não for especificado, será usado um valor padrão de60
. Se nenhum valor for especificado paramaxSwap
, esse parâmetro será ignorado. SemaxSwap
estiver definido como 0, o contêiner não usará troca. Esse parâmetro mapeia para a opção--memory-swappiness
para execução do docker. Considere o seguinte ao usar uma configuração de troca de contêiner.
-
O espaço de troca deve ser habilitado e alocado na instância de contêiner para os contêineres usarem.
nota
As AMIs otimizadas do Amazon ECS não têm a troca habilitada por padrão. É necessário habilitar a troca na instância para usar esse recurso. Para obter mais informações, consulte Volumes de troca de armazenamento de instâncias no Manual do usuário do Amazon EC2 ou Como alocar memória para funcionar como espaço de troca em uma instância do Amazon EC2 usando uma partição no meu disco rígido?
. -
Os parâmetros de espaço de troca só são suportados para definições de trabalho usando recursos do EC2.
-
Se os parâmetros
maxSwap
eswappiness
forem omitidos de uma definição de trabalho, cada contêiner terá um valor deswappiness
padrão de 60. Além disso, o uso total de troca tem um limite de duas vezes a reserva de memória do contêiner.
nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Tipo: Inteiro
Obrigatório: Não
-
tmpfs
-
O caminho do contêiner, as opções de montagem e o tamanho da montagem do tmpfs.
Tipo: Matriz de objetos Tmpfs
nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Obrigatório: Não
containerPath
-
O caminho absoluto do arquivo no contêiner onde o volume tmpfs é montado.
Tipo: Sequência
Obrigatório: Sim
mountOptions
-
A lista de opções de montagem do volume tmpfs.
Valores válidos: "
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: Matriz de strings
Obrigatório: Não
size
-
O tamanho (em MiB) do volume tmpfs.
Tipo: Inteiro
Obrigatório: Sim
logConfiguration
-
A especificação de configuração do log para o contêiner.
Esse parâmetro é mapeado
LogConfig
na seção Criar um contêinerda Docker Remote API e na opção --log-driver
de execução do docker. Por padrão, os contêineres usam o mesmo driver de registro que o daemon do Docker usa. No entanto, o contêiner pode usar um driver de registro diferente do daemon do Docker especificando um driver de log com esse parâmetro na definição de contêiner. Para usar um driver de registro diferente para um contêiner, o sistema de registro deve ser configurado na instância de contêiner ou em outro servidor de registro para fornecer opções de registro remoto. Para obter mais informações sobre as opções para drivers de log compatíveis diferentes, consulte Configure logging drivers na documentação do Docker. nota
No momento, o AWS Batch é compatível com um subconjunto dos drivers de registro em log disponíveis para o daemon do Docker (mostrado no tipo de dados LogConfiguration).
Este parâmetro requer a versão 1.18 da Docker Remote API ou posterior em sua instância de contêiner. Para verificar a versão da Docker Remote API na instância de contêiner, faça login na instância de contêiner e execute o seguinte 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: Objeto LogConfiguration
Obrigatório: Não
logDriver
-
O driver de log a ser usado para o contêiner. Por padrão, o AWS Batch ativa o driver de log
awslogs
. Os valores válidos listados para esse parâmetro são drivers de log com os quais o agente de contêiner do Amazon ECS pode se comunicar por padrão.Esse parâmetro é mapeado
LogConfig
na seção Criar um contêinerda Docker Remote API e na opção --log-driver
de execução do docker. Por padrão, os trabalhos usam o mesmo driver de registro que o daemon do Docker usa. No entanto, o trabalho pode usar um driver de registro diferente do daemon do Docker especificando um driver de log com esse parâmetro na definição do trabalho. Se você quiser especificar outro driver de registro em log para um trabalho, o sistema de log deve ser configurado na instância de contêiner no ambiente de computação. Ou, como alternativa, configure-o em outro servidor de log para fornecer opções de registro remoto. Para obter mais informações sobre as opções para drivers de log compatíveis diferentes, consulte Configure logging drivers na documentação do Docker. nota
AWS Batch atualmente é compatível com um subconjunto de drivers de registro disponíveis para o daemon do Docker. Os drivers de log adicionais podem estar disponíveis em versões futuras do agente de contêiner do Amazon ECS.
Os drivers de log compatíveis são
awslogs
,fluentd
,gelf
,json-file
,journald
,logentries
,syslog
esplunk
.nota
Os trabalhos em execução nos recursos do Fargate são restritos aos drivers de log
awslogs
esplunk
.Este parâmetro requer a versão 1.18 da Docker Remote API ou posterior em sua instância de contêiner. Para verificar a versão da Docker Remote API na instância de contêiner, faça login na instância de contêiner e execute o seguinte comando:
sudo docker version | grep "Server API version"
nota
O agente de contêiner do Amazon ECS que é executado em uma instância de contêiner deve registrar os drivers de registro que estão disponíveis nessa instância com o variável de ambiente
ECS_AVAILABLE_LOGGING_DRIVERS
. Caso contrário, os contêineres colocados nessa instância não poderão usar essas opções de configuração de log. Para obter mais informações, consulte Configuração do Agente de Contêineres do Amazon ECS no Guia do desenvolvedor do Amazon Elastic Container Service.awslogs
-
Especifica o driver de registro em log do Amazon CloudWatch Logs. Para obter mais informações, consulte Usar o driver de log awslogs. e Driver de registro do Amazon CloudWatch Logs
na documentação do Docker. fluentd
-
Especifica o driver de registro do Fluentd. Para obter mais informações, incluindo uso e opções, consulte Driver de registro Fluentd
na documentação do Docker. gelf
-
Especifica o driver de registro Graylog Extended Format (GELF). Para obter mais informações, incluindo uso e opções, consulte Driver de registro Graylog Extended Format
na documentação do Docker. journald
-
Especifica o driver de registro journald. Para obter mais informações, incluindo uso e opções, consulte Driver de registro Journald
na documentação do Docker. json-file
-
Especifica o driver de registro de arquivos JSON. Para obter mais informações, incluindo uso e opções, consulte driver de registro de arquivo JSON
na documentação do Docker. splunk
-
Especifica o driver de registro do Splunk. Para obter mais informações, incluindo uso e opções, consulte driver de registro do Splunk
na documentação do Docker. syslog
-
Especifica o driver de registro em log do syslog. Para obter mais informações, incluindo uso e opções, consulte driver de registro de log do Syslog
na documentação do Docker.
Tipo: Sequência
Obrigatório: Sim
Valores válidos:
awslogs
|fluentd
|gelf
|journald
|json-file
|splunk
|syslog
nota
Se você tiver um driver personalizado não listado acima que você deseja que funcione no agente de contêiner do Amazon ECS, divida o projeto do agente de contêiner do Amazon ECS disponível no GitHub
e personalize-o para funcionar com esse driver. Incentivamos você a enviar solicitações pull para alterações que você gostaria de ter incluído. No entanto, o Amazon Web Services atualmente não oferece suporte para solicitações a execução de cópias modificadas desse software. options
-
Opções de configuração de log para enviar para um driver de log personalizado para o contêiner.
Este parâmetro requer a versão 1.19 da Docker Remote API ou posterior em sua instância de contêiner.
Tipo: Mapa de string para string
Obrigatório: Não
secretOptions
-
Um objeto que representa o segredo a ser passado para a configuração de log. Para ter mais informações, consulte Especificar dados confidenciais.
Tipo: Matriz de objeto
Obrigatório: Não
name
-
O nome da opção do driver de log a ser definida no trabalho.
Tipo: Sequência
Obrigatório: Sim
valueFrom
-
O nome do recurso da Amazon (ARN) do segredo a ser exposto à configuração de log do contêiner. Os valores compatíveis são o ARN completo do segredo do Secrets Manager ou o ARN completo do parâmetro na SSM Parameter Store.
nota
Se o parâmetro do Parameter Store do SSM existir na mesma região Região da AWS que está sendo iniciada, você poderá usar o ARN completo ou o nome do parâmetro. Se o parâmetro existir em uma Região diferente, o ARN completo deverá ser especificado.
Tipo: Sequência
Obrigatório: Sim
memory
-
Este parâmetro está obsoleto, use
resourceRequirements
alternativamente.O número de MiB de memória a ser reservado para o contêiner.
Como exemplo de como usar
resourceRequirements
, se sua definição de trabalho contiver uma sintaxe semelhante à seguinte."containerProperties": { "memory":
512
}A sintaxe equivalente usando
resourceRequirements
é a seguinte."containerProperties": { "resourceRequirements": [ { "type": "MEMORY", "value": "
512
" } ] }Tipo: Inteiro
Obrigatório: Sim
mountPoints
-
Os pontos de montagem para volumes de dados no contêiner. Esse parâmetro é mapeado para
Volumes
na seção Criar um contêinerda Docker Remote API e a opção --volume
para docker run. "mountPoints": [ { "sourceVolume": "
string
", "containerPath": "string
", "readOnly":true|false
} ]Tipo: Matriz de objeto
Obrigatório: Não
sourceVolume
-
O nome do volume a ser montado.
Tipo: Sequência
Obrigatório: Sim, quando
mountPoints
for usado. containerPath
-
O caminho no contêiner no qual montar o volume de host.
Tipo: Sequência
Obrigatório: Sim, quando
mountPoints
for usado. readOnly
-
Caso o valor seja
true
, o contêiner tem acesso somente leitura ao volume. Caso esse valor sejafalse
, o contêiner pode gravar no volume.Tipo: Booliano
Obrigatório: não
Padrão: Falso
networkConfiguration
-
A configuração de rede para trabalhos que estão em execução nos recursos do Fargate. Os trabalhos que são executados nos recursos do EC2 não devem especificar esse parâmetro.
"networkConfiguration": { "assignPublicIp": "string" }
Tipo: Matriz de objeto
Obrigatório: Não
assignPublicIp
-
Indica se o trabalho tem um endereço IP público. Isso é necessário se o trabalho precisar de acesso externo à rede.
Tipo: Sequência
Valores válidos:
ENABLED
|DISABLED
Obrigatório: Não
Padrão:
DISABLED
privileged
-
Quando esse parâmetro é verdadeiro, o contêiner recebe permissões elevadas na instância de contêiner host (semelhante ao usuário
root
). Esse parâmetro é mapeado paraPrivileged
na seção Criar um contêinerda Docker Remote API e a opção --privileged
para docker run. Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate. Não o forneça nem o especifique como falso. "privileged":
true|false
Tipo: Booliano
Obrigatório: Não
readonlyRootFilesystem
-
Quando esse parâmetro é verdadeiro, o contêiner recebe acesso somente leitura ao sistema de arquivos raiz. Esse parâmetro é mapeado para
ReadonlyRootfs
na seção Criar um contêinerda Docker Remote API e a opção --read-only
para docker run. "readonlyRootFilesystem":
true|false
Tipo: Booliano
Obrigatório: Não
resourceRequirements
-
O tipo e a quantidade de um recurso a serem atribuídos a um contêiner. Os recursos suportados incluem
GPU
,MEMORY
eVCPU
."resourceRequirements" : [ { "type": "GPU", "value": "
number
" } ]Tipo: Matriz de objeto
Obrigatório: Não
type
-
O tipo de recurso a ser atribuído a um contêiner. Os recursos suportados incluem
GPU
,MEMORY
eVCPU
.Tipo: Sequência
Obrigatório: Sim, quando
resourceRequirements
for usado. value
-
A quantidade do recurso especificado a ser reservado para o contêiner. Os valores variam de acordo com o
type
especificado.- Tipo=“GPU”
-
O número de GPUs físicas a serem reservadas para o contêiner. O número de GPUs reservadas para todos os contêineres em um trabalho não deve exceder o número de GPUs disponíveis no recurso de computação no qual o trabalho é executado.
- Tipo=“MEMORY”
-
O limite rígido (em MiB) de memória a ser apresentado ao contêiner. Caso tente exceder a memória especificada aqui, o contêiner será excluído. Esse parâmetro é mapeado
Memory
na seção Criar um contêinerda Docker Remote API e na opção --memory
de execução do docker. Você deve especificar pelo menos 4 MiB de memória para uma tarefa. Isso é necessário, mas pode ser especificado em vários lugares para trabalhos paralelos de vários nós (MNP). Ele deve ser especificado para cada nó pelo menos uma vez. Esse parâmetro é mapeado Memory
na seção Criar um contêinerda Docker Remote API e na opção --memory
de execução do docker. nota
Se você deseja maximizar a utilização de recursos fornecendo aos trabalhos o máximo de memória possível para um determinado tipo de instância, consulte Gerenciamento de memória de recursos de computação.
Para trabalhos executados em recursos do Fargate,
value
deve corresponder a um dos valores compatíveis. Além disso, os valoresVCPU
devem ser um dos valores compatíveis com esse valor de memória.VCPU
MEMORY
0.25 vCPU
512, 1024 e 2048 MiB
0.5 vCPU
1024-4096 MiB em incrementos de 1024 MiB
1 vCPU
2048-8192 MiB em incrementos de 1024 MiB
2 vCPU
4096-16384 MiB em incrementos de 1024 MiB
4 vCPU
8192-30720 MiB em incrementos de 1024 MiB
8 vCPU
16384-61440 MiB em incrementos de 4096 MiB
16 vCPU
32768-122880 MiB em incrementos de 8192 MiB
- type=“VCPU”
-
O número de vCPUs reservado para o trabalho. Esse parâmetro é mapeado para
CpuShares
na seção Criar um contêinerda Docker Remote API e a opção --cpu-shares
para execução do docker. Cada vCPU equivale a 1.024 compartilhamentos de CPU. Para recursos do EC2, você deve especificar pelo menos uma vCPU. Isso é necessário, mas pode ser especificado em vários lugares. Ele deve ser especificado para cada nó pelo menos uma vez. Para trabalhos que são executados em recursos do Fargate,
value
deve corresponder a um dos valores compatíveis, e os valoresMEMORY
devem ser um dos valores compatíveis para esse valor de VCPU. Os valores compatíveis são 0,25, 0,5, 1, 2, 4, 8 e 16.O padrão para a cota de contagem de recursos de vCPU sob demanda do Fargate é 6 vCPUs. Para obter mais informações sobre cotas de serviço, consulte AWS quotas na Referência geral da Amazon Web Services.
Tipo: Sequência
Obrigatório: Sim, quando
resourceRequirements
for usado.
secrets
-
Os segredos do trabalho que são expostos como variáveis de ambiente. Para ter mais informações, consulte Especificar dados confidenciais.
"secrets": [ { "name": "
secretName1
", "valueFrom": "secretArn1
" }, { "name": "secretName2
", "valueFrom": "secretArn2
" } ... ]Tipo: Matriz de objeto
Obrigatório: Não
name
-
O nome da variável de ambiente que contém o segredo.
Tipo: Sequência
Obrigatório: Sim, quando
secrets
for usado. valueFrom
-
O segredo a ser exposto ao contêiner. Os valores com suporte são o nome do recurso da Amazon (ARN) completo do segredo do Secrets Manager ou o ARN completo do parâmetro no SSM Parameter Store.
nota
Se o parâmetro do SSM Parameter Store existir na mesma Região da AWS do trabalho que está sendo iniciado, você poderá usar o ARN completo ou o nome do parâmetro. Se o parâmetro existir em uma Região diferente, o ARN completo deverá ser especificado.
Tipo: Sequência
Obrigatório: Sim, quando
secrets
for usado.
ulimits
-
Uma lista de valores
ulimits
a ser definida no contêiner. Esse parâmetro é mapeado paraUlimits
na seção Criar um contêinerda Docker Remote API e a opção --ulimit
para docker run. "ulimits": [ { "name":
string
, "softLimit":integer
, "hardLimit":integer
} ... ]Tipo: Matriz de objeto
Obrigatório: Não
name
-
O
type
doulimit
.Tipo: Sequência
Obrigatório: Sim, quando
ulimits
for usado. hardLimit
-
O limite rígido do tipo
ulimit
.Tipo: Inteiro
Obrigatório: Sim, quando
ulimits
for usado. softLimit
-
O limite flexível do tipo
ulimit
.Tipo: Inteiro
Obrigatório: Sim, quando
ulimits
for usado.
user
-
O nome de usuário a ser usado dentro do contêiner. Esse parâmetro é mapeado para
User
na seção Criar um contêinerda Docker Remote API e a opção --user
para docker run. "user": "
string
"Tipo: Sequência
Obrigatório: Não
vcpus
-
Este parâmetro está obsoleto, use
resourceRequirements
alternativamente.O número de vCPUs reservado para o contêiner.
Como exemplo de como usar
resourceRequirements
, se sua definição de trabalho contiver linhas semelhantes a esta:"containerProperties": { "vcpus":
2
}As linhas equivalentes usadas
resourceRequirements
são as seguintes."containerProperties": { "resourceRequirements": [ { "type": "VCPU", "value": "
2
" } ] }Tipo: Inteiro
Obrigatório: Sim
volumes
-
Ao registrar uma definição de trabalho, você pode especificar uma lista de volumes que são passados para o daemon do Docker em uma instância de contêiner. Os parâmetros a seguir são permitidos na propriedades de contêiner:
"volumes": [ { "name": "
string
", "host": { "sourcePath": "string
" }, "efsVolumeConfiguration": { "authorizationConfig": { "accessPointId": "string
", "iam": "string
" }, "fileSystemId": "string
", "rootDirectory": "string
", "transitEncryption": "string
", "transitEncryptionPort":number
} } ]name
-
O nome do volume. São permitidos até 255 letras (caixa alta e baixa), números, hífens e sublinhados. Este nome é referenciado no parâmetro
sourceVolume
da definição de contêinermountPoints
.Tipo: Sequência
Obrigatório: Não
host
-
O conteúdo do parâmetro
host
determina se o seu volume de dados persiste na instância de contêiner host e onde ele é armazenado. Se o parâmetrohost
estiver vazio, o daemon do Docker atribuirá um caminho de host para o volume de dados. No entanto, não há garantia de que os dados persistirão após os contêineres associados a eles deixarem de ser executados.nota
Este parâmetro não é aplicável a trabalhos executados em recursos do Fargate.
Tipo: Objeto
Obrigatório: Não
sourcePath
-
O caminho na instância de contêiner host apresentada ao contêiner. Caso esse parâmetro esteja vazio, o daemon do Docker atribui um caminho host para você.
Caso o parâmetro
host
contenha um local de arquivosourcePath
, o volume de dados persiste no local especificado na instância de contêiner host até você excluí-lo manualmente. Caso o valorsourcePath
não exista na instância de contêiner do host, o daemon do Docker o criará. Caso o local exista, o conteúdo da pasta do caminho de origem é exportado.Tipo: Sequência
Obrigatório: Não
efsVolumeConfiguration
-
Esse parâmetro é especificado quando você estiver usando um sistema de arquivos do Amazon Elastic File System para o armazenamento de tarefas. Para ter mais informações, consulte Volumes Amazon EFS.
Tipo: Objeto
Obrigatório: Não
authorizationConfig
-
Detalhes de configuração de autorização do sistema de arquivamento Amazon EFS.
Tipo: Sequência
Obrigatório: Não
accessPointId
-
O ID do ponto de acesso do Amazon EFS a ser usado. Se um ponto de acesso for especificado, o valor do diretório raiz especificado no
EFSVolumeConfiguration
deve ser omitido ou definido como./
Isso impõe o caminho definido no ponto de acesso EFS. Se um ponto de acesso for usado, a criptografia em trânsito deverá ser habilitada emEFSVolumeConfiguration
. Para mais informações, consulte Trabalhando com Pontos de Acesso Amazon EFS no Guia de Usuário Amazon Elastic File System.Tipo: Sequência
Obrigatório: Não
iam
-
Se o perfil do IAM de trabalho do AWS Batch, estabelecido em uma definição de trabalho ao montar o sistema de arquivos do Amazon EFS, deve ou não ser usado. Em caso positivo, a criptografia de trânsito deve estar habilitada em
EFSVolumeConfiguration
. Se o parâmetro for omitido, o valor padrãoDISABLED
será usado. Para ter mais informações, consulte Uso dos pontos de acesso do Amazon EFS.Tipo: Sequência
Valores válidos:
ENABLED
|DISABLED
Obrigatório: Não
fileSystemId
-
A ID do sistema de arquivamento Amazon EFS a ser usada.
Tipo: string
Obrigatório: Não
rootDirectory
-
O diretório dentro do sistema de arquivamento Amazon EFS a ser montado como diretório raiz dentro do host. Caso esse parâmetro seja omitido, a raiz do volume Amazon EFS será usada. Especificar
/
tem o mesmo efeito que omitir esse parâmetro. O tamanho máximo é de 4.096 caracteres.Importante
Se um ponto de acesso EFS for especificado em
authorizationConfig
, o parâmetro do diretório raiz deverá ser omitido ou definido para/
. Isso impõe o caminho definido no ponto de acesso do Amazon EFS.Tipo: Sequência
Obrigatório: Não
transitEncryption
-
Determina se a criptografia deve ou não ser habilitada para dados do Amazon EFS em trânsito entre o host do Amazon ECS e o servidor do Amazon EFS. A criptografia de trânsito deverá ser habilitada caso a autorização IAM Amazon EFS for usada. Se o parâmetro for omitido, o valor padrão
DISABLED
será usado. Para mais informações, consulte Criptografando Dados em Trânsito no Guia de Usuário Amazon Elastic File System.Tipo: Sequência
Valores válidos:
ENABLED
|DISABLED
Obrigatório: Não
transitEncryptionPort
-
A porta a ser usada ao enviar dados criptografados entre o host do Amazon ECS e o servidor do Amazon EFS. Caso não especifique uma porta de criptografia em trânsito, a estratégia de seleção de porta usada pelo assistente de montagem Amazon EFS será utilizada. O valor precisar estar compreendido entre 0 e 65.535. Para mais informações, consulte Auxiliar de Montagem EFS no Guia de Usuário Amazon Elastic File System.
Tipo: Inteiro
Obrigatório: Não
Amazon EKS properties
Um objeto com diversas propriedades específicas de trabalhos baseados no Amazon EKS. Isso não pode ser especificado para definições de trabalho baseados no Amazon ECS.
podProperties
-
As propriedades dos recursos do pod Kubernetes de um trabalho.
Tipo: Objeto EksPodProperties
Obrigatório: Não
containers
-
As propriedades do contêiner que é usado no pod do Amazon EKS.
Tipo: Objeto EksContainer
Obrigatório: Não
args
-
Uma matriz de argumentos para o ponto de entrada. Se isso não for especificado, o
CMD
da imagem do contêiner será usado. Isso corresponde ao membroargs
na parte do Entrypointdo Pod em Kubernetes. As referências de variáveis de ambiente são expandidas usando o ambiente do contêiner. Se a variável de ambiente referenciada não existir, a referência no comando não será alterada. Por exemplo, se a referência for a "
$(NAME1)
" e a variável de ambienteNAME1
não existir, a string de comando continuará a ser "$(NAME1)
".$$
será substituído por$
e a string resultante não será expandida. Por exemplo,$$(VAR_NAME)
é passado como$(VAR_NAME)
, independentemente da variável de ambienteVAR_NAME
existir ou não. Para obter mais informações, consulte CMDna referência do Dockerfile e Definir um comando e argumentos para um pod na Kubernetes documentação. Tipo: Matriz de strings
Obrigatório: Não
command
-
O ponto de entrada para o contêiner. Isso não é executado dentro de uma shell. Se isso não for especificado, o
ENTRYPOINT
da imagem do contêiner será usado. As referências de variáveis de ambiente são expandidas usando o ambiente do contêiner.Se a variável de ambiente referenciada não existir, a referência no comando não será alterada. Por exemplo, se a referência for a "
$(NAME1)
" e a variável de ambienteNAME1
não existir, a string de comando continuará a ser "$(NAME1)
".$$
será substituído por$
e a string resultante não será expandida. Por exemplo,$$(VAR_NAME)
será passado como$(VAR_NAME)
independentemente da variável de ambienteVAR_NAME
existir ou não. O ponto de entrada não pode ser atualizado. Para obter mais informações, consulte ENTRYPOINTna referência do Dockerfile e Definir um comando e argumentos para um contêiner e Entrypoint na Kubernetes documentação. Tipo: Matriz de strings
Obrigatório: Não
env
-
As variáveis de ambiente a serem passadas para um contêiner.
nota
Variáveis de ambiente não podem começar com "
AWS_BATCH
". Essa convenção de nomenclatura é reservada a variáveis que o AWS Batch define.Tipo: matriz de objetos EKS ContainerEnvironmentVariable
Obrigatório: Não
name
-
O nome da variável de ambiente.
Tipo: Sequência
Obrigatório: Sim
value
-
O valor da variável de ambiente.
Tipo: Sequência
Obrigatório: Não
image
-
A imagem do Docker usada para iniciar um contêiner.
Tipo: Sequência
Obrigatório: Sim
imagePullPolicy
-
A política de extração de imagens para o contêiner. Os valores compatíveis são
Always
,IfNotPresent
eNever
. Por padrão, esse parâmetro éIfNotPresent
. No entanto, se a tag:latest
for especificada, o padrão seráAlways
. Para obter mais informações, consulte Atualizando imagensna Kubernetes documentação. Tipo: Sequência
Obrigatório: Não
name
-
O nome do contêiner. Se o nome não for especificado, o nome padrão "
Default
" será usado. Cada contêiner em um pod deve ter um nome exclusivo.Tipo: Sequência
Obrigatório: Não
resources
-
O tipo e a quantidade de um recurso a serem atribuídos a um contêiner. Os recursos suportados incluem
memory
,cpu
envidia.com/gpu
. Para obter mais informações, consulte Resource de recursos para pods e contêineresna Kubernetes documentação. Tipo: Objeto EksContainerResourceRequirements
Obrigatório: Não
limits
-
O tipo e a quantidade dos recursos a reservar para o contêiner. Os valores variam de acordo com o
name
especificado. Os recursos podem ser solicitados usando olimits
ou os objetos dorequests
.- memory
-
O limite rígido de memória (em MiB) para o contêiner, usando inteiros, com um sufixo "Mi". Caso o container tente exceder a memória especificada, o contêiner será encerrado. Você deve especificar pelo menos 4 MiB de memória para um trabalho.
memory
pode ser especificada emlimits
,requests
ou em ambos. Sememory
for especificado nos dois lugares, o valor especificado emlimits
deverá ser igual ao valor especificado emrequests
.nota
Para maximizar a utilização de recursos, forneça aos trabalhos o máximo de memória possível para o tipo de instância específico que você está usando. Para saber como, consulte Gerenciamento de memória de recursos de computação.
- cpu
-
O número de CPUs reservado para o contêiner. Os valores devem ser um múltiplo par de
0.25
.cpu
pode ser especificado emlimits
,requests
ou em ambos. Secpu
for especificada em ambos, o valor especificado emlimits
deverá ser no mínimo igual ao valor especificado emrequests
. - nvidia.com/gpu
-
O número de GPUs reservado para o contêiner. Os valores devem ser um inteiro par.
memory
pode ser especificado emlimits
,requests
ou em ambos. Sememory
for especificado nos dois lugares, o valor especificado emlimits
deverá ser igual ao valor especificado emrequests
.
Tipo: Mapa de string para string
Restrições de tamanho do valor: tamanho mínimo 1. Tamanho máximo de 256.
Obrigatório: Não
requests
-
O tipo e a quantidade dos recursos a solicitar para o contêiner. Os valores variam de acordo com o
name
especificado. Os recursos podem ser solicitados usando olimits
ou os objetos dorequests
.- memory
-
O limite rígido de memória (em MiB) para o contêiner, usando inteiros, com um sufixo "Mi". Caso o container tente exceder a memória especificada, o contêiner será encerrado. Você deve especificar pelo menos 4 MiB de memória para um trabalho.
memory
pode ser especificada emlimits
,requests
ou em ambos. Sememory
for especificado em ambos, o valor especificado emlimits
deverá ser igual ao valor especificado emrequests
.nota
Se você deseja maximizar a utilização de recursos fornecendo aos trabalhos o máximo de memória possível para um determinado tipo de instância, consulte Gerenciamento de memória de recursos de computação.
- cpu
-
O número de CPUs reservado para o contêiner. Os valores devem ser um múltiplo par de
0.25
.cpu
pode ser especificado emlimits
,requests
ou em ambos. Secpu
for especificada em ambos, o valor especificado emlimits
deverá ser no mínimo igual ao valor especificado emrequests
. - nvidia.com/gpu
-
O número de GPUs reservado para o contêiner. Os valores devem ser um inteiro par.
nvidia.com/gpu
pode ser especificado emlimits
,requests
ou em ambos. Senvidia.com/gpu
for especificado em ambos, o valor especificado emlimits
deverá ser igual ao valor especificado emrequests
.
Tipo: Mapa de string para string
Restrições de tamanho do valor: tamanho mínimo 1. Tamanho máximo de 256.
Obrigatório: Não
securityContext
-
O contexto de segurança de um trabalho. Para obter mais informações, consulte Configure um contexto de segurança para um pod ou contêiner
na Kubernetes documentação. Tipo: Objeto EKSContainerSecurityContext
Obrigatório: Não
privileged
-
Quando esse parâmetro é
true
, o contêiner recebe permissões elevadas na instância de contêiner host. O nível das permissões é semelhante às permissões do usuárioroot
. O valor padrão éfalse
. Esse parâmetro é mapeado para aprivileged
política nas políticas de segurança do pod Privilegedna Kubernetes documentação. Tipo: Booliano
Obrigatório: Não
readOnlyRootFilesystem
-
Quando esse parâmetro é
true
, o contêiner recebe acesso somente para leitura ao sistema de arquivos raiz. O valor padrão éfalse
. Esse parâmetro é mapeado para aReadOnlyRootFilesystem
política nas políticas de segurança do pod de sistemas de arquivos e volumesna documentação Kubernetes. Tipo: Booliano
Obrigatório: Não
runAsGroup
-
Quando esse parâmetro é especificado, o contêiner é executado como o ID de grupo especificado (
gid
). Se esse parâmetro não for especificado, o padrão será o grupo que for especificado nos metadados da imagem. Esse parâmetro mapeia paraRunAsGroup
eMustRunAs
política nas políticas de segurança do pod de grupos e usuáriosna Kubernetes documentação. Tipo: Long
Obrigatório: Não
runAsNonRoot
-
Quando esse parâmetro é especificado, o contêiner é executado como um usuário com um valor de
uid
diferente de 0. Se esse parâmetro não for especificado, essa regra será imposta. Esse parâmetro mapeia paraRunAsUser
eMustRunAsNonRoot
política nas políticas de segurança do pod de grupos e usuáriosna Kubernetes documentação. Tipo: Long
Obrigatório: Não
runAsUser
-
Quando esse parâmetro é especificado, o contêiner é executado como o ID de usuário especificado (
uid
). Se esse parâmetro não for especificado, o padrão será o usuário que for especificado nos metadados da imagem. Esse parâmetro mapeia paraRunAsUser
eMustRanAs
política nas políticas de segurança do pod de grupos e usuáriosna Kubernetes documentação. Tipo: Long
Obrigatório: Não
volumeMounts
-
O volume é montado para um contêiner para um trabalho do Amazon EKS. Para obter mais informações sobre volumes e montagens de volumes em Kubernetes, consulte Volumes
na Kubernetes documentação. Tipo: Matriz de objetos EKSContainerVolumeMount
Obrigatório: Não
mountPath
-
O caminho no contêiner em que o volume está montado.
Tipo: Sequência
Obrigatório: Não
name
-
O nome do volume a ser montado. Isso deve corresponder ao nome de um dos volumes no pod.
Tipo: Sequência
Obrigatório: Não
readOnly
-
Caso o valor seja
true
, o contêiner tem acesso somente leitura ao volume. Caso contrário, o contêiner pode gravar no volume. O valor padrão éfalse
.Tipo: booliano
Obrigatório: Não
dnsPolicy
-
A política de DNS para o pod. O valor padrão é
ClusterFirst
. Se o parâmetrohostNetwork
não for especificado, o padrão seráClusterFirstWithHostNet
.ClusterFirst
indica que qualquer consulta ao DNS que não corresponda ao sufixo de domínio de cluster configurado será encaminhada para o servidor de nomes upstream herdado do nó. Se nenhum valor foi especificado paradnsPolicy
na operação da API RegisterJobDefinition, nenhum valor será retornado paradnsPolicy
pelas operações da API DescribeJobDefinitions ou DescribeJobs. A configuração de especificação do pod conteráClusterFirst
ouClusterFirstWithHostNet
, dependendo do valor do parâmetrohostNetwork
. Para obter mais informações, consulte política Pod's DNSna Kubernetes documentação. Valores válidos:
Default
|ClusterFirst
|ClusterFirstWithHostNet
Tipo: Sequência
Obrigatório: Não
hostNetwork
-
Indica se o pod usa o endereço IP da rede dos hosts. O valor padrão é
true
. Definir essa opção comofalse
ativa o modelo de rede de pods Kubernetes. A maioria das cargas AWS Batch de trabalho é somente de saída e não requer a sobrecarga de alocação de IP para cada pod para conexões de entrada. Para obter mais informações, consulte Espaços de nomes de Hoste rede de Pods na Kubernetes documentação. Tipo: Booliano
Obrigatório: Não
serviceAccountName
-
O nome da conta de serviço que é usada para executar o pod. Para obter mais informações, consulte Kubernetes contas de serviço e Configure uma conta de serviço Kubernetes para assumir um perfil do IAM no Amazon EKS User Guide e Configure contas de serviço para pods
na Kubernetes documentação. Tipo: Sequência
Obrigatório: Não
volumes
-
Especifica os volumes para uma definição de trabalho que usa recursos do Amazon EKS.
Tipo: Matriz de objetos EksVolume
Obrigatório: Não
- emptyDir
-
Especifica a configuração de um volume Kubernetes
emptyDir
. Um volumeemptyDir
é criado pela primeira vez quando um pod é atribuído a um nó. Ele existirá enquanto o pod estiver sendo executado nesse nó. O volumeemptyDir
está inicialmente vazio. Todos os contêineres no pod podem ler e gravar os arquivos no volumeemptyDir
. No entanto, o volumeemptyDir
pode ser montado no mesmo caminho ou em caminhos diferentes em cada contêiner. Quando um pod é removido de um nó por qualquer motivo, os dados noemptyDir
são excluídos permanentemente. Para obter mais informações, consulte emptyDirna Kubernetes documentação. Tipo: Objeto ekSemptyDir
Obrigatório: Não
- medium
-
A mídia para armazenar o volume. O valor padrão é uma string vazia, que usa o armazenamento do nó.
- ""
-
(Padrão) Usar o armazenamento em disco do nó.
- "Memory" (Memória)
-
Usar o volume
tmpfs
que tem o suporte da RAM do nó. O conteúdo do volume é perdido quando o nó é reinicializado e qualquer armazenamento no volume é contabilizado no limite de memória do contêiner.
Tipo: Sequência
Obrigatório: Não
- sizeLimit
-
O tamanho máximo do volume. Por padrão, não há tamanho máximo definido.
Tipo: Sequência
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 256.
Obrigatório: Não
- hostPath
-
Especifica a configuração de um volume Kubernetes
hostPath
. Um volumehostPath
monta um arquivo ou diretório existente do sistema de arquivos do nó host no pod. Para obter mais informações, consulte hostPathna Kubernetes documentação. Tipo: Objeto EKSHostPath
Obrigatório: Não
- path
-
O caminho do arquivo ou diretório no host a ser montado em contêineres no pod.
Tipo: Sequência
Obrigatório: Não
- name
-
O nome do volume. O nome deve ser permitido como um nome de subdomínio do DNS. Para obter mais informações, consulte Nomes de subdomínios DNS
na Kubernetes documentação. Tipo: Sequência
Obrigatório: Sim
- secret
-
Especifica a configuração de um volume Kubernetes
secret
. Para obter mais informações, consulte secretna Kubernetes documentação. Tipo: Objeto EksSecret
Obrigatório: Não
- optional
-
Especifica se o segredo ou as chaves do segredo devem ser definidas.
Tipo: Booliano
Obrigatório: Não
- secretName
-
O nome do segredo. O nome deve ser permitido como um nome de subdomínio do DNS. Para obter mais informações, consulte Nomes de subdomínios DNS
na Kubernetes documentação. Tipo: Sequência
Obrigatório: Sim
Funcionalidades da plataforma
platformCapabilities
-
As funcionalidades da plataforma necessárias pela definição do cargo. Se nenhum valor for especificado, o padrão será
EC2
. Para trabalhos executados em recursos do Fargate,FARGATE
é especificado.nota
Se o trabalho for executado em recursos do Amazon EKS, você não deve especificar
platformCapabilities
.Tipo: Sequência
Valores válidos:
EC2
|FARGATE
Obrigatório: Não
Propagar tags
propagateTags
-
Especifica se as tags devem ser propagadas a partir do trabalho ou da definição de trabalho para a tarefa correspondente do Amazon ECS. Se nenhum valor for especificado, as tags não serão propagadas. As tags só podem ser propagadas para as tarefas quando as tarefas são criadas. Para tags com o mesmo nome, as tags de trabalho têm prioridade sobre as tags de definições de trabalho. Se o número total de tags combinadas do trabalho e da definição do trabalho for superior a 50, o trabalho será movido para o estado
FAILED
.nota
Se o trabalho for executado em recursos do Amazon EKS, você não deve especificar
propagateTags
.Tipo: Booliano
Obrigatório: Não
Propriedades de nó
nodeProperties
-
Ao registrar uma definição de trabalho paralela de vários nós, você deve especificar uma lista de propriedades de nós. Essas propriedades do nó definem o número de nós a serem usados em seu trabalho, o índice do nó principal e os diferentes intervalos de nós a serem usados. Se o trabalho for executado em recursos do Fargate, não especifique
nodeProperties
. Em seu lugar, usecontainerProperties
. As seguintes propriedades de nó são permitidas em uma definição de trabalho. Para ter mais informações, consulte Trabalhos em paralelo de vários nós.nota
Se o trabalho for executado em recursos do Amazon EKS, você não deve especificar
nodeProperties
.Tipo: Objeto NodeProperties
Obrigatório: Não
mainNode
-
Especifica o índice de nó para o nó principal de um trabalho em paralelo de vários nós. Esse valor de índice do nó deve ser menor que o número de nós.
Tipo: Inteiro
Obrigatório: Sim
numNodes
-
O número de nós que são associados a um trabalho em paralelo de vários nós.
Tipo: Inteiro
Obrigatório: Sim
nodeRangeProperties
-
Uma lista de intervalos de nós e suas propriedades que são associadas a uma trabalho em paralelo de vários nós.
nota
Um grupo de nós é um grupo idêntico de nós de trabalhos que compartilham as mesmas propriedades do contêiner. Você pode usar o AWS Batch para especificar até cinco grupos de nós distintos para cada trabalho.
Tipo: Matriz de objetos NodeRangeProperty
Obrigatório: Sim
targetNodes
-
O intervalo de nós, usando valores de índice de nó. Um intervalo de
0:3
indica nós com valores de índice de0
a3
. Se o valor do intervalo inicial for omitido (:n
), então 0 será usado para iniciar o intervalo. Se o valor do intervalo final for omitido (n:
), o índice de nó mais alto possível será usado para finalizar o intervalo. Seus intervalos de nós acumulativos devem considerar todos os nós (0:n
). Você pode aninhar intervalos de nós (por exemplo,0:10
e4:5
). Nesse caso, as propriedades do intervalo4:5
substituem as propriedades de0:10
.Tipo: Sequência
Obrigatório: Não
container
-
Os detalhes do contêiner para o intervalo de nós. Para ter mais informações, consulte Propriedades do contêiner.
Tipo: objeto ContainerProperties
Obrigatório: Não
Estratégia de repetição
retryStrategy
-
Ao registrar uma definição de trabalho, você pode opcionalmente especificar uma estratégia de nova tentativa a ser usada para trabalhos com falha que são enviados com essa definição de trabalho. Qualquer estratégia de repetição especificada durante uma operação SubmitJob substitui a estratégia de repetição definida aqui. Por padrão, cada trabalho é tentado uma vez. Se você especificar mais de uma tentativa, o trabalho será repetido se falhar. Exemplos de uma tentativa de falha incluem o trabalho retornar um código de saída diferente de zero ou a instância de contêiner ser encerrada. Para ter mais informações, consulte Repetições de trabalho automatizadas.
Tipo: Objeto RetryStrategy
Obrigatório: Não
attempts
-
O número de vezes para mover um trabalho para o status
RUNNABLE
. Você pode especificar entre 1 e 10 tentativas. Seattempts
for maior que um, o trabalho será repetido essa quantidade de vezes se falhar, até ser movido paraRUNNABLE
."attempts":
integer
Tipo: número inteiro
Obrigatório: Não
evaluateOnExit
-
Matriz de até 5 objetos que especificam condições sob as quais o trabalho deve ser repetido ou considerado com falha. Se esse parâmetro for especificado, o parâmetro
attempts
também deverá ser especificado. SeevaluateOnExit
for especificado, mas nenhuma das entradas corresponder, o trabalho será repetido."evaluateOnExit": [ { "action": "
string
", "onExitCode": "string
", "onReason": "string
", "onStatusReason": "string
" } ]Tipo: Matriz de objetos EvaluateOnExit
Obrigatório: Não
action
-
Especifica a ação a ser executada se todas as condições especificadas (
onStatusReason
,onReason
, eonExitCode
) forem atendidas. Os valores não diferenciam maiúsculas e minúsculasTipo: Sequência
Obrigatório: Sim
Valores válidos:
RETRY
|EXIT
onExitCode
-
Contém um padrão glob para corresponder à representação decimal do
ExitCode
retornado para um trabalho. O padrão pode ter até 512 caracteres de comprimento. Ele pode conter somente números. Ele não pode conter letras ou caracteres especiais. Ele pode, opcionalmente, terminar com um asterisco (*) para que apenas o início da string precise ser uma correspondência exata.Tipo: Sequência
Obrigatório: Não
onReason
-
Contém um padrão glob para corresponder ao
Reason
retornado para um trabalho. O padrão pode ter até 512 caracteres de comprimento. Ele pode conter letras, números, pontos (.), dois pontos (:) e espaço em branco (incluindo espaços ou tabulações). Ele pode, opcionalmente, terminar com um asterisco (*) para que apenas o início da string precise ser uma correspondência exata.Tipo: Sequência
Obrigatório: Não
onStatusReason
-
Contém um padrão glob para corresponder ao
StatusReason
retornado para um trabalho. O padrão pode ter até 512 caracteres de comprimento. Ele pode conter letras, números, pontos (.), dois pontos (:) e espaço em branco (incluindo espaços ou tabulações). Ele pode, opcionalmente, terminar com um asterisco (*) para que apenas o início da string precise ser uma correspondência exata.Tipo: Sequência
Obrigatório: Não
Prioridade de agendamento
schedulingPriority
-
A prioridade de agendamento para trabalhos enviados com essa definição de trabalho. Isso afeta apenas os trabalhos nas filas de trabalhos com uma política de compartilhamento justo. Trabalhos com prioridade de agendamento mais alta são agendados antes de trabalhos com prioridade de agendamento mais baixa.
O valor mínimo compatível é 0 e o valor máximo compatível é 9999.
Tipo: Inteiro
Obrigatório: Não
Tags
tags
-
Etiquetas de pares de valores-chave a serem associadas à definição do trabalho. Para ter mais informações, consulte Marcar com tag os recursos do AWS Batch.
Tipo: Mapa de string para string
Obrigatório: Não
Timeout (Tempo limite)
timeout
-
Você pode configurar uma duração de tempo limite para os seus trabalhos para que, caso uma execução de trabalho seja maior, AWS Batch possa encerrar o trabalho. Para ter mais informações, consulte Tempos limite de trabalho. Se um trabalho for encerrado devido a um tempo limite, ele não será tentado novamente. Qualquer configuração de tempo limite especificada durante uma operação SubmitJob substituirá a configuração de tempo limite definida aqui. Para ter mais informações, consulte Tempos limite de trabalho.
Tipo: Objeto JobTimeout
Obrigatório: Não
attemptDurationSeconds
-
O tempo de duração em segundos (medido a partir do registro de data e hora
startedAt
da tentativa de trabalho) após o encerramento de trabalhos inacabados AWS Batch. O valor mínimo do tempo limite é 60 segundos.Em trabalhos de matriz, o tempo limite se aplica aos trabalhos secundários, não ao trabalho de matriz principal.
Para trabalhos paralelos de vários nós (MNP), o tempo limite se aplica ao trabalho inteiro, não aos nós individuais.
Tipo: Inteiro
Obrigatório: Não