

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

# 혼합 아키텍처 작업 실행(X86\_64 및 ARM64)
<a name="ecs-managed-instances-multi-architecture"></a>

단일 Amazon ECS 관리형 인스턴스 컴퓨팅 환경 및 작업 대기열은 `X86_64` 및 `ARM64` (AWS Graviton 프로세서 기반) 작업을 모두 실행할 수 있습니다. 각 작업은 작업 정의에 선언된 CPU 아키텍처와 일치하는 용량으로 실행됩니다. 작업 정의에서를 사용하여 아키텍처`runtimePlatform.cpuArchitecture`를 설정합니다. 컴퓨팅 환경에서는 아키텍처를 구성하지 않습니다.

혼합 아키텍처 작업을 실행하려면 두 아키텍처를 모두 지원하는 컨테이너 이미지(다중 아키텍처 이미지 매니페스트)를 제공하고가 `X86_64` 또는 로 설정하는 아키텍처당 하나의 작업 정의를 등록`runtimePlatform.cpuArchitecture`합니다`ARM64`. 두 작업 정의 중 하나에 대한 작업을 동일한 작업 대기열에 제출할 수 있습니다.

```
"runtimePlatform": {
  "operatingSystemFamily": "LINUX",
  "cpuArchitecture": "ARM64"
}
```

그런 다음 다음 방법 중 하나로 컴퓨팅 환경을 설정합니다.
+ 모든 인스턴스 유형을 적격`instanceRequirements`으로 만들려면 생략합니다.
+ 작업`allowedInstanceTypes`에서 사용하는 모든 아키텍처를 포함하는를 지정합니다.

인스턴스 유형 지정 안 함  
(`managedInstancesProvider.instanceLaunchTemplate`컴퓨팅 환경에서 사용할 수 있는 인스턴스 유형을 제한하는 설정)에서 `instanceRequirements` 필드를 생략합니다. 모든 인스턴스 유형을 사용할 수 있으며 Amazon ECS는 각 작업의와 일치하는 용량을 선택합니다`runtimePlatform.cpuArchitecture`. `X86_64` 작업은 x86 인스턴스에서 시작되고 `ARM64` 작업은 동일한 컴퓨팅 환경의 AWS Graviton 인스턴스에서 시작됩니다.

필요한 아키텍처를 포함하는 인스턴스 유형 지정  
를 설정하는 경우 작업이 선언하는 모든 아키텍처에 인스턴스 유형을 `instanceRequirements.allowedInstanceTypes`포함합니다. Amazon ECS는 사용자가 허용하는 인스턴스 유형에서 아키텍처를 유추합니다. 허용되는 인스턴스 유형은 각 작업의를 충족해야 합니다`runtimePlatform.cpuArchitecture`. 예를 들어 두 아키텍처를 모두 실행하려면 다음을 포함합니다.  
+ `m5` 및와 같은 x86 패밀리 `c5`
+ AWS `m7g` 및와 같은 Graviton 패밀리 `c7g`

**일치하는 인스턴스 유형을 사용할 수 없는 경우 작업이 실패합니다.**  
허용된 인스턴스 유형에 작업의 선언된 아키텍처와 일치하는 유형이 포함되지 않은 경우 작업은 다음과 같은 이유로 실패합니다.  
`ResourceInitializationError: No available instance types were able to satisfy the task and placement constraints.`  
예를 들어가 x86 패밀리만 `allowedInstanceTypes` 나열하고 `ARM64` 작업을 제출하면이 오류와 함께 작업이 실패합니다. 이 문제를 해결하려면에 AWS Graviton 인스턴스 패밀리를 추가합니다`allowedInstanceTypes`. 또는 `instanceRequirements`를 제거하여 모든 인스턴스 유형을 허용합니다.