

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Verwenden der Auftragserteilung
<a name="emr-eks-job-submitter"></a>

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

Die Amazon EMR in EKS-`StartJobRun`-Anfrage erstellt einen *Auftrag-Submitter-Pod* (auch *Auftrag-Runner-Pod* genannt), um den Spark-Treiber zu starten. Sie können die `emr-job-submitter` Klassifizierung verwenden, um Knotenselektoren zu konfigurieren, Toleranzen hinzuzufügen, die Protokollierung anzupassen und andere Änderungen am Job Submitter-Pod vorzunehmen.

Die folgenden Einstellungen sind unter der Klassifizierung verfügbar: `emr-job-submitter`

** `jobsubmitter.node.selector.[selectorKey]` **  
Fügt der Knotenauswahl des Pods, in dem der Job eingereicht wurde, hinzu, wobei der Schlüssel *selectorKey* und der Wert als Konfigurationswert verwendet werden. Sie können beispielsweise festlegen` jobsubmitter.node.selector.identifier`, dass der Pod des Auftragseinreichers über eine Knotenauswahl mit einem Schlüssel `myIdentifier` und einem Wert verfügt. `identifier` `myIdentifier` Dies kann verwendet werden, um anzugeben, auf welchen Knoten der Pod des Auftragseinreichers platziert werden kann. Um mehrere Knotenauswahltasten hinzuzufügen, legen Sie mehrere Konfigurationen mit diesem Präfix fest.

** `jobsubmitter.label.[labelKey]` **  
Fügt den Beschriftungen des Pods des Auftragseinreichers hinzu, wobei der Schlüssel *labelKey* und der Wert als Konfigurationswert verwendet werden. Um mehrere Labels hinzuzufügen, legen Sie mehrere Konfigurationen mit diesem Präfix fest.

** `jobsubmitter.annotation.[annotationKey]` **  
Fügt den Anmerkungen im Pod des Jobeinreichers hinzu, wobei der Schlüssel *annotationKey* und der Wert als Konfigurationswert verwendet werden. Um mehrere Anmerkungen hinzuzufügen, legen Sie mehrere Konfigurationen mit diesem Präfix fest.

** `jobsubmitter.node.toleration.[tolerationKey]` **  
Fügt dem [Pod des Stelleneinreichers Toleranzen](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) hinzu. Standardmäßig werden dem Pod keine Toleranzen hinzugefügt. Der Schlüssel der Toleranz ist *tolerationKey* und der Wert der Toleranz wird der Konfigurationswert sein. Wenn der Konfigurationswert auf eine nicht leere Zeichenfolge gesetzt ist, gilt dies auch für den Operator. `Equals` Wenn der Konfigurationswert auf gesetzt ist`""`, dann ist der Operator. `Exists`

** `jobsubmitter.node.toleration.[tolerationKey].[effect]` **  
Fügt dem *tolerationKey* Präfix einen Toleranzeffekt hinzu. Dieses Feld ist beim Hinzufügen von Toleranzen erforderlich. Die zulässigen Werte für das Effektfeld sind ` NoExecute``NoSchedule`, und`PreferNoSchedule`.

** `jobsubmitter.node.toleration.[tolerationKey].[tolerationSeconds]` **  
Fügt dem Präfix TolerationSeconds hinzu. *tolerationKey* Optionales Feld. Gilt nur, wenn der Effekt ist. `NoExecute`

** `jobsubmitter.scheduler.name` **  
Legt einen benutzerdefinierten SchedulerName für den Pod des Auftragseinreichers fest.

** `jobsubmitter.logging` **  
Aktiviert oder deaktiviert die Protokollierung im Pod des Auftragseinreichers. Wenn diese Option aktiviert ist, wird ` DISABLED` der Logging-Container aus dem Pod des Auftragseinreichers entfernt, wodurch jegliche Protokollierung für diesen Pod deaktiviert wird, die `monitoringConfiguration` im angegeben ist, z. B. oder. `s3MonitoringConfiguration` `cloudWatchMonitoringConfiguration` Wenn diese Einstellung nicht oder auf einen anderen Wert gesetzt ist, ist die Protokollierung im Pod des Auftragseinreichers aktiviert.

** `jobsubmitter.logging.image` **  
Legt ein benutzerdefiniertes Bild fest, das für den Logging-Container im Pod des Auftragseinreichers verwendet werden soll.

** `jobsubmitter.logging.request.cores` **  
Legt einen benutzerdefinierten Wert für die Anzahl der CPUs Logging-Container im Pod des Auftragseinreichers in CPU-Einheiten fest. **Standardmäßig ist dieser Wert auf 100 m festgelegt.**

** `jobsubmitter.logging.request.memory` **  
Legt einen benutzerdefinierten Wert für die Speichergröße (in Byte) für den Logging-Container im Pod des Auftragseinreichers fest. **Standardmäßig ist dieser Wert auf 200 Mi festgelegt.** Ein Mebibyte ist eine Maßeinheit, die einem Megabyte ähnelt.

** `jobsubmitter.container.image` **  
Legt ein benutzerdefiniertes Bild für den Container des Pods des Auftragseinreichers fest. `job-runner`

** `jobsubmitter.container.image.pullPolicy` **  
Legt die Container [imagePullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy)für den Pod des Jobeinreichers fest.

Wir empfehlen, die Pods der Stellenabsender auf On-Demand-Instances zu platzieren. Das Platzieren von Pods für Job-Absender auf Spot-Instances kann zu einem Job-Fehlschlag führen, wenn die Instance, auf der der Pod für den Job-Absender ausgeführt wird, von einer Spot-Instance-Unterbrechung betroffen ist. Sie können den [Pod des Auftragseinreichers auch in einer einzigen Availability Zone platzieren oder beliebige Kubernetes-Labels verwenden](#emr-eks-job-submitter-ex-ec2), die auf die Knoten angewendet werden.

## Beispiele für die Klassifizierung von Auftragseinreichern
<a name="emr-eks-job-submitter-examples"></a>

**Topics**
+ [`StartJobRun`-Anfrage mit On-Demand-Knotenplatzierung für den Pod des Auftrageinreichers](#emr-eks-job-submitter-ex-od)
+ [`StartJobRun`Anfrage mit Single-AZ-Knotenplatzierung und Amazon EC2 EC2-Instance-Typ-Platzierung für den Job Submitter-Pod](#emr-eks-job-submitter-ex-ec2)
+ [`StartJobRun`Anfrage mit Bezeichnungen, Anmerkungen und einem benutzerdefinierten Scheduler für den Pod des Jobeinreichers](#emr-eks-job-submitter-label-annotation-scheduler)
+ [`StartJobRun`Anfrage mit einer Toleranz, die auf den Pod des Job-Absenders mit Schlüssel`dedicated`, Wert `graviton_machines``NoExecute`, Effekt und einer Dauer von 60 Sekunden angewendet wurde `tolerationSeconds`](#emr-eks-job-submitter-tolerations)
+ [`StartJobRun`Anfrage mit deaktivierter Protokollierung für den Job Submitter-Pod](#emr-eks-job-submitter-logging-disabled)
+ [`StartJobRun`Anfrage mit benutzerdefiniertem Logging-Container-Image, CPU und Speicher für den Pod des Jobeinreichers](#emr-eks-job-submitter-custom)
+ [`StartJobRun`Anfrage mit einem benutzerdefinierten Container-Image für den Job-Absender und einer Pull-Richtlinie](#emr-eks-job-submitter-custom-container)

### `StartJobRun`-Anfrage mit On-Demand-Knotenplatzierung für den Pod des Auftrageinreichers
<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`Anfrage mit Single-AZ-Knotenplatzierung und Amazon EC2 EC2-Instance-Typ-Platzierung für den Job Submitter-Pod
<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`Anfrage mit Bezeichnungen, Anmerkungen und einem benutzerdefinierten Scheduler für den Pod des Jobeinreichers
<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`Anfrage mit einer Toleranz, die auf den Pod des Job-Absenders mit Schlüssel`dedicated`, Wert `graviton_machines``NoExecute`, Effekt und einer Dauer von 60 Sekunden angewendet wurde `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`Anfrage mit deaktivierter Protokollierung für den Job Submitter-Pod
<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`Anfrage mit benutzerdefiniertem Logging-Container-Image, CPU und Speicher für den Pod des Jobeinreichers
<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`Anfrage mit einem benutzerdefinierten Container-Image für den Job-Absender und einer Pull-Richtlinie
<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"
      }
    }
  ]
}
```