

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Trabajos de Amazon EKS


Un trabajo es la unidad de trabajo más pequeña de AWS Batch. Un AWS Batch trabajo en Amazon EKS consiste en one-to-one mapear un Kubernetes pod. Una definición de AWS Batch trabajo es una plantilla para un AWS Batch trabajo. Cuando envía un AWS Batch trabajo, hace referencia a una definición de trabajo, selecciona una cola de trabajos y proporciona un nombre para el trabajo. En la definición de trabajo de un AWS Batch trabajo en Amazon EKS, el parámetro [eksProperties](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksProperties.html) define el conjunto de parámetros que admite un trabajo en AWS Batch Amazon EKS. En una [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitJob.html)solicitud, el [eksPropertiesOverride](https://docs.aws.amazon.com/batch/latest/APIReference/API_EksPropertiesOverride.html)parámetro permite anular algunos parámetros comunes. De esta forma, puede utilizar plantillas de definiciones de trabajos para varios trabajos. Cuando se envía un trabajo a su clúster de Amazon EKS, lo AWS Batch transforma en un `podspec` (`Kind: Pod`). `podspec`Utiliza algunos AWS Batch parámetros adicionales para garantizar que los trabajos se escalen y programen correctamente. AWS Batch combina etiquetas e imitaciones para garantizar que los trabajos se ejecuten únicamente en los nodos AWS Batch gestionados y que otros módulos no se ejecuten en esos nodos.

**importante**  
Si el `hostNetwork` parámetro no está establecido de forma explícita en una definición de trabajo de Amazon EKS, el modo de red del pod AWS Batch pasa por defecto al modo host. Más específicamente, se aplican los siguientes ajustes: `hostNetwork=true` y `dnsPolicy=ClusterFirstWithHostNet`.
AWS Batch limpia los módulos de trabajos poco después de que un pod complete su trabajo. Para ver los registros de las aplicaciones del pod, configure un servicio de registro para su clúster. Para obtener más información, consulte [Utilice CloudWatch los registros para supervisar AWS Batch los trabajos de Amazon EKS](batch-eks-cloudwatch-logs.md).

**Topics**
+ [

# Tutorial: asignación de un trabajo en ejecución a un pod y un nodo
](eks-jobs-map-running-job.md)
+ [

# Tutorial: reasignación de un pod en ejecución a su función
](eks-jobs-map-running-pod-to-job.md)

# Tutorial: asignación de un trabajo en ejecución a un pod y un nodo


Los `podProperties` de un trabajo en ejecución tienen los parámetros `podName` y `nodeName` establecidos para el intento de trabajo actual. Utilice la operación [DescribeJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobs.html)de la API para ver estos parámetros.

A continuación, se muestra un ejemplo del resultado.

```
$ 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"
    }
   }
  }
 ]
}
```

En el caso de un trabajo con los reintentos habilitados, el `podName` y `nodeName` de cada intento completado aparece en el parámetro de `eksAttempts` lista de la operación de [DescribeJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeJobs.html)API. El `podName` y el `nodeName` del intento en ejecución actual se encuentra en el objeto `podProperties`.

# Tutorial: reasignación de un pod en ejecución a su función


Un pod tiene etiquetas que indican la dirección `jobId` y el entorno `uuid` de cómputo al que pertenece. AWS Batch inyecta variables de entorno para que el tiempo de ejecución del trabajo pueda hacer referencia a la información del trabajo. Para obtener más información, consulte [AWS Batch variables de entorno laboral](job_env_vars.md). Puede ver esta información al ejecutar el siguiente comando. El resultado es el siguiente.

```
$ 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

...
```

**Características compatibles con AWS Batch Amazon EKS Jobs**

Estas son las características AWS Batch específicas que también son comunes a los Kubernetes trabajos que se ejecutan en Amazon EKS:
+ [Dependencias de trabajos](job_dependencies.md)
+ [Trabajos de matrices](array_jobs.md)
+ [Tiempos de espera de trabajo](job_timeouts.md)
+ [Reintentos automáticos de trabajo](job_retries.md)
+ [Uso de una programación de reparto justo para ayudar a programar los trabajos](fair-share-scheduling.md)

**Kubernetes y `Secrets``ServiceAccounts`**  
AWS Batch admite referencias Kubernetes `Secrets` y. `ServiceAccounts` Puede configurar los pods para utilizar los roles de IAM de Amazon EKS para las cuentas de servicio. Para obtener más información, consulte [Configurar los pods para usar una cuenta de servicio de Kubernetes](https://docs.aws.amazon.com/eks/latest/userguide/pod-configuration.html) en la [https://docs.aws.amazon.com/eks/latest/userguide/](https://docs.aws.amazon.com/eks/latest/userguide/).

**Documentos relacionados**
+ [Consideraciones sobre memoria y vCPU para AWS Batch en Amazon EKS](memory-cpu-batch-eks.md)
+ [Ejecución de trabajos de GPU](gpu-jobs.md)
+ [Trabajos bloqueados en estado `RUNNABLE`](job_stuck_in_runnable.md)