

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

# 여러 시작 템플릿 사용
<a name="ec2-auto-scaling-mixed-instances-groups-launch-template-overrides"></a>

여러 인스턴스 유형을 사용하는 것 외에도 여러 시작 템플릿을 사용할 수 있습니다.

예를 들어, 컴퓨팅 집약적인 애플리케이션을 위한 Auto Scaling 그룹을 구성하고 C5, C5a 및 C6g 인스턴스 유형을 혼합해 포함하려 한다고 가정해 보세요. 그러나 C6g 인스턴스는 64비트 Arm 아키텍처를 기반으로 하는 AWS Graviton 프로세서를 사용하는 반면, C5 및 C5a 인스턴스는 64비트 Intel x86 프로세서에서 실행됩니다. C5 및 C5a 인스턴스용 AMI는 두 인스턴스에서 작동하지만 C6g 인스턴스에서는 작동하지 않습니다. 이 문제를 해결하려면 다른 C6g 인스턴스용 시작 템플릿을 사용합니다. C5 및 C5a 인스턴스에 동일한 시작 템플릿을 계속 사용할 수 있습니다.

이 단원에는 AWS CLI 를 사용하여 여러 시작 템플릿 사용과 관련된 작업을 수행하는 절차가 포함되어 있습니다. 현재 이 기능은 AWS CLI 또는 SDK를 사용하는 경우에만 사용할 수 있으며 콘솔에서는 사용할 수 없습니다.

**Topics**
+ [여러 시작 템플릿을 사용하도록 Auto Scaling 그룹 구성](#configue-auto-scaling-group-to-use-multiple-launch-templates)
+ [관련 리소스](#multiple-launch-templates-related-resources)

## 여러 시작 템플릿을 사용하도록 Auto Scaling 그룹 구성
<a name="configue-auto-scaling-group-to-use-multiple-launch-templates"></a>

다음 예와 같이 여러 시작 템플릿을 사용하도록 Auto Scaling 그룹을 구성할 수 있습니다.

**여러 시작 템플릿을 사용하도록 새 Auto Scaling 그룹을 구성하려면(AWS CLI)**  
[create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) 명령을 사용합니다. 예를 들어, 다음 명령은 새 Auto Scaling 그룹을 생성합니다. 이 파일은 `c5.large`, `c5a.large`, 및 `c6g.large` 인스턴스 유형을 지정하고, `c6g.large` 인스턴스 유형에 대한 새 시작 템플릿을 정의하여 Arm 인스턴스를 시작하는 데 적절한 AMI가 사용되는지 확인합니다. Amazon EC2 Auto Scaling은 인스턴스 유형 순서를 사용하여 온디맨드 용량을 채울 때 우선 사용할 인스턴스 유형을 결정합니다.

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

`config.json` 파일에는 다음 내용이 포함되어 있습니다.

```
{
  "AutoScalingGroupName":"{{my-asg}}",
  "MixedInstancesPolicy":{
    "LaunchTemplate":{
      "LaunchTemplateSpecification":{
        "LaunchTemplateName":"{{my-launch-template-for-x86}}",
        "Version":"{{$Latest}}"
      },
      "Overrides":[
        {
          "InstanceType":"{{c6g.large}}",
          "LaunchTemplateSpecification": {
            "LaunchTemplateName": "{{my-launch-template-for-arm}}",
            "Version": "{{$Latest}}"
          }
        },
        {
          "InstanceType":"{{c5.large}}"
        },
        {
          "InstanceType":"{{c5a.large}}"
        }
      ]
    },
    "InstancesDistribution":{
      "OnDemandBaseCapacity": {{1}},
      "OnDemandPercentageAboveBaseCapacity": {{50}},
      "SpotAllocationStrategy": "capacity-optimized"
    }
  },
  "MinSize":{{1}},
  "MaxSize":{{5}},
  "DesiredCapacity":{{3}},
  "VPCZoneIdentifier":"{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}",
  "Tags":[ ]
}
```

**여러 시작 템플릿을 사용하도록 기존 Auto Scaling 그룹을 구성하려면(AWS CLI)**  
[update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) 명령을 사용합니다. 예를 들어, 다음 명령은 이름이 `{{my-launch-template-for-arm}}`로 지정된 시작 템플릿을 이름이 {{`my-asg`}}인 Auto Scaling 그룹의 `{{c6g.large}}` 인스턴스 유형에 할당합니다.

```
aws autoscaling update-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

`config.json` 파일에는 다음 콘텐츠가 포함되어 있습니다.

```
{
  "AutoScalingGroupName":"{{my-asg}}",
  "MixedInstancesPolicy":{
    "LaunchTemplate":{
      "Overrides":[
        {
          "InstanceType":"{{c6g.large}}",
          "LaunchTemplateSpecification": {
            "LaunchTemplateName": "{{my-launch-template-for-arm}}",
            "Version": "{{$Latest}}"
          }
        },
        {
          "InstanceType":"{{c5.large}}"
        },
        {
          "InstanceType":"{{c5a.large}}"
        }
      ]
    }
  }
}
```

**속성 기반 인스턴스 유형 선택과 함께 여러 시작 템플릿을 사용하도록 새 Auto Scaling 그룹을 구성하려면(AWS CLI)**  
[create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) 명령을 사용합니다. 예를 들어 다음 명령은 ARM AMI가 있는 AWS Graviton 인스턴스에 대한 시작 템플릿과 x86 AMI가 있는 AMD 또는 Intel 기반 인스턴스에 대한 추가 시작 템플릿을 지정하여 새 Auto Scaling 그룹을 생성합니다. 그런 다음 [속성 기반 인스턴스 선택](create-mixed-instances-group-attribute-based-instance-type-selection.md)을 두 번 사용하여 각 CPU 아키텍처에 대한 다양한 인스턴스 유형 중에서 선택합니다. [update-autoscaling-group](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/update-auto-scaling-group.html) 명령을 사용하여 기존 Auto Scaling 그룹에 유사한 구성을 추가할 수 있습니다.

```
aws autoscaling create-auto-scaling-group --cli-input-json {{file://~/config.json}}
```

`config.json` 파일에는 다음 콘텐츠가 포함되어 있습니다.

```
{
  "AutoScalingGroupName":"{{my-asg}}",
  "MixedInstancesPolicy":{
    "LaunchTemplate":{
      "LaunchTemplateSpecification":{
        "LaunchTemplateName":"{{my-launch-template-for-arm}}",
        "Version":"{{$Latest}}"
      },
      "Overrides":[
        {
          "InstanceRequirements": {
            "VCpuCount": {"Min": {{2}}},
            "MemoryMiB": {"Min": {{2048}}},
            "CpuManufacturers": ["amazon-web-services"]
          }
         },
         {
           "InstanceRequirements": {
            "VCpuCount": {"Min": {{2}}},
            "MemoryMiB": {"Min": {{2048}}},
            "CpuManufacturers": ["intel", "amd"]
          },
          "LaunchTemplateSpecification": {
            "LaunchTemplateName": "{{my-launch-template-for-x86}}",
            "Version": "{{$Latest}}"
          }
         }
      ]
    },
    "InstancesDistribution":{
      "OnDemandPercentageAboveBaseCapacity": {{0}}, 
      "SpotAllocationStrategy": "price-capacity-optimized"
    }
  },
  "MinSize":{{1}},
  "MaxSize":{{10}},
  "DesiredCapacity":{{6}},
  "VPCZoneIdentifier":"{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}",
  "Tags":[ ]
}
```

**Auto Scaling 그룹의 시작 템플릿 확인**  
다음 명령 중 하나를 사용합니다.
+ [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html)(AWS CLI)
+ [Get-ASAutoScalingGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-ASAutoScalingGroup.html)(AWS Tools for Windows PowerShell)

## 관련 리소스
<a name="multiple-launch-templates-related-resources"></a>

[AWS re:Post](https://repost.aws/articles/ARQeKDQX68TcqipYaaisl6bA/cloudformation-auto-scaling-group-sample-template-for-mixed-x86-intel-amd-and-aws-graviton-instances)의 템플릿에서 속성 기반 인스턴스 유형 선택을 사용하여 여러 시작 CloudFormation 템플릿을 지정하는 예를 찾을 수 있습니다.