

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.

# Reichen Sie einen Job ein, der Limits erfordert
<a name="job-limit-job"></a>

Sie wenden ein Limit an, indem Sie es als Hostanforderung für den Job oder den Jobschritt angeben. Wenn Sie in einem Schritt kein Limit angeben und dieser Schritt eine zugeordnete Ressource verwendet, wird die Nutzung des Steps bei der Planung von Jobs nicht auf das Limit angerechnet.

Bei einigen Absendern von Deadline Cloud können Sie eine Hostanforderung festlegen. Sie können den Namen der Betragsanforderung im Absender angeben, um das Limit anzuwenden.

Wenn dein Absender das Hinzufügen von Anforderungen für Gastgeber nicht unterstützt, kannst du auch ein Limit festlegen, indem du die Jobvorlage für den Job bearbeitest.

**Um ein Limit auf einen Job-Schritt im Job-Paket anzuwenden**

1. Öffnen Sie die Jobvorlage für den Job mit einem Texteditor. Die Jobvorlage befindet sich im Job-Bundle-Verzeichnis für den Job. Weitere Informationen finden Sie unter [ Jobpakete ](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/build-job-bundle.html) im * Deadline Cloud Developer Guide*.

1. Suchen Sie die Schrittdefinition für den Schritt, auf den das Limit angewendet werden soll.

1. Fügen Sie der Schrittdefinition Folgendes hinzu. Ersetzen Sie das {{amount.name}} Limit durch den Namen der Betragsanforderung. Für den typischen Gebrauch sollten Sie den `min` Wert auf 1 setzen.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: amount.{{name}}
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "{{amount.name}}",
               "min": "1"
           }
       ]
   }
   ```

------

   Sie können einem Auftragsschritt wie folgt mehrere Grenzwerte hinzufügen. Ersetzen Sie {{amount.name\_1}} und {{amount.name\_2}} durch die Betragsanforderungen Ihrer Limits.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: {{amount.name_1}}
         min: 1
       - name: {{amount.name_2}}
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "amount.{{name_1}}",
               "min": "1"
           },
           {
               "name": "amount.{{name_2}}",
               "min": "1"
           }
       ]
   }
   ```

------

1. Speichern Sie die Änderungen an der Jobvorlage.

## Automatisieren Sie Limits mit Submission-Hooks
<a name="job-limit-hooks"></a>

Wenn Sie Grenzwerte für alle Stellenausschreibungen durchsetzen möchten, ohne dass Künstler die Jobvorlagen manuell bearbeiten müssen, können Sie einen Hook [ vor der Einreichung verwenden, ](https://github.com/aws-deadline/deadline-cloud/blob/mainline/docs/submission-hooks.md) um die Host-Anforderung automatisch bei der Einreichung in jede Jobvorlage einzufügen.

Ein Hook vor der Einreichung ist ein Skript, das ausgeführt wird, bevor der Job eingereicht wird. Der Hook kann die Job-Pakete so ändern`template.yaml`, dass die für Ihr Limit eingegebenen `hostRequirements` Beträge hinzugefügt werden. Dieser Ansatz stellt sicher, dass jeder Job, der über die Deadline Cloud CLI eingereicht wird, oder die DCC-Absender angeben, dass er die begrenzte Ressource benötigt.

Ein vollständiges Arbeitsbeispiel finden Sie im Beispiel für die Einreichung von [ Lizenzbeschränkungen ](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/submission_hooks/license_limits) im Beispiel-Repository von Deadline Cloud.

## End-to-end Beispiel: V-Ray Lizenzbeschränkungen durchsetzen
<a name="job-limit-example"></a>

Dieses Beispiel zeigt, wie Sie ein Limit für 5 V-Ray Floating-Lizenzen einrichten und überprüfen, ob der Scheduler es durchsetzt.

**Um ein Lizenzlimit einzurichten und zu V-Ray testen**

1. Erstellen Sie das Limit für Ihre Farm:

   ```
   aws deadline create-limit \
       --farm-id {{farm-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}} \
       --display-name "VRay License" \
       --amount-requirement-name "amount.vray" \
       --max-count 5
   ```

1. Ordnen Sie das Limit Ihrer Warteschlange zu:

   ```
   aws deadline create-queue-limit-association \
       --farm-id {{farm-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}} \
       --queue-id {{queue-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}} \
       --limit-id {{limit-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}}
   ```

1. Füge die Host-Anforderung zu deiner Job-Vorlage hinzu:

   ```
   specificationVersion: jobtemplate-2023-09
   name: My VRay Render
   parameterDefinitions:
     - name: SceneFile
       type: PATH
       objectType: FILE
       dataFlow: IN
   steps:
     - name: Render
       hostRequirements:
         amounts:
           - name: amount.vray
             min: 1
       script:
         actions:
           onRun:
             command: vray
             args: ["-scene", "{{Param.SceneFile}}"]
   ```

1. Reichen Sie den Job ein. Der Scheduler ermöglicht die gleichzeitige Ausführung von maximal 5 Aufgaben für alle Jobs in der Warteschlange. `amount.vray` Zusätzliche Aufgaben bleiben im `READY` Status, bis ein Slot verfügbar wird.

Um zu überprüfen, ob das Limit funktioniert, setzen Sie ihn vorübergehend `maxCount` auf 1 und senden Sie zwei Jobs ab. Der erste Auftrag wird ausgeführt, während der zweite im `READY` Status verbleibt, bis der erste abgeschlossen ist.