View a markdown version of this page

AWS Batch Beispiele mit AWS CLI - AWS SDK-Codebeispiele

Weitere AWS SDK-Beispiele sind im GitHub Repo AWS Doc SDK Examples verfügbar.

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.

AWS Batch Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Aktionen ausführen und allgemeine Szenarien implementieren AWS Batch.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anweisungen zum Einrichten und Ausführen des Codes im Kodex finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendung. cancel-job

AWS CLI

So brechen Sie einen Auftrag ab

In diesem Beispiel wird ein Auftrag mit der angegebenen Auftrags-ID abgebrochen.

Befehl:

aws batch cancel-job --job-id bcf0b186-a532-4122-842e-2ccab8d54efb --reason "Cancelling job."
  • Einzelheiten zur API finden Sie CancelJobin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man. create-compute-environment

AWS CLI

Um eine verwaltete Rechenumgebung mit On-Demand Instanzen zu erstellen

In diesem Beispiel wird eine verwaltete Datenverarbeitungsumgebung mit bestimmten C4-Instance-Typen erstellt, die bei Bedarf gestartet werden. Die Rechenumgebung wird aufgerufen C4OnDemand.

Befehl:

aws batch create-compute-environment --cli-input-json file://<path_to_json_file>/C4OnDemand.json

JSON-Dateiformat:

{ "computeEnvironmentName": "C4OnDemand", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "EC2", "minvCpus": 0, "maxvCpus": 128, "desiredvCpus": 48, "instanceTypes": [ "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge" ], "subnets": [ "subnet-220c0e0a", "subnet-1a95556d", "subnet-978f6dce" ], "securityGroupIds": [ "sg-cf5093b2" ], "ec2KeyPair": "id_rsa", "instanceRole": "ecsInstanceRole", "tags": { "Name": "Batch Instance - C4OnDemand" } }, "serviceRole": "arn:aws:iam::012345678910:role/AWSBatchServiceRole" }

Ausgabe:

{ "computeEnvironmentName": "C4OnDemand", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/C4OnDemand" }

So erstellen Sie eine verwaltete Datenverarbeitungsumgebung mit Spot Instances

In diesem Beispiel wird eine verwaltete Rechenumgebung mit dem Instance-Typ M4 erstellt, die gestartet wird, wenn der Spot-Angebotspreis 20% des On-Demand Preises für den Instance-Typ erreicht oder darunter liegt. Die Datenverarbeitungsumgebung wird als M4Spot bezeichnet.

Befehl:

aws batch create-compute-environment --cli-input-json file://<path_to_json_file>/M4Spot.json

JSON-Dateiformat:

{ "computeEnvironmentName": "M4Spot", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "SPOT", "spotIamFleetRole": "arn:aws:iam::012345678910:role/aws-ec2-spot-fleet-role", "minvCpus": 0, "maxvCpus": 128, "desiredvCpus": 4, "instanceTypes": [ "m4" ], "bidPercentage": 20, "subnets": [ "subnet-220c0e0a", "subnet-1a95556d", "subnet-978f6dce" ], "securityGroupIds": [ "sg-cf5093b2" ], "ec2KeyPair": "id_rsa", "instanceRole": "ecsInstanceRole", "tags": { "Name": "Batch Instance - M4Spot" } }, "serviceRole": "arn:aws:iam::012345678910:role/AWSBatchServiceRole" }

Ausgabe:

{ "computeEnvironmentName": "M4Spot", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/M4Spot" }

Das folgende Codebeispiel zeigt, wie man. create-job-queue

AWS CLI

So erstellen Sie eine Auftragswarteschlange mit niedriger Priorität und einer einzigen Datenverarbeitungsumgebung

In diesem Beispiel wird eine Jobwarteschlange mit dem Namen erstellt LowPriority , die die M4Spot-Rechenumgebung verwendet.

Befehl:

aws batch create-job-queue --cli-input-json file://<path_to_json_file>/LowPriority.json

JSON-Dateiformat:

{ "jobQueueName": "LowPriority", "state": "ENABLED", "priority": 10, "computeEnvironmentOrder": [ { "order": 1, "computeEnvironment": "M4Spot" } ] }

Ausgabe:

{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/LowPriority", "jobQueueName": "LowPriority" }

So erstellen Sie eine Auftragswarteschlange mit hoher Priorität mit zwei Datenverarbeitungsumgebungen

In diesem Beispiel wird eine Jobwarteschlange mit dem Namen erstellt HighPriority , die die C4OnDemand Rechenumgebung mit der Reihenfolge 1 und die M4Spot-Computerumgebung mit der Reihenfolge 2 verwendet. Der Scheduler versucht zuerst, Jobs in der C4OnDemand Rechenumgebung zu platzieren.

Befehl:

aws batch create-job-queue --cli-input-json file://<path_to_json_file>/HighPriority.json

JSON-Dateiformat:

{ "jobQueueName": "HighPriority", "state": "ENABLED", "priority": 1, "computeEnvironmentOrder": [ { "order": 1, "computeEnvironment": "C4OnDemand" }, { "order": 2, "computeEnvironment": "M4Spot" } ] }

Ausgabe:

{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/HighPriority", "jobQueueName": "HighPriority" }
  • Einzelheiten zur API finden Sie CreateJobQueuein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendung. delete-compute-environment

AWS CLI

So löschen Sie eine Datenverarbeitungsumgebung

In diesem Beispiel wird die P2OnDemand Rechenumgebung gelöscht.

Befehl:

aws batch delete-compute-environment --compute-environment P2OnDemand

Das folgende Codebeispiel zeigt die Verwendung. delete-job-queue

AWS CLI

So löschen Sie eine Auftragswarteschlange

In diesem Beispiel wird die GPGPU-Auftragswarteschlange gelöscht.

Befehl:

aws batch delete-job-queue --job-queue GPGPU
  • Einzelheiten zur API finden Sie DeleteJobQueuein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutzt. deregister-job-definition

AWS CLI

So heben Sie die Registrierung einer Auftragsdefinition auf

In diesem Beispiel wird die Registrierung einer Auftragsdefinition namens „sleep10“ aufgehoben.

Befehl:

aws batch deregister-job-definition --job-definition sleep10

Das folgende Codebeispiel zeigt, wie man es benutzt. describe-compute-environments

AWS CLI

So beschreiben Sie eine Datenverarbeitungsumgebung

Dieses Beispiel beschreibt die P2OnDemand Rechenumgebung.

Befehl:

aws batch describe-compute-environments --compute-environments P2OnDemand

Ausgabe:

{ "computeEnvironments": [ { "status": "VALID", "serviceRole": "arn:aws:iam::012345678910:role/AWSBatchServiceRole", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/P2OnDemand", "computeResources": { "subnets": [ "subnet-220c0e0a", "subnet-1a95556d", "subnet-978f6dce" ], "tags": { "Name": "Batch Instance - P2OnDemand" }, "desiredvCpus": 48, "minvCpus": 0, "instanceTypes": [ "p2" ], "securityGroupIds": [ "sg-cf5093b2" ], "instanceRole": "ecsInstanceRole", "maxvCpus": 128, "type": "EC2", "ec2KeyPair": "id_rsa" }, "statusReason": "ComputeEnvironment Healthy", "ecsClusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/P2OnDemand_Batch_2c06f29d-d1fe-3a49-879d-42394c86effc", "state": "ENABLED", "computeEnvironmentName": "P2OnDemand", "type": "MANAGED" } ] }

Das folgende Codebeispiel zeigt, wie man es benutzt. describe-job-definitions

AWS CLI

So beschreiben Sie aktive Auftragsdefinitionen

In diesem Beispiel werden alle Ihre aktiven Auftragsdefinitionen beschrieben.

Befehl:

aws batch describe-job-definitions --status ACTIVE

Ausgabe:

{ "jobDefinitions": [ { "status": "ACTIVE", "jobDefinitionArn": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep60:1", "containerProperties": { "mountPoints": [], "parameters": {}, "image": "busybox", "environment": {}, "vcpus": 1, "command": [ "sleep", "60" ], "volumes": [], "memory": 128, "ulimits": [] }, "type": "container", "jobDefinitionName": "sleep60", "revision": 1 } ] }

Das folgende Codebeispiel zeigt die Verwendung. describe-job-queues

AWS CLI

So beschreiben Sie eine Auftragswarteschlange

Dieses Beispiel beschreibt die HighPriority Job-Warteschlange.

Befehl:

aws batch describe-job-queues --job-queues HighPriority

Ausgabe:

{ "jobQueues": [ { "status": "VALID", "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/HighPriority", "computeEnvironmentOrder": [ { "computeEnvironment": "arn:aws:batch:us-east-1:012345678910:compute-environment/C4OnDemand", "order": 1 } ], "statusReason": "JobQueue Healthy", "priority": 1, "state": "ENABLED", "jobQueueName": "HighPriority" } ] }

Das folgende Codebeispiel zeigt, wie man es benutzt. describe-jobs

AWS CLI

So beschreiben Sie einen Auftrag

Im folgenden Beispiel für describe-jobs wird ein Auftrag mit der angegebenen Auftrags-ID beschrieben.

aws batch describe-jobs \ --jobs bcf0b186-a532-4122-842e-2ccab8d54efb

Ausgabe:

{ "jobs": [ { "status": "SUBMITTED", "container": { "mountPoints": [], "image": "busybox", "environment": [], "vcpus": 1, "command": [ "sleep", "60" ], "volumes": [], "memory": 128, "ulimits": [] }, "parameters": {}, "jobDefinition": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep60:1", "jobQueue": "arn:aws:batch:us-east-1:012345678910:job-queue/HighPriority", "jobId": "bcf0b186-a532-4122-842e-2ccab8d54efb", "dependsOn": [], "jobName": "example", "createdAt": 1480483387803 } ] }
  • Einzelheiten zur API finden Sie DescribeJobsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendung. list-jobs

AWS CLI

So listen Sie laufende Aufträge auf

Dieses Beispiel listet die laufenden Jobs in der HighPriority Job-Warteschlange auf.

Befehl:

aws batch list-jobs --job-queue HighPriority

Ausgabe:

{ "jobSummaryList": [ { "jobName": "example", "jobId": "e66ff5fd-a1ff-4640-b1a2-0b0a142f49bb" } ] }

So listen Sie übermittelte Aufträge auf

In diesem Beispiel werden Jobs in der HighPriority Auftragswarteschlange aufgeführt, die den Jobstatus SUBMITTED haben.

Befehl:

aws batch list-jobs --job-queue HighPriority --job-status SUBMITTED

Ausgabe:

{ "jobSummaryList": [ { "jobName": "example", "jobId": "68f0c163-fbd4-44e6-9fd1-25b14a434786" } ] }
  • Einzelheiten zur API finden Sie ListJobsunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutzt. register-job-definition

AWS CLI

So registrieren Sie eine Auftragsdefinition

In diesem Beispiel wird eine Auftragsdefinition für einen einfachen Container-Auftrag registriert.

Befehl:

aws batch register-job-definition --job-definition-name sleep30 --type container --container-properties '{ "image": "busybox", "vcpus": 1, "memory": 128, "command": [ "sleep", "30"]}'

Ausgabe:

{ "jobDefinitionArn": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep30:1", "jobDefinitionName": "sleep30", "revision": 1 }

Das folgende Codebeispiel zeigt die Verwendung. submit-job

AWS CLI

So senden Sie einen Auftrag

In diesem Beispiel wird ein einfacher Container-Job namens example an die HighPriority Auftragswarteschlange gesendet.

Befehl:

aws batch submit-job --job-name example --job-queue HighPriority --job-definition sleep60

Ausgabe:

{ "jobName": "example", "jobId": "876da822-4198-45f2-a252-6cea32512ea8" }
  • Einzelheiten zur API finden Sie SubmitJobin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutzt. terminate-job

AWS CLI

So beenden Sie einen Auftrag

In diesem Beispiel wird ein Auftrag mit der angegebenen Auftrags-ID beendet.

Befehl:

aws batch terminate-job --job-id 61e743ed-35e4-48da-b2de-5c8333821c84 --reason "Terminating job."
  • Einzelheiten zur API finden Sie TerminateJobin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutzt. update-compute-environment

AWS CLI

So aktualisieren Sie eine Datenverarbeitungsumgebung

In diesem Beispiel wird die P2OnDemand Rechenumgebung deaktiviert, sodass sie gelöscht werden kann.

Befehl:

aws batch update-compute-environment --compute-environment P2OnDemand --state DISABLED

Ausgabe:

{ "computeEnvironmentName": "P2OnDemand", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/P2OnDemand" }

Das folgende Codebeispiel zeigt, wie man es benutzt. update-job-queue

AWS CLI

So aktualisieren Sie eine Auftragswarteschlange

In diesem Beispiel wird eine Auftragswarteschlange deaktiviert, sodass sie gelöscht werden kann.

Befehl:

aws batch update-job-queue --job-queue GPGPU --state DISABLED

Ausgabe:

{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/GPGPU", "jobQueueName": "GPGPU" }
  • Einzelheiten zur API finden Sie UpdateJobQueuein der AWS CLI Befehlsreferenz.