

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

# Uso della classificazione del mittente di processi
<a name="emr-eks-job-submitter"></a>

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

La richiesta `StartJobRun` di Amazon EMR su EKS crea un pod del *mittente di processi* (noto anche come pod *job-runner*) per generare il driver Spark. È possibile utilizzare la `emr-job-submitter` classificazione per configurare i selettori di nodi, aggiungere tolleranze, personalizzare la registrazione e apportare altre modifiche al pod job submitter.

Le seguenti impostazioni sono disponibili nella classificazione: `emr-job-submitter`

** `jobsubmitter.node.selector.[{{selectorKey}}]` **  
Si aggiunge al selettore di nodi del pod job submitter, con key {{selectorKey}} e value come valore di configurazione. Ad esempio, puoi impostare su `myIdentifier` e ` jobsubmitter.node.selector.identifier` il pod job submitter avrà un selettore di nodi con una chiave e un valore. `identifier` `myIdentifier` Questo può essere usato per specificare su quali nodi può essere posizionato il pod Job Submitter. Per aggiungere più chiavi di selettore di nodi, imposta più configurazioni con questo prefisso.

** `jobsubmitter.label.[{{labelKey}}]` **  
Si aggiunge alle etichette del pod job submitter, con key {{labelKey}} e the value come valore di configurazione. Per aggiungere più etichette, imposta più configurazioni con questo prefisso.

** `jobsubmitter.annotation.[{{annotationKey}}]` **  
Si aggiunge alle annotazioni del pod job submitter, con key {{annotationKey}} e the value come valore di configurazione. Per aggiungere più annotazioni, imposta più configurazioni con questo prefisso.

** `jobsubmitter.node.toleration.[{{tolerationKey}}]` **  
Aggiunge [tolleranze](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) al contenitore Job Submitter. Per impostazione predefinita, non vengono aggiunte tolleranze al pod. La chiave della tolleranza sarà {{tolerationKey}} e il valore della tolleranza sarà il valore di configurazione. Se il valore di configurazione è impostato su una stringa non vuota, l'operatore lo sarà. `Equals` Se il valore di configurazione è impostato su`""`, l'operatore lo sarà`Exists`.

** `jobsubmitter.node.toleration.[{{tolerationKey}}].[{{effect}}]` **  
Aggiunge un effetto di tolleranza al prefisso{{tolerationKey}}. Questo campo è obbligatorio quando si aggiungono tolleranze. I valori consentiti per il campo dell'effetto sono ` NoExecute``NoSchedule`, e`PreferNoSchedule`.

** `jobsubmitter.node.toleration.[{{tolerationKey}}].[{{tolerationSeconds}}]` **  
Aggiunge TolerationSeconds al prefisso. {{tolerationKey}} Campo opzionale. Applicabile solo quando l'effetto è`NoExecute`.

** `jobsubmitter.scheduler.name` **  
Imposta un SchedulerName personalizzato per il pod job submitter.

** `jobsubmitter.logging` **  
Abilita o disabilita la registrazione sul pod Job Submitter. Quando è impostato su, ` DISABLED` il contenitore di registrazione viene rimosso dal pod job submitter, il che disabiliterà qualsiasi registrazione per questo pod specificata in, ad esempio o. `monitoringConfiguration` `s3MonitoringConfiguration` `cloudWatchMonitoringConfiguration` Quando questa impostazione non è impostata o è impostata su un altro valore, la registrazione sul pod job submitter è abilitata.

** `jobsubmitter.logging.image` **  
Imposta un'immagine personalizzata da utilizzare per il contenitore di registrazione nel pod job submitter.

** `jobsubmitter.logging.request.cores` **  
Imposta un valore personalizzato per il numero di CPUs, in unità CPU, per il contenitore di registrazione sul pod job submitter. **Per impostazione predefinita, questo valore è impostato su 100 m.**

** `jobsubmitter.logging.request.memory` **  
Imposta un valore personalizzato per la quantità di memoria, in byte, per il contenitore di registrazione sul pod job submitter. **Per impostazione predefinita, questo valore è impostato su 200 Mi.** Un mebibyte è un'unità di misura simile a un megabyte.

** `jobsubmitter.container.image` **  
Imposta un'immagine personalizzata per il contenitore del pod job submitter. `job-runner`

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

Consigliamo di posizionare i job submitter pod su istanze On-Demand. L'inserimento dei pod Job Submitter sulle istanze Spot potrebbe causare un errore del lavoro se l'istanza su cui viene eseguito il pod Job Submitter è soggetta a un'interruzione dell'istanza Spot. Puoi anche [posizionare il pod job submitter in un'unica zona di disponibilità o utilizzare qualsiasi](#emr-eks-job-submitter-ex-ec2) etichetta Kubernetes applicata ai nodi.

## Esempi di classificazione del mittente di processi
<a name="emr-eks-job-submitter-examples"></a>

**Topics**
+ [Richiesta `StartJobRun` con posizionamento dei nodi on demand per il pod del mittente di processi](#emr-eks-job-submitter-ex-od)
+ [`StartJobRun`richiesta con posizionamento del nodo Single-AZ e posizionamento del tipo di istanza Amazon EC2 per il pod Job Submitter](#emr-eks-job-submitter-ex-ec2)
+ [`StartJobRun`richiesta con etichette, annotazioni e uno scheduler personalizzato per il pod Job Submitter](#emr-eks-job-submitter-label-annotation-scheduler)
+ [`StartJobRun`richiesta con una tolleranza applicata al pod Job Submitter con chiave`dedicated`, valore `graviton_machines``NoExecute`, effetto e una di 60 secondi `tolerationSeconds`](#emr-eks-job-submitter-tolerations)
+ [`StartJobRun`richiesta con registrazione disabilitata per il pod job submitter](#emr-eks-job-submitter-logging-disabled)
+ [`StartJobRun`richiesta con immagine del contenitore di registrazione personalizzata, CPU e memoria per il pod job submitter](#emr-eks-job-submitter-custom)
+ [`StartJobRun`richiesta con un'immagine del contenitore Job Submitter e una policy pull personalizzate](#emr-eks-job-submitter-custom-container)

### Richiesta `StartJobRun` con posizionamento dei nodi on demand per il pod del mittente di processi
<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`richiesta con posizionamento del nodo Single-AZ e posizionamento del tipo di istanza Amazon EC2 per il pod Job Submitter
<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`richiesta con etichette, annotazioni e uno scheduler personalizzato per il pod Job Submitter
<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`richiesta con una tolleranza applicata al pod Job Submitter con chiave`dedicated`, valore `graviton_machines``NoExecute`, effetto e una di 60 secondi `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`richiesta con registrazione disabilitata per il pod job submitter
<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`richiesta con immagine del contenitore di registrazione personalizzata, CPU e memoria per il pod job submitter
<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`richiesta con un'immagine del contenitore Job Submitter e una policy pull personalizzate
<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}}"
      }
    }
  ]
}
```