View a markdown version of this page

참조: EcsProperties를 사용하는 AWS Batch 작업 시나리오 - AWS Batch

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

참조: EcsProperties를 사용하는 AWS Batch 작업 시나리오

EcsProperties를 사용하는 AWS Batch 작업 정의를 필요에 따라 구성하는 방법을 설명하기 위해 이 주제에서는 다음 RegisterJobDefinition 페이로드를 제공합니다. 이러한 예제를 파일로 복사하고 필요에 맞게 사용자 지정한 다음 AWS Command Line Interface(AWS CLI)를 사용하여 RegisterJobDefinition을 호출할 수 있습니다.

Amazon EC2의 Amazon ECS에 대한 AWS Batch 작업

다음은 Amazon Elastic Compute Cloud의 Amazon Elastic Container Service에 대한 AWS Batch 작업의 예입니다.

{ "jobDefinitionName": "multicontainer-ecs-ec2", "type": "container", "ecsProperties": { "taskProperties": [ { "containers": [ { "name": "c1", "essential": false, "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "2" }, { "type": "MEMORY", "value": "4096" } ] }, { "name": "c2", "essential": false, "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "2" }, { "type": "MEMORY", "value": "4096" } ] }, { "name": "c3", "essential": true, "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "firelensConfiguration": { "type": "fluentbit", "options": { "enable-ecs-log-metadata": "true" } }, "resourceRequirements": [ { "type": "VCPU", "value": "6" }, { "type": "MEMORY", "value": "12288" } ] } ] } ] } }

Fargate의 Amazon ECS에 대한 AWS Batch 작업

다음은 AWS Fargate의 Amazon Elastic Container Service에 대한 AWS Batch 작업의 예입니다.

{ "jobDefinitionName": "multicontainer-ecs-fargate", "type": "container", "platformCapabilities": [ "FARGATE" ], "ecsProperties": { "taskProperties": [ { "containers": [ { "name": "c1", "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "2" }, { "type": "MEMORY", "value": "4096" } ] }, { "name": "c2", "essential": true, "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "6" }, { "type": "MEMORY", "value": "12288" } ] } ], "executionRoleArn": "arn:aws:iam::1112223333:role/ecsTaskExecutionRole" } ] } }

Amazon EKS에 대한 AWS Batch 작업

다음은 Amazon Elastic Kubernetes Service에 대한 AWS Batch 작업의 예입니다.

{ "jobDefinitionName": "multicontainer-eks", "type": "container", "eksProperties": { "podProperties": { "shareProcessNamespace": true, "initContainers": [ { "name": "init-container", "image": "public.ecr.aws/amazonlinux/amazonlinux:2", "command": [ "echo" ], "args": [ "hello world" ], "resources": { "requests": { "cpu": "1", "memory": "512Mi" } } }, { "name": "init-container-2", "image": "public.ecr.aws/amazonlinux/amazonlinux:2", "command": [ "echo", "my second init container" ], "resources": { "requests": { "cpu": "1", "memory": "512Mi" } } } ], "containers": [ { "name": "c1", "image": "public.ecr.aws/amazonlinux/amazonlinux:2", "command": [ "echo world" ], "resources": { "requests": { "cpu": "1", "memory": "512Mi" } } }, { "name": "sleep-container", "image": "public.ecr.aws/amazonlinux/amazonlinux:2", "command": [ "sleep", "20" ], "resources": { "requests": { "cpu": "1", "memory": "512Mi" } } } ] } } }

노드당 여러 컨테이너가 있는 MNP AWS Batch 작업

다음은 노드당 여러 컨테이너가 있는 다중 노드 병렬(MNP) AWS Batch 작업의 예입니다.

{ "jobDefinitionName": "multicontainer-mnp", "type": "multinode", "nodeProperties": { "numNodes": 6, "mainNode": 0, "nodeRangeProperties": [ { "targetNodes": "0:5", "ecsProperties": { "taskProperties": [ { "containers": [ { "name": "range05-c1", "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "2" }, { "type": "MEMORY", "value": "4096" } ] }, { "name": "range05-c2", "command": [ "echo", "hello world" ], "image": "public.ecr.aws/amazonlinux/amazonlinux:latest", "resourceRequirements": [ { "type": "VCPU", "value": "2" }, { "type": "MEMORY", "value": "4096" } ] } ] } ] } } ] } }