Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Batch を使用した例 AWS CLI
次のコード例は、 AWS Command Line Interface を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています AWS Batch。
アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。
各例には、完全なソースコードへのリンクが含まれています。ここでは、コンテキストでコードを設定および実行する方法の手順を確認できます。
トピック
アクション
次のコード例は、cancel-job
を使用する方法を示しています。
- AWS CLI
-
ジョブをキャンセルするには
この例では、指定されたジョブ ID のジョブをキャンセルします。
コマンド:
aws batch cancel-job --job-id
bcf0b186-a532-4122-842e-2ccab8d54efb
--reason"Cancelling job."
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のCancelJob
」を参照してください。
-
次のコード例は、create-compute-environment
を使用する方法を示しています。
- AWS CLI
-
オンデマンドインスタンスを使用してマネージドコンピューティング環境を作成するには
この例では、オンデマンドで起動される特定の C4 インスタンスタイプを持つマネージドコンピューティング環境を作成します。コンピューティング環境は C4OnDemand と呼ばれます。
コマンド:
aws batch create-compute-environment --cli-input-json
file://<path_to_json_file>/C4OnDemand.json
JSONファイル形式:
{ "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" }
出力:
{ "computeEnvironmentName": "C4OnDemand", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/C4OnDemand" }
スポットインスタンスを使用してマネージドコンピューティング環境を作成するには
この例では、スポット入札価格がインスタンスタイプのオンデマンド価格の 20% 以下のときに起動される M4 インスタンスタイプを持つマネージドコンピューティング環境を作成します。コンピューティング環境は M4Spot と呼ばれます。
コマンド:
aws batch create-compute-environment --cli-input-json
file://<path_to_json_file>/M4Spot.json
JSONファイル形式:
{ "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" }
出力:
{ "computeEnvironmentName": "M4Spot", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/M4Spot" }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のCreateComputeEnvironment
」を参照してください。
-
次の例は、create-job-queue
を使用する方法を説明しています。
- AWS CLI
-
1 つのコンピューティング環境で優先度の低いジョブキューを作成するには
この例では、M4Spot コンピューティング環境を使用する LowPriority というジョブキューを作成します。
コマンド:
aws batch create-job-queue --cli-input-json
file://<path_to_json_file>/LowPriority.json
JSONファイル形式:
{ "jobQueueName": "LowPriority", "state": "ENABLED", "priority": 10, "computeEnvironmentOrder": [ { "order": 1, "computeEnvironment": "M4Spot" } ] }
出力:
{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/LowPriority", "jobQueueName": "LowPriority" }
2 つのコンピューティング環境で優先度の高いジョブキューを作成するには
この例では、1 の順序で C4OnDemand コンピューティング環境を使用し、2 の順序で M4Spot コンピューティング環境を使用する HighPriority というジョブキューを作成します。スケジューラは、まず C4OnDemand コンピューティング環境にジョブを配置しようとします。
コマンド:
aws batch create-job-queue --cli-input-json
file://<path_to_json_file>/HighPriority.json
JSONファイル形式:
{ "jobQueueName": "HighPriority", "state": "ENABLED", "priority": 1, "computeEnvironmentOrder": [ { "order": 1, "computeEnvironment": "C4OnDemand" }, { "order": 2, "computeEnvironment": "M4Spot" } ] }
出力:
{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/HighPriority", "jobQueueName": "HighPriority" }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のCreateJobQueue
」を参照してください。
-
次のコード例は、delete-compute-environment
を使用する方法を示しています。
- AWS CLI
-
コンピューティング環境を削除するには
この例では、P2OnDemand コンピューティング環境を削除します。
コマンド:
aws batch delete-compute-environment --compute-environment
P2OnDemand
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のDeleteComputeEnvironment
」を参照してください。
-
次の例は、delete-job-queue
を使用する方法を説明しています。
- AWS CLI
-
ジョブキューを削除するには
この例では、GPGPU ジョブキューを削除します。
コマンド:
aws batch delete-job-queue --job-queue
GPGPU
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のDeleteJobQueue
」を参照してください。
-
次の例は、deregister-job-definition
を使用する方法を説明しています。
- AWS CLI
-
ジョブ定義の登録を解除するには
この例では、 sleep10 というジョブ定義を登録解除します。
コマンド:
aws batch deregister-job-definition --job-definition
sleep10
-
API の詳細については、 AWS CLI コマンドリファレンスの DeregisterJobDefinition
を参照してください。
-
次の例は、describe-compute-environments
を使用する方法を説明しています。
- AWS CLI
-
コンピューティング環境を記述するには
この例では、P2OnDemand コンピューティング環境について説明します。
コマンド:
aws batch describe-compute-environments --compute-environments
P2OnDemand
出力:
{ "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" } ] }
-
API の詳細については、 AWS CLI コマンドリファレンスの DescribeComputeEnvironments
を参照してください。
-
次のコード例は、describe-job-definitions
を使用する方法を示しています。
- AWS CLI
-
アクティブなジョブ定義を記述するには
この例では、アクティブなすべてのジョブ定義について説明します。
コマンド:
aws batch describe-job-definitions --status
ACTIVE
出力:
{ "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 } ] }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のDescribeJobDefinitions
」を参照してください。
-
次のコード例は、describe-job-queues
を使用する方法を示しています。
- AWS CLI
-
ジョブキューを記述するには
この例では、 HighPriority ジョブキューについて説明します。
コマンド:
aws batch describe-job-queues --job-queues
HighPriority
出力:
{ "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" } ] }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のDescribeJobQueues
」を参照してください。
-
次の例は、describe-jobs
を使用する方法を説明しています。
- AWS CLI
-
ジョブを記述するには
次の
describe-jobs
例では、指定されたジョブ ID を持つジョブについて説明します。aws batch describe-jobs \ --jobs
bcf0b186-a532-4122-842e-2ccab8d54efb
出力:
{ "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 } ] }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のDescribeJobs
」を参照してください。
-
次のコード例は、list-jobs
を使用する方法を示しています。
- AWS CLI
-
実行中のジョブを一覧表示するには
この例では、 HighPriority ジョブキューで実行中のジョブを一覧表示します。
コマンド:
aws batch list-jobs --job-queue
HighPriority
出力:
{ "jobSummaryList": [ { "jobName": "example", "jobId": "e66ff5fd-a1ff-4640-b1a2-0b0a142f49bb" } ] }
送信されたジョブを一覧表示するには
この例では、 HighPriority ジョブステータスの SUBMITTED ジョブキュー内のジョブを一覧表示します。
コマンド:
aws batch list-jobs --job-queue
HighPriority
--job-statusSUBMITTED
出力:
{ "jobSummaryList": [ { "jobName": "example", "jobId": "68f0c163-fbd4-44e6-9fd1-25b14a434786" } ] }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のListJobs
」を参照してください。
-
次の例は、register-job-definition
を使用する方法を説明しています。
- AWS CLI
-
ジョブ定義を登録するには
この例では、単純なコンテナジョブのジョブ定義を登録します。
コマンド:
aws batch register-job-definition --job-definition-name
sleep30
--typecontainer
--container-properties '{ "image": "busybox", "vcpus": 1, "memory": 128, "command": [ "sleep", "30"]}
'出力:
{ "jobDefinitionArn": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep30:1", "jobDefinitionName": "sleep30", "revision": 1 }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のRegisterJobDefinition
」を参照してください。
-
次のコード例は、submit-job
を使用する方法を示しています。
- AWS CLI
-
ジョブを送信するには
この例では、サンプルという単純なコンテナジョブを HighPriority ジョブキューに送信します。
コマンド:
aws batch submit-job --job-name
example
--job-queueHighPriority
--job-definitionsleep60
出力:
{ "jobName": "example", "jobId": "876da822-4198-45f2-a252-6cea32512ea8" }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のSubmitJob
」を参照してください。
-
次の例は、terminate-job
を使用する方法を説明しています。
- AWS CLI
-
ジョブを終了するには
この例では、指定されたジョブ ID でジョブを終了します。
コマンド:
aws batch terminate-job --job-id
61e743ed-35e4-48da-b2de-5c8333821c84
--reason"Terminating job."
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のTerminateJob
」を参照してください。
-
次のコード例は、update-compute-environment
を使用する方法を示しています。
- AWS CLI
-
コンピューティング環境を更新するには
この例では、削除できるように P2OnDemand コンピューティング環境を無効にします。
コマンド:
aws batch update-compute-environment --compute-environment
P2OnDemand
--stateDISABLED
出力:
{ "computeEnvironmentName": "P2OnDemand", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/P2OnDemand" }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のUpdateComputeEnvironment
」を参照してください。
-
次のコード例は、update-job-queue
を使用する方法を示しています。
- AWS CLI
-
ジョブキューを更新するには
この例では、削除できるようにジョブキューを無効にします。
コマンド:
aws batch update-job-queue --job-queue
GPGPU
--stateDISABLED
出力:
{ "jobQueueArn": "arn:aws:batch:us-east-1:012345678910:job-queue/GPGPU", "jobQueueName": "GPGPU" }
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のUpdateJobQueue
」を参照してください。
-