

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan klasifikasi pengirim pekerjaan
<a name="emr-eks-job-submitter"></a>

## Ikhtisar
<a name="emr-eks-job-submitter-overview"></a>

EMR Amazon `StartJobRun` berdasarkan permintaan EKS membuat pod *pengirim pekerjaan* (juga dikenal sebagai pod *job-runner*) untuk menelurkan driver Spark. Anda dapat menggunakan `emr-job-submitter` klasifikasi untuk mengonfigurasi pemilih node, menambahkan toleransi, menyesuaikan logging, dan membuat modifikasi lain pada pod pengirim pekerjaan.

Pengaturan berikut tersedia di bawah `emr-job-submitter` klasifikasi:

** `jobsubmitter.node.selector.[selectorKey]` **  
Menambahkan ke pemilih node dari pod pengirim pekerjaan, dengan kunci *selectorKey* dan nilai sebagai nilai konfigurasi. Misalnya, Anda dapat mengatur ` jobsubmitter.node.selector.identifier` ke `myIdentifier` dan pod pengirim pekerjaan akan memiliki pemilih node dengan kunci `identifier` dan nilai. `myIdentifier` Ini dapat digunakan untuk menentukan node mana pod pengirim pekerjaan dapat ditempatkan. Untuk menambahkan beberapa kunci pemilih node, atur beberapa konfigurasi dengan awalan ini.

** `jobsubmitter.label.[labelKey]` **  
Menambahkan label pod pengirim pekerjaan, dengan kunci *labelKey* dan nilai sebagai nilai konfigurasi. Untuk menambahkan beberapa label, atur beberapa konfigurasi dengan awalan ini.

** `jobsubmitter.annotation.[annotationKey]` **  
Menambahkan anotasi pod pengirim pekerjaan, dengan kunci *annotationKey* dan nilai sebagai nilai konfigurasi. Untuk menambahkan beberapa anotasi, atur beberapa konfigurasi dengan awalan ini.

** `jobsubmitter.node.toleration.[tolerationKey]` **  
Menambahkan [toleransi ke pod pengirim](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) pekerjaan. Secara default tidak ada toleransi yang ditambahkan ke pod. Kunci toleransi akan menjadi *tolerationKey* dan nilai toleransi akan menjadi nilai konfigurasi. Jika nilai konfigurasi diatur ke string yang tidak kosong, operator akan menjadi`Equals`. Jika nilai konfigurasi diatur ke`""`, maka operator akan`Exists`.

** `jobsubmitter.node.toleration.[tolerationKey].[effect]` **  
Menambahkan efek toleransi ke awalan*tolerationKey*. Bidang ini diperlukan saat menambahkan toleransi. Nilai yang diizinkan untuk bidang efek adalah` NoExecute`,`NoSchedule`, dan`PreferNoSchedule`.

** `jobsubmitter.node.toleration.[tolerationKey].[tolerationSeconds]` **  
Menambahkan TolerationSeconds ke awalan. *tolerationKey* Bidang opsional. Hanya berlaku ketika efeknya`NoExecute`.

** `jobsubmitter.scheduler.name` **  
Menetapkan schedulerName kustom untuk pod pengirim pekerjaan.

** `jobsubmitter.logging` **  
Mengaktifkan atau menonaktifkan logging pada pod pengirim pekerjaan. Ketika ini disetel ke ` DISABLED` container logging akan dihapus dari pod pengirim pekerjaan, yang akan menonaktifkan setiap logging untuk pod ini yang ditentukan dalam`monitoringConfiguration`, seperti `s3MonitoringConfiguration` or. `cloudWatchMonitoringConfiguration` Ketika pengaturan ini tidak disetel atau disetel ke nilai lain, logging pada pod pengirim pekerjaan diaktifkan.

** `jobsubmitter.logging.image` **  
Menetapkan gambar kustom yang akan digunakan untuk penampung logging pada pod pengirim pekerjaan.

** `jobsubmitter.logging.request.cores` **  
Menetapkan nilai kustom untuk jumlah CPUs, dalam unit CPU, untuk penampung logging pada pod pengirim pekerjaan. Secara default, ini diatur ke **100m**.

** `jobsubmitter.logging.request.memory` **  
Menetapkan nilai kustom untuk jumlah memori, dalam byte, untuk penampung logging pada pod pengirim pekerjaan. Secara default, ini diatur ke **200Mi**. Mebibyte adalah satuan ukuran yang mirip dengan megabyte.

** `jobsubmitter.container.image` **  
Menetapkan image kustom untuk container pod job submitter. `job-runner`

** `jobsubmitter.container.image.pullPolicy` **  
Menetapkan [imagePullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy)container untuk job submitter pod.

Kami merekomendasikan untuk menempatkan pod pengirim pekerjaan pada Instans Sesuai Permintaan. Menempatkan pod pengirim pekerjaan pada instans Spot dapat mengakibatkan kegagalan pekerjaan jika instance tempat pod pengirim pekerjaan berjalan tunduk pada interupsi Instance Spot. Kamu juga bisa [menempatkan job submitter pod dalam Availability Zone tunggal atau menggunakan label Kubernetes yang diterapkan](#emr-eks-job-submitter-ex-ec2) pada node.

## Contoh klasifikasi pengirim pekerjaan
<a name="emr-eks-job-submitter-examples"></a>

**Topics**
+ [`StartJobRun`permintaan dengan penempatan node On-Demand untuk pod pengirim pekerjaan](#emr-eks-job-submitter-ex-od)
+ [`StartJobRun`request dengan penempatan node single-AZ dan penempatan tipe instans Amazon EC2 untuk pod pengirim pekerjaan](#emr-eks-job-submitter-ex-ec2)
+ [`StartJobRun`permintaan dengan label, anotasi, dan penjadwal khusus untuk pod pengirim pekerjaan](#emr-eks-job-submitter-label-annotation-scheduler)
+ [`StartJobRun`permintaan dengan toleransi yang diterapkan pada pod pengirim pekerjaan dengan kunci`dedicated`, nilai, efek `graviton_machines``NoExecute`, dan 60 detik `tolerationSeconds`](#emr-eks-job-submitter-tolerations)
+ [`StartJobRun`permintaan dengan logging dinonaktifkan untuk pod pengirim pekerjaan](#emr-eks-job-submitter-logging-disabled)
+ [`StartJobRun`permintaan dengan image container logging kustom, CPU, dan memori untuk pod pengirim pekerjaan](#emr-eks-job-submitter-custom)
+ [`StartJobRun`permintaan dengan gambar kontainer pengirim pekerjaan khusus dan kebijakan tarik](#emr-eks-job-submitter-custom-container)

### `StartJobRun`permintaan dengan penempatan node On-Demand untuk pod pengirim pekerjaan
<a name="emr-eks-job-submitter-ex-od"></a>

```
cat >spark-python-in-s3-nodeselector-job-submitter.json << EOF
{
  "name": "spark-python-in-s3-nodeselector", 
  "virtualClusterId": "virtual-cluster-id", 
  "executionRoleArn": "execution-role-arn", 
  "releaseLabel": "emr-6.11.0-latest", 
  "jobDriver": {
    "sparkSubmitJobDriver": {
      "entryPoint": "s3://S3-prefix/trip-count.py", 
      "sparkSubmitParameters": "--conf spark.driver.cores=5  --conf spark.executor.memory=20G --conf spark.driver.memory=15G --conf spark.executor.cores=6"
    }
  }, 
  "configurationOverrides": {
    "applicationConfiguration": [
      {
        "classification": "spark-defaults", 
        "properties": {
          "spark.dynamicAllocation.enabled":"false"
        }
      },
      {
        "classification": "emr-job-submitter",
        "properties": {
          "jobsubmitter.node.selector.eks.amazonaws.com/capacityType": "ON_DEMAND"
        }
      }
    ], 
    "monitoringConfiguration": {
      "cloudWatchMonitoringConfiguration": {
        "logGroupName": "/emr-containers/jobs", 
        "logStreamNamePrefix": "demo"
      }, 
      "s3MonitoringConfiguration": {
        "logUri": "s3://joblogs"
      }
    }
  }
}
EOF
aws emr-containers start-job-run --cli-input-json file:///spark-python-in-s3-nodeselector-job-submitter.json
```

### `StartJobRun`request dengan penempatan node single-AZ dan penempatan tipe instans Amazon EC2 untuk pod pengirim pekerjaan
<a name="emr-eks-job-submitter-ex-ec2"></a>

```
"configurationOverrides": {
  "applicationConfiguration": [
    {
      "classification": "emr-job-submitter",
      "properties": {
        "jobsubmitter.node.selector.topology.kubernetes.io/zone": "Availability Zone",
        "jobsubmitter.node.selector.node.kubernetes.io/instance-type":"m5.4xlarge"
      }
    }
  ]
}
```

### `StartJobRun`permintaan dengan label, anotasi, dan penjadwal khusus untuk pod pengirim pekerjaan
<a name="emr-eks-job-submitter-label-annotation-scheduler"></a>

```
"configurationOverrides": { 
  "applicationConfiguration": [ 
    {
      "classification": "emr-job-submitter", 
      "properties": {
        "jobsubmitter.label.label1": "value1",
        "jobsubmitter.label.label2": "value2",
        "jobsubmitter.annotation.ann1": "value1",
        "jobsubmitter.annotation.ann2": "value2",
        "jobsubmitter.scheduler.name": "custom-scheduler"
      }
    }
  ]
}
```

### `StartJobRun`permintaan dengan toleransi yang diterapkan pada pod pengirim pekerjaan dengan kunci`dedicated`, nilai, efek `graviton_machines``NoExecute`, dan 60 detik `tolerationSeconds`
<a name="emr-eks-job-submitter-tolerations"></a>

```
"configurationOverrides": {
  "applicationConfiguration": [
    {
      "classification": "emr-job-submitter",
      "properties": {
        "jobsubmitter.node.toleration.dedicated":"graviton_machines",
        "jobsubmitter.node.toleration.dedicated.effect":"NoExecute",
        "jobsubmitter.node.toleration.dedicated.tolerationSeconds":"60"
      }
    }
  ]
}
```

### `StartJobRun`permintaan dengan logging dinonaktifkan untuk pod pengirim pekerjaan
<a name="emr-eks-job-submitter-logging-disabled"></a>

```
"configurationOverrides": {
  "applicationConfiguration": [
    {
      "classification": "emr-job-submitter",
      "properties": {
        "jobsubmitter.logging": "DISABLED"
      }
    }
  ], 
  "monitoringConfiguration": {
    "cloudWatchMonitoringConfiguration": {
      "logGroupName": "/emr-containers/jobs", 
      "logStreamNamePrefix": "demo"
    }, 
    "s3MonitoringConfiguration": {
      "logUri": "s3://joblogs"
    }
  }
}
```

### `StartJobRun`permintaan dengan image container logging kustom, CPU, dan memori untuk pod pengirim pekerjaan
<a name="emr-eks-job-submitter-custom"></a>

```
"configurationOverrides": {
  "applicationConfiguration": [
    {
      "classification": "emr-job-submitter",
      "properties": {
        "jobsubmitter.logging.image": "YOUR_ECR_IMAGE_URL",
        "jobsubmitter.logging.request.memory": "200Mi",
        "jobsubmitter.logging.request.cores": "0.5"
      }
    }
  ], 
  "monitoringConfiguration": {
    "cloudWatchMonitoringConfiguration": {
      "logGroupName": "/emr-containers/jobs", 
      "logStreamNamePrefix": "demo"
    }, 
    "s3MonitoringConfiguration": {
      "logUri": "s3://joblogs"
    }
  }
}
```

### `StartJobRun`permintaan dengan gambar kontainer pengirim pekerjaan khusus dan kebijakan tarik
<a name="emr-eks-job-submitter-custom-container"></a>

```
"configurationOverrides": {
  "applicationConfiguration": [
    {
      "classification": "emr-job-submitter",
      "properties": {
        "jobsubmitter.container.image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/emr6.11_custom_repo",
        "jobsubmitter.container.image.pullPolicy": "kubernetes pull policy"
      }
    }
  ]
}
```