

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á.

# Trabalhos do Amazon EKS
<a name="eks-jobs"></a>

Um emprego é a menor unidade de trabalho em AWS Batch. Um AWS Batch trabalho no Amazon EKS tem um one-to-one mapeamento para um Kubernetes pod. Uma definição de AWS Batch trabalho é um modelo para um AWS Batch trabalho. Ao enviar um AWS Batch trabalho, você faz referência a uma definição de trabalho, direciona uma fila de trabalhos e fornece um nome para um trabalho. Na definição de um AWS Batch trabalho no Amazon EKS, o parâmetro [EKSProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksProperties.html) define o conjunto de parâmetros que um trabalho no AWS Batch Amazon EKS suporta. Em uma [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)solicitação, o [eksPropertiesOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksPropertiesOverride.html)parâmetro permite a substituição de alguns parâmetros comuns. Dessa forma, você pode usar modelos de definições de trabalhos para vários trabalhos. Quando um trabalho é enviado para seu cluster Amazon EKS, AWS Batch transforma o trabalho em um `podspec` (). `Kind: Pod` O `podspec` usa alguns AWS Batch parâmetros adicionais para garantir que os trabalhos sejam escalados e programados corretamente. AWS Batch combina rótulos e contaminações para garantir que os trabalhos sejam executados somente em nós AWS Batch gerenciados e que outros pods não sejam executados nesses nós.

**Importante**  
Se o `hostNetwork` parâmetro não for definido explicitamente em uma definição de trabalho do Amazon EKS, o modo de rede do pod assumirá como AWS Batch padrão o modo host. Mais especificamente, as seguintes configurações serão aplicadas: `hostNetwork=true` e `dnsPolicy=ClusterFirstWithHostNet`.
AWS Batch limpa os pods de trabalho logo após um pod concluir seu trabalho. Para ver os logs do aplicativo do pod, configure um serviço de log para seu cluster. Para obter mais informações, consulte [Use CloudWatch registros para monitorar trabalhos AWS Batch do Amazon EKS](batch-eks-cloudwatch-logs.md).

**Topics**
+ [Tutorial: mapear um trabalho em execução para um pod e um nó](eks-jobs-map-running-job.md)
+ [Tutorial: mapear um pod em execução de volta ao seu trabalho](eks-jobs-map-running-pod-to-job.md)

# Tutorial: mapear um trabalho em execução para um pod e um nó
<a name="eks-jobs-map-running-job"></a>

As `podProperties` de um trabalho em execução têm parâmetros `podName` e `nodeName` definidos para a tentativa de trabalho atual. Use a operação [DescribeJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobs.html)da API para visualizar esses parâmetros.

O seguinte é um exemplo de saída.

```
$ aws batch describe-jobs --job 2d044787-c663-4ce6-a6fe-f2baf7e51b04
{
 "jobs": [
  {
   "status": "RUNNING",
   "jobArn": "arn:aws:batch:us-east-1:123456789012:job/2d044787-c663-4ce6-a6fe-f2baf7e51b04",
   "jobDefinition": "arn:aws:batch:us-east-1:123456789012:job-definition/MyJobOnEks_SleepWithRequestsOnly:1",
   "jobQueue": "arn:aws:batch:us-east-1:123456789012:job-queue/My-Eks-JQ1",
   "jobId": "2d044787-c663-4ce6-a6fe-f2baf7e51b04",
   "eksProperties": {
    "podProperties": {
     "nodeName": "ip-192-168-55-175.ec2.internal",
     "containers": [
      {
       "image": "public.ecr.aws/amazonlinux/amazonlinux:2",
       "resources": {
        "requests": {
         "cpu": "1",
         "memory": "1024Mi"
        }
       }
      }
     ],
     "podName": "aws-batch.b0aca953-ba8f-3791-83e2-ed13af39428c"
    }
   }
  }
 ]
}
```

Para um trabalho com novas tentativas ativadas, o `podName` final `nodeName` de cada tentativa concluída está no parâmetro de `eksAttempts` lista da operação da [DescribeJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobs.html)API. O `podName` e `nodeName` da tentativa de execução atual estarão no objeto `podProperties`.

# Tutorial: mapear um pod em execução de volta ao seu trabalho
<a name="eks-jobs-map-running-pod-to-job"></a>

Um pod tem rótulos que indicam `jobId` a extremidade `uuid` do ambiente computacional ao qual ele pertence. AWS Batch injeta variáveis de ambiente para que o tempo de execução do trabalho possa referenciar as informações do trabalho. Para obter mais informações, consulte [AWS Batch variáveis do ambiente de trabalho](job_env_vars.md). Você pode visualizar isso executando o seguinte comando. A saída é a seguinte:

```
$ kubectl describe pod aws-batch.14638eb9-d218-372d-ba5c-1c9ab9c7f2a1 -n my-aws-batch-namespace
Name:         aws-batch.14638eb9-d218-372d-ba5c-1c9ab9c7f2a1
Namespace:    my-aws-batch-namespace
Priority:     0
Node:         ip-192-168-45-88.ec2.internal/192.168.45.88
Start Time:   Wed, 26 Oct 2022 00:30:48 +0000
Labels:       batch.amazonaws.com/compute-environment-uuid=5c19160b-d450-31c9-8454-86cf5b30548f
              batch.amazonaws.com/job-id=f980f2cf-6309-4c77-a2b2-d83fbba0e9f0
              batch.amazonaws.com/node-uid=a4be5c1d-9881-4524-b967-587789094647
...
Status:       Running
IP:           192.168.45.88
IPs:
  IP:  192.168.45.88
Containers:
  default:
    Image:         public.ecr.aws/amazonlinux/amazonlinux:2
    ...
    Environment:
      AWS_BATCH_JOB_KUBERNETES_NODE_UID:  a4be5c1d-9881-4524-b967-587789094647
      AWS_BATCH_JOB_ID:                   f980f2cf-6309-4c77-a2b2-d83fbba0e9f0
      AWS_BATCH_JQ_NAME:                  My-Eks-JQ1
      AWS_BATCH_JOB_ATTEMPT:              1
      AWS_BATCH_CE_NAME:                  My-Eks-CE1

...
```

**Recursos que o AWS Batch Amazon EKS Jobs oferece suporte**

Esses são os recursos AWS Batch específicos que também são comuns aos Kubernetes trabalhos executados no Amazon EKS:
+ [Dependências do trabalho](job_dependencies.md)
+ [Trabalhos de matriz](array_jobs.md)
+ [Tempos limite de trabalho](job_timeouts.md)
+ [Repetições de trabalho automatizadas](job_retries.md)
+ [Usar o agendamento de compartilhamento justo para ajudar a agendar trabalhos](fair-share-scheduling.md)

**`Secrets` e `ServiceAccounts` da Kubernetes**  
AWS Batch suporta referências Kubernetes `Secrets` e. `ServiceAccounts` Você pode configurar pods para usar perfis do IAM para contas de serviço do Amazon EKS. Para obter mais informações, consulte [Como Configurar Pods para Utilizar uma Conta de Serviço Kubernetes](https://docs.aws.amazon.com/eks/latest/userguide/pod-configuration.html) no [https://docs.aws.amazon.com/eks/latest/userguide/](https://docs.aws.amazon.com/eks/latest/userguide/).

**Documentação relacionada**
+ [Considerações sobre memória e vCPU para AWS Batch no Amazon EKS](memory-cpu-batch-eks.md)
+ [Executar trabalhos de GPU](gpu-jobs.md)
+ [Trabalhos presos no status `RUNNABLE`](job_stuck_in_runnable.md)