

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

# Elastic Beanstalk 환경 인스턴스의 Auto Scaling
<a name="using-features.managing.as"></a>

이 주제에서는 Elastic Beanstalk 환경의 워크로드를 관리하기 위해 Auto Scaling 기능을 어떻게 사용자 지정할 수 있는지 설명합니다. [Elastic Beanstalk 콘솔](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console), [네임스페이스 구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace), [AWS CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-aws-cli) 또는 [EB CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-ebcli)를 사용해 환경의 Auto Scaling을 구성할 수 있습니다.

**로드 밸런싱 또는 단일 인스턴스 환경**  
 AWS Elastic Beanstalk 환경에는 환경에서 [Amazon EC2 인스턴스](using-features.managing.ec2.md)를 관리하는 *Auto Scaling 그룹이* 포함되어 있습니다. 단일 인스턴스 환경에서 Auto Scaling 그룹은 실행 중인 인스턴스가 항상 한 개가 있도록 보장합니다. 로드 밸런싱된 환경에서 사용자가 실행할 다양한 인스턴스로 이루어진 그룹을 구성하면 Auto Scaling에서는 로드를 기준으로 필요에 따라 인스턴스를 추가하거나 제거합니다.

**EC2 인스턴스 구성**  
Auto Scaling 그룹은 환경 내 EC2 인스턴스를 프로비저닝하고 관리할 때 설정한 구성 선택 사항도 적용합니다. [EC2 구성을 수정](using-features.managing.ec2.md)하여 인스턴스 유형, 키 페어, Amazon Elastic Block Store(Amazon EBS) 스토리지 및 인스턴스를 시작하는 경우에만 구성할 수 있는 기타 설정을 변경할 수 있습니다.

**온디맨드 및 스팟 인스턴스**  
옵션으로 Elastic Beanstalk은 [스팟 인스턴스](environments-cfg-autoscaling-spot.md)를 환경에 포함하고 이를 온디맨드 인스턴스와 함께 관리할 수 있습니다. [용량 리밸런싱](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html)을 활성화하여 스팟 인스턴스의 가용성에 영향을 주는 변경 사항을 모니터링하고 자동으로 대응하도록 Amazon EC2 Auto Scaling을 구성할 수 있습니다. Auto Scaling 서비스가 환경에 스팟 인스턴스를 프로비저닝하는 데 사용하는 [스팟 할당 전략](environments-cfg-autoscaling-spot-allocation-strategy.md)을(를) 구성할 수도 있습니다.

**스팟 인스턴스를 활성화할 때 필요한 권한**  
스팟 인스턴스 요청을 활성화하려면 Amazon EC2 시작 템플릿을 사용해야 합니다. 환경을 생성하거나 업데이트하는 동안 이러한 기능을 구성하면 Elastic Beanstalk에서 Amazon EC2 시작 템플릿을 사용하도록 환경 구성을 시도합니다(환경에서 아직 템플릿을 사용하지 않는 경우). 이 경우 사용자 정책에 필요한 권한이 없으면 환경 생성 또는 업데이트가 실패할 수 있습니다. 따라서 관리형 사용자 정책을 사용하거나 사용자 지정 정책에 필요한 권한을 추가하는 것이 좋습니다. 필요한 권한에 대한 자세한 내용은 [시작 템플릿에 필요한 권한](environments-cfg-autoscaling-launch-templates.md#environments-cfg-autoscaling-launch-templates-permissions) 단원을 참조하십시오.

**Auto Scaling 트리거**  
Auto Scaling 그룹은 두 가지 Amazon CloudWatch 경보를 사용하여 조정 작업을 트리거합니다. 기본 트리거는 각 인스턴스의 평균 아웃바운드 네트워크 트래픽이 5분 이상 6MiB보다 높거나 2MiB보다 낮은 경우를 조정합니다. Auto Scaling을 효과적으로 사용하려면 애플리케이션, 인스턴스 유형 및 서비스 요구 사항에 적절한 [트리거를 구성](environments-cfg-autoscaling-triggers.md)합니다. 지연 시간, 디스크 I/O, CPU 사용률 및 요청 수 등 여러 통계를 기준으로 규모를 조정할 수 있습니다.

**Auto Scaling 작업 예약**  
예측 가능한 피크 트래픽 기간에 환경에서 Amazon EC2 인스턴스의 사용을 최적화하려면 [일정에 따라 인스턴스 개수를 변경하도록 Auto Scaling 그룹을 구성](environments-cfg-autoscaling-scheduledactions.md)합니다. 매일 또는 매주 반복되는 그룹 구성에 대한 변경을 예약하거나 일회성 변경을 예약해 사이트에 많은 트래픽을 일으키는 마케팅 이벤트에 대비할 수 있습니다.

**Auto Scaling 상태 확인**  
Auto Scaling은 시작하는 각 Amazon EC2 인스턴스의 상태를 모니터링합니다. 인스턴스가 예기치 않게 종료된 경우 Auto Scaling은 종료를 감지하고 대체 인스턴스를 시작합니다. 로드 밸런서의 상태 확인 메커니즘을 사용하도록 그룹을 구성하려면 [Elastic Beanstalk 환경에 대한 Auto Scaling 상태 확인 설정](environmentconfig-autoscaling-healthchecktype.md) 단원을 참조하세요.

**Topics**
+ [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md)
+ [Elastic Beanstalk에 대한 스팟 인스턴스 환경 지원](environments-cfg-autoscaling-spot.md)
+ [Elastic Beanstalk 환경에 대한 Auto Scaling 트리거](environments-cfg-autoscaling-triggers.md)
+ [Elastic Beanstalk 환경에 대해 예약된 Auto Scaling 작업](environments-cfg-autoscaling-scheduledactions.md)
+ [Elastic Beanstalk 환경에 대한 Auto Scaling 상태 확인 설정](environmentconfig-autoscaling-healthchecktype.md)

# Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션
<a name="environments-cfg-autoscaling-launch-templates"></a>

2024년 10월 1일부로 Amazon EC2 Auto Scaling은 신규 계정에 대해 시작 구성을 더 이상 지원하지 않습니다. 해당 날짜 이전에 생성된 계정에는 시작 구성이 포함되어 있을 수 있습니다.

다음과 같은 이점을 위해 **시작 템플릿**으로 마이그레이션하는 것이 좋습니다.
+ 애플리케이션의 가용성 향상
+ Auto Scaling 그룹의 워크로드 최적화 개선
+ 최신 EC2 및 Auto Scaling 기능에 대한 액세스

자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [시작 구성](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html)을 참조하세요.

## 시작 템플릿의 옵션 설정
<a name="environments-cfg-autoscaling-launch-templates-options"></a>

환경을 시작 구성에서 시작 템플릿으로 마이그레이션하려면 다음 구성 옵션 중 하나를 설정하세요.
+ `RootVolumeType` 옵션이 **gp3**로 설정됩니다. [콘솔](using-features.managing.ec2.console.md) 또는 [네임스페이스](using-features.managing.ec2.namespace.md)를 사용하여 이 옵션을 설정할 수 있습니다.
+ `BlockDeviceMappings` 옵션에는 **gp3**가 포함됩니다. [콘솔](using-features.managing.ec2.console.md) 또는 [네임스페이스](using-features.managing.ec2.namespace.md)를 사용하여 이 옵션을 설정할 수 있습니다.
+ `DisableIMDSv1` 옵션이 **true**로 설정됩니다. [네임스페이스](using-features.managing.ec2.namespace.md)를 사용하여 이 옵션을 설정하는 것이 좋습니다.
+ `EnableSpot` 옵션이 **true**로 설정됩니다. 자세한 내용은 [스팟 인스턴스 활성화](environments-cfg-autoscaling-enable-spot.md) 단원을 참조하십시오.

**중요**  
환경에서 시작 템플릿 사용을 시작한 후에는 원래 시작 템플릿 사용을 트리거한 구성 옵션을 제거하더라도 Elastic Beanstalk가 시작 구성으로 되돌아가지 않습니다.

## 환경에 시작 구성 또는 시작 템플릿이 있는지 확인
<a name="environments-cfg-autoscaling-launch-templates-determine"></a>

CloudFormation 스택 템플릿을 검사하여 환경이 이미 시작 템플릿을 사용하고 있는지 또는 시작 구성을 사용하고 있는지 확인할 수 있습니다.

**환경의 CloudFormation 스택 템플릿을 검사하려면**

1. [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/) AWS CloudFormation 콘솔을 엽니다.

1. 화면 상단의 탐색 모음에서 환경을 생성한 AWS 리전을 선택합니다.

1. CloudFormation 콘솔의 **스택** 페이지에서 **설명** 열을 검사합니다.

   Elastic Beanstalk 환경의 스택을 찾아 선택합니다. CloudFormation에서 환경에 대한 스택 세부 정보를 표시합니다.

1. **스택 세부 정보**에서 **템플릿** 탭을 선택합니다.

   브라우저의 페이지 검색을 사용하여 템플릿 텍스트에서 *launchtemplate* 또는 *launchconfiguration*을 검색할 수 있습니다.

자세한 내용은 *AWS CloudFormation 사용 설명서*의 [스택 정보 보기](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html)를 참조하세요.

## 시작 템플릿에 필요한 권한
<a name="environments-cfg-autoscaling-launch-templates-permissions"></a>

기본 Elastic Beanstalk 관리형 서비스 역할 정책인 [AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy.html)가 시작 템플릿을 생성하고 관리하는 데 필요한 권한을 제공합니다. Elastic Beanstalk는 환경 생성을 비롯한 여러 환경 작업을 완료하기 위해 시작 템플릿을 관리해야 합니다.

Elastic Beanstalk 서비스 역할에 사용자 지정 정책을 연결하는 경우 서비스 역할에 시작 템플릿을 생성하기 위한 다음 권한이 포함되어 있는지 확인합니다. 이러한 권한은 Elastic Beanstalk이 계정 내에서 환경을 정상적으로 생성하고 업데이트할 수 있도록 합니다.

**Amazon EC2 시작 템플릿에 필요한 권한**
+ `ec2:RunInstances`
+ `ec2:CreateLaunchTemplate`
+ `ec2:CreateLaunchTemplateVersions`
+ `ec2:DeleteLaunchTemplate`
+ `ec2:DeleteLaunchTemplateVersions`
+ `ec2:DescribeLaunchTemplate`
+ `ec2:DescribeLaunchTemplateVersions`

다음 예시 IAM 정책에는 이러한 권한이 포함되어 있습니다.

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ec2:RunInstances",
        "ec2:CreateLaunchTemplate",
        "ec2:CreateLaunchTemplateVersions",
        "ec2:DeleteLaunchTemplate",
        "ec2:DeleteLaunchTemplateVersions",
        "ec2:DescribeLaunchTemplate",
        "ec2:DescribeLaunchTemplateVersions"
      ],     
      "Resource": [
                "*"
            ]
     }
  ]
}
```

자세한 내용은 [Elastic Beanstalk 서비스 역할 관리](iam-servicerole.md) 및 [Elastic Beanstalk 사용자 정책 관리](AWSHowTo.iam.managed-policies.md) 섹션을 참조하세요.

## 시작 템플릿에 대한 자세한 정보
<a name="environments-cfg-autoscaling-launch-templates-moreinfo"></a>

시작 템플릿에 대한 자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [Auto Scaling 시작 템플릿](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-templates.html)을 참조하세요.

시작 템플릿으로의 AWS 전환과 템플릿이 제공하는 이점에 대해 자세히 알아보려면 *AWS 컴퓨팅 블로그*의 [ Amazon EC2 Auto Scaling에서 시작 구성에 새 EC2 기능에 대한 지원을 더 이상 추가하지 않음을 참조하세요](https://aws.amazon.com/blogs/compute/amazon-ec2-auto-scaling-will-no-longer-add-support-for-new-ec2-features-to-launch-configurations/).

**중요**  
이 블로그 글에서 언급된 절차를 따르지 않아도 이전 환경을 시작 템플릿으로 전환할 수 있습니다. 기존 Elastic Beanstalk 환경을 시작 템플릿으로 마이그레이션하려면 [시작 템플릿의 옵션 설정](#environments-cfg-autoscaling-launch-templates-options)에 나열된 옵션 중 하나만 설정하세요.

# Elastic Beanstalk에 대한 스팟 인스턴스 환경 지원
<a name="environments-cfg-autoscaling-spot"></a>

이 주제에서는 Elastic Beanstalk 환경에서 스팟 인스턴스의 용량 및 로드 밸런싱을 관리하는 데 사용할 수 있는 구성 옵션을 설명합니다. 또한 이러한 옵션을 구성하는 데 사용할 수 있는 방법에 대한 세부 정보와 예제도 제공합니다. 구성 옵션은 [Elastic Beanstalk 콘솔](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console), [네임스페이스 구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace), [AWS CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-aws-cli) 또는 [EB CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-ebcli)를 사용해 관리할 수 있습니다.

**용량 리밸런싱을 통한 스팟 인스턴스 중단 최소화**  
스팟 인스턴스 중단이 애플리케이션에 미치는 영향을 최소화하려면 Amazon EC2 Auto Scaling에 포함된 용량 리밸런싱 옵션을 활성화합니다.

**중요**  
스팟 인스턴스에 대한 수요는 매 순간 상당히 다를 수 있으며 스팟 인스턴스의 가용성도 사용 가능한 미사용 Amazon EC2 인스턴스의 양에 따라 상당히 다를 수 있습니다. 스팟 인스턴스가 중단될 가능성은 항상 있습니다.

용량 리밸런싱을 활성화하면 EC2가 Auto Scaling 그룹 내의 스팟 인스턴스가 중단되기 전에 자동으로 해당 인스턴스를 교체하려고 시도합니다. 이 기능을 활성화하려면 Elastic Beanstalk 콘솔을 사용해 [Auto Scaling 그룹을 구성합니다](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console). 또는 [aws:autoscaling:asg](command-options-general.md#command-options-general-autoscalingasg) 네임스페이스에 Elastic Beanstalk `EnableCapacityRebalancing` [구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace)을 `true`로 설정할 수 있습니다.

자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [용량 리밸런싱](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html)과 **Amazon EC2 사용 설명서의 [스팟 인스턴스 중단](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html)을 참조하세요.

**이전 인스턴스 유형 및 스팟 인스턴스 지원**  
일부 이전 AWS 계정은 스팟 인스턴스를 지원하지 않는 기본 인스턴스 유형을 Elastic Beanstalk에 제공할 수 있습니다. 스팟 인스턴스 요청을 활성화했을 때 지정한 인스턴스 유형이 스팟을 지원하지 않음 오류가 표시되면, 스팟 인스턴스를 지원하는 인스턴스 유형으로 구성을 업데이트하세요. 스팟 인스턴스 유형을 선택하려면 [스팟 인스턴스 어드바이저](https://aws.amazon.com/ec2/spot/instance-advisor/)를 사용합니다.

**Topics**
+ [환경에 대한 스팟 인스턴스 활성화](environments-cfg-autoscaling-enable-spot.md)
+ [스팟 인스턴스 할당 전략](environments-cfg-autoscaling-spot-allocation-strategy.md)
+ [온디맨드 인스턴스 및 스팟 인스턴스 관리](environments-cfg-autoscaling-spot-and-demand.md)
+ [Elastic Beanstalk 환경에 대한 용량 구성](environments-cfg-autoscaling-configuration-approaches.md)

# 환경에 대한 스팟 인스턴스 활성화
<a name="environments-cfg-autoscaling-enable-spot"></a>

Amazon EC2 스팟 인스턴스를 활용하려면 환경에 `EnableSpot` 옵션을 설정하세요. 그러면 해당 환경의 Auto Scaling 그룹이 Amazon EC2 구매 옵션을 결합하고 온디맨드 인스턴스와 스팟 인스턴스를 혼합하여 유지 관리합니다.

환경에 대해 스팟 인스턴스 요청을 활성화하려면 [Elastic Beanstalk 콘솔](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console), [네임스페이스 구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace), [AWS CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-aws-cli) 또는 [EB CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-ebcli)를 사용할 수 있습니다.

환경에 스팟 인스턴스를 활성화하기 전에 사용 가능한 Auto Scaling, 용량 및 로드 밸런싱 구성 옵션을 숙지하십시오. 워크로드, 인스턴스 중단의 영향 및 요금과 관련된 애플리케이션의 요구 사항은 모두 스팟 인스턴스를 활성화하기 위한 계획에서 중요한 고려 사항입니다.

다음 주제에서는 Auto Scaling 및 용량 관리 옵션과 이러한 옵션의 조합이 환경에 미치는 영향에 대한 세부 정보를 제공합니다. 다양한 옵션과 구성 방법을 알려주고 안내하는 절차와 예제 구성이 마련되어 있습니다. 또한 구성을 관리하고 이벤트에 응답하는 데 도움이 되는 도구와 기능도 제공합니다. 예측 가능한 트래픽 기간을 기반으로 구성에 대한 자동 변경을 예약하고, 트래픽 볼륨과 같은 요인에 응답하도록 트리거를 구성하고, Auto Scaling 모니터링 및 상태 확인을 구성할 수 있습니다.

스팟 인스턴스의 주요 개념과 모범 사례를 포함한 자세한 내용은 *Amazon EC2 사용 설명서*의 [스팟 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) 섹션을 참조하세요.

**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.

# 스팟 인스턴스 할당 전략
<a name="environments-cfg-autoscaling-spot-allocation-strategy"></a>

Elastic Beanstalk 환경에 대해 이 주제에 나열된 할당 전략 중 하나를 선택할 수 있습니다. 환경에 대해 스팟 인스턴스 할당 전략과 관련 속성을 설정하려면 [Elastic Beanstalk 콘솔](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console), [네임스페이스 구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace) 또는 [AWS CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-aws-cli)를 사용하세요.

Amazon EC2는 스팟 인스턴스를 관리하고 프로비저닝하기 위해 *할당 전략*을 적용합니다. 각 할당 전략은 사용 가능한 용량, 가격 및 인스턴스 유형 선택을 처리하도록 정의된 방법에 따라 할당된 인스턴스를 최적화합니다.

Amazon EC2 Auto Scaling은 스팟 인스턴스에 사용할 수 있는 다음과 같은 할당 전략을 제공합니다.
+ **용량 최적화**(기본값)
  + 시작되는 인스턴스 수에 맞게 *최적의 용량*을 가진 풀에 스팟 인스턴스를 요청합니다.
  + 이 전략은 서비스 중단 가능성을 최소화해야 하는 워크로드에 적합합니다.
+ **가격 용량 최적화**
  + *중단 가능성이 가장 낮고* *가격이 가장 낮은* 풀에서 스팟 인스턴스를 요청합니다.
  + 이는 대부분의 스팟 워크로드에 적합한 선택입니다.
+ **용량 최적화 우선시**
  + 사용자가 선택한 *인스턴스 유형 우선 순위*를 최대한 고려하면서 *용량 가용성을 기준을 우선*으로 스팟 인스턴스를 요청합니다. Elastic Beanstalk에 대한 스팟 인스턴스 옵션을 구성할 때 우선순위에 따라 정렬된 인스턴스 유형 목록을 제공할 수 있습니다.
  + 이 전략은 서비스 중단을 최소화해야 하며 특정 인스턴스 유형 우선순위 지정이 중요한 워크로드에 적합합니다.
+ **최저 가격** 
  + 가용 인스턴스가 있는 *가장 저렴한 풀*에서 스팟 인스턴스를 요청합니다.
  + 이 전략을 사용할 때는 인스턴스 가격만 고려하고 용량 가용성은 고려하지 않아 중단율이 높으므로 주의해야 합니다.

각 할당 전략에 대한 자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [다중 인스턴스 유형을 위한 할당 전략](https://docs.aws.amazon.com/autoscaling/ec2/userguide/allocation-strategies.html) 항목을 참조하세요.

환경 요구 사항에 가장 적합한 스팟 인스턴스 할당 전략을 이해하려면 *Amazon EC2 사용 설명서*의 [적절한 스팟 할당 전략 선택](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html#ec2-fleet-allocation-use-cases) 항목을 참조하세요.

# 온디맨드 인스턴스 및 스팟 인스턴스 관리
<a name="environments-cfg-autoscaling-spot-and-demand"></a>

단일 Auto Scaling 그룹 내에서 온디맨드 인스턴스 및 스팟 인스턴스 플릿를 자동으로 확장할 수 있습니다. 다음 옵션을 함께 사용하여 오토 스케일링 서비스가 환경에서 스팟 인스턴스 및 온디맨드 인스턴스를 관리하는 방법을 구성할 수 있습니다.

[Elastic Beanstalk 콘솔](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-console), [네임스페이스 구성 옵션](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-namespace), [AWS CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-aws-cli) 또는 [EB CLI](environments-cfg-autoscaling-configuration-approaches.md#environments-cfg-autoscaling-ebcli)를 사용해 환경에 대해 이러한 옵션을 구성할 수 있습니다.

이러한 옵션은 [aws:ec2:instances](command-options-general.md#command-options-general-ec2instances) 네임스페이스에 속합니다.
+ `EnableSpot` ‐ `true` 이 설정으로 설정하면 환경에 대한 스팟 인스턴스 요청이 활성화됩니다.
+ `SpotFleetOnDemandBase` ‐ 환경 스케일 업에 따라 스팟 인스턴스를 고려하기 전에 Auto Scaling 그룹이 프로비저닝하는 최소 온디맨드 인스턴스 수를 설정합니다.
+ `SpotFleetOnDemandAboveBasePercentage` ‐ Auto Scaling 그룹이 `SpotOnDemandBase` 인스턴스를 초과하여 프로비저닝하는 추가 용량의 일부인 온디맨드 인스턴스의 비율입니다.

앞서 나열된 옵션은 [aws:autoscaling:asg](command-options-general.md#command-options-general-autoscalingasg) 네임스페이스의 다음 옵션과 관련이 있습니다.
+ `MinSize` ‐ Auto Scaling 그룹에 필요한 최소 인스턴스 수입니다.
+ `MaxSize` ‐ Auto Scaling 그룹에 필요한 최대 인스턴스 수입니다.

**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.

## 두 네임스페이스 옵션 세트 모두 적용
<a name="environments-cfg-autoscaling-spot-and-demand-combined"></a>

다음 포인트에서는 이러한 옵션 설정의 조합이 환경의 조정에 미치는 영향을 설명합니다.
+ `MinSize`만이 환경의 초기 용량, 즉 실행하려는 최소 인스턴스 수를 결정합니다.
+  `SpotFleetOnDemandBase`는 초기 용량에 영향을 주지 않습니다. 스팟이 활성화된 경우 이 옵션은 스팟 인스턴스가 고려되기 전에 프로비저닝되는 온디맨드 인스턴스 수를 결정합니다.
+ `SpotFleetOnDemandBase`가 `MinSize`보다 작은 경우를 가정합니다. 그래도 여전히 `MinSize` 인스턴스를 초기 용량으로 가져올 것입니다. 적어도 그 중 `SpotFleetOnDemandBase`는 온디맨드 인스턴스여야 합니다.
+ `SpotFleetOnDemandBase`가 `MinSize`보다 큰 경우를 가정합니다. 환경을 확장함에 따라 적어도 두 값의 차이와 동일한 추가 인스턴스 수를 확보하게 됩니다. 즉, `SpotFleetOnDemandBase` 요구 사항을 만족하기 전에 적어도 추가 `(SpotFleetOnDemandBase - MinSize)` 인스턴스를 온디맨드로 확보하게 됩니다.

**단일 인스턴스 환경**  
프로덕션 환경에서 스팟 인스턴스는 로드 밸런싱 수행 및 확장 가능 환경의 일부로 특히 유용합니다. 단일 인스턴스 환경에서는 스팟을 사용하지 않는 것이 좋습니다. 스팟 인스턴스를 사용할 수 없는 경우 환경의 전체 용량(단일 인스턴스)이 손실될 수 있습니다. 개발 또는 테스트를 위해 여전히 단일 인스턴스 환경에서 스팟 인스턴스를 사용할 수 있습니다. 이 경우 `SpotFleetOnDemandBase`와 `SpotFleetOnDemandAboveBasePercentage`를 모두 0으로 설정해야 합니다. 다른 설정은 온디맨드 인스턴스를 생성합니다.

## 조정 옵션 설정의 예
<a name="environments-cfg-autoscaling-spot-and-demand-examples"></a>

다음 예제에서는 다양한 조정 옵션을 설정하는 다양한 시나리오를 보여줍니다. 모든 예는 스팟 인스턴스 요청이 활성화된 로드 밸런싱 수행 환경이라고 가정합니다.

**Example 1: 초기 용량의 일부인 온디맨드 및 스팟**  <a name="environments-cfg-autoscaling-spot-example1"></a>


**옵션 설정**  

|  **옵션**  |  **네임스페이스**  |  **값**  | 
| --- | --- | --- | 
|  `MinSize`  |  `aws:autoscaling:asg`  |  `10`  | 
|  `MaxSize`  |  `aws:autoscaling:asg`  |  `24`  | 
|  `SpotFleetOnDemandBase`  |  `aws:ec2:instances`  |  `4`  | 
|  `SpotFleetOnDemandAboveBasePercentage`  |  `aws:ec2:instances`  |  `50`  | 

이 예에서 환경은 10개의 인스턴스로 시작합니다. 그 중 7개는 온디맨드(기본 4개, 6개의 50%는 기본 이상)이고 3개는 스팟입니다. 환경은 최대 24개의 인스턴스까지 확장할 수 있습니다. 확장 시, 4개의 기본 온디맨드 인스턴스 이상인 플릿의 온디맨드 부분은 50%로 유지되며 전체적으로 최대 24개까지 확장됩니다. 이 중 14개는 온디맨드(기본 4개, 20개 중 50%는 기본 이상)이고 10개는 스팟입니다.



**Example 2: 모든 온디맨드 초기 용량**  <a name="environments-cfg-autoscaling-spot-example1"></a>


**옵션 설정**  

|  **옵션**  |  **네임스페이스**  |  **값**  | 
| --- | --- | --- | 
|  `MinSize`  |  `aws:autoscaling:asg`  |  `4`  | 
|  `MaxSize`  |  `aws:autoscaling:asg`  |  `24`  | 
|  `SpotFleetOnDemandBase`  |  `aws:ec2:instances`  |  `4`  | 
|  `SpotFleetOnDemandAboveBasePercentage`  |  `aws:ec2:instances`  |  `50`  | 

이 예에서 환경은 네 개의 인스턴스로 시작하며 모두 온디맨드 인스턴스입니다. 환경은 최대 24개의 인스턴스까지 확장할 수 있습니다. 확장 시, 4개의 기본 온디맨드 인스턴스 이상인 플릿의 온디맨드 부분은 50%로 유지되며 전체적으로 최대 24개까지 확장됩니다. 이 중 14개는 온디맨드(기본 4개, 20개 중 50%는 기본 이상)이고 10개는 스팟입니다.

**Example 3: 초기 용량을 초과하는 추가 온디맨드 기본**  <a name="environments-cfg-autoscaling-spot-example1"></a>


**옵션 설정**  

|  **옵션**  |  **네임스페이스**  |  **값**  | 
| --- | --- | --- | 
|  `MinSize`  |  `aws:autoscaling:asg`  |  `3`  | 
|  `MaxSize`  |  `aws:autoscaling:asg`  |  `24`  | 
|  `SpotFleetOnDemandBase`  |  `aws:ec2:instances`  |  `4`  | 
|  `SpotFleetOnDemandAboveBasePercentage`  |  `aws:ec2:instances`  |  `50`  | 

이 예에서 환경은 세 개의 인스턴스로 시작하며 모두 온디맨드 인스턴스입니다. 환경은 최대 24개의 인스턴스까지 확장할 수 있습니다. 초기의 세 개 인스턴스에 처음 추가되는 인스턴스는 네 개의 기본 온디맨드 인스턴스를 완성하기 위한 온디맨드 인스턴스입니다. 계속 확장됨에 따라, 4개의 기본 온디맨드 인스턴스 이상인 플릿의 온디맨드 부분은 50%로 유지되며 전체적으로 최대 24개까지 확장됩니다. 이 중 14개는 온디맨드(기본 4개, 20개 중 50%는 기본 이상)이고 10개는 스팟입니다.

# Elastic Beanstalk 환경에 대한 용량 구성
<a name="environments-cfg-autoscaling-configuration-approaches"></a>

이 주제에서는 Elastic Beanstalk 환경에 맞게 Auto Scaling을 구성하는 다양한 접근 방식을 설명합니다. Elastic Beanstalk 콘솔, EB CLI AWS CLI, 또는 네임스페이스 옵션을 사용할 수 있습니다.

**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.

## 콘솔을 사용한 구성
<a name="environments-cfg-autoscaling-console"></a>

[Elastic Beanstalk 콘솔](environments-console.md)에서 환경의 **구성** 페이지에 있는 **용량**을 편집하여 Auto Scaling 그룹의 용량 관리를 구성할 수 있습니다.

**Elastic Beanstalk 콘솔에서 Auto Scaling 그룹 용량을 구성하는 방법**

1. [Elastic Beanstalk 콘솔](https://console.aws.amazon.com/elasticbeanstalk)을 열고 **리전** 목록에서를 선택합니다 AWS 리전.

1. 탐색 창에서 **환경**을 선택한 다음 목록에서 환경의 이름을 선택합니다.

1. 탐색 창에서 **구성**을 선택합니다.

1. [**용량**] 구성 범주에서 [**편집**]을 선택합니다.

1. **Auto Scaling 그룹(Auto Scaling group)** 섹션에서 다음 설정을 구성합니다.
   + **환경 유형(Environment type)** - **로드 밸런싱 수행(Load balanced)**을 선택합니다.
   + **최소 인스턴스(Min instances)** - 항상 그룹에 있어야 하는 최소 EC2 인스턴스 수입니다. 그룹은 최소 개수로 시작해 확장 트리거 조건이 충족되면 인스턴스를 추가합니다.
   + **최대 인스턴스(Max instances)** - 항상 그룹에 있어야 하는 최대 EC2 인스턴스 수입니다.
**참고**  
롤링 업데이트를 사용하는 경우 최대 인스턴스 개수는 롤링 업데이트에 대한 [**작동 중인 최소 인스턴스 수** 설정](using-features.rollingupdates.md#rollingupdates-configure)보다 커야 합니다.
   + **플릿 구성** - 기본값은 **온디맨드 인스턴스**입니다. *스팟 인스턴스* 요청을 활성화하려면 **결합된 구매 옵션 및 인스턴스**를 선택합니다.
**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.

     *스팟 인스턴스* 요청을 활성화하도록 선택하면 다음의 옵션이 활성화됩니다.
     + **스팟 할당 전략** - 가용 용량, 가격, 인스턴스 유형 선택을 기준으로 환경 내 스팟 인스턴스를 관리하고 프로비저닝하는 데 사용하는 방식을 결정합니다. *용량 최적화*(기본값), *가격 용량 최적화*, *용량 최적화 최우선* 또는 *최저 가격* 중에서 선택합니다. 각 할당 전략에 대한 설명과 자세한 내용은 [스팟 인스턴스 할당 전략](environments-cfg-autoscaling-spot-allocation-strategy.md) 항목을 참조하세요.
     + **최대 스팟 가격** - 스팟 인스턴스에 대한 최고 가격 옵션 권장 사항에 대해서는 *Amazon EC2 사용 설명서*의 [스팟 인스턴스 요금 기록](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html)을 참조하세요.
     + **온디맨드 기본** - 환경 확장에 따라 스팟 인스턴스를 고려하기 전에 Auto Scaling 그룹이 프로비저닝하는 최소 온디맨드 인스턴스 수입니다.
     + **온디맨드 기본 초과** - Auto Scaling 그룹이 온디맨드 인스턴스를 초과하여 프로비저닝하는 추가 용량의 일부인 온디맨드 인스턴스의 비율입니다.
**참고**  
**온디맨드 기본** 및 **온디맨드 기본 초과** 옵션은 앞에서 나열한 **최소** 및 **최대** *인스턴스*와 연관이 있습니다. 이러한 옵션에 대한 자세한 정보와 예시는 [Elastic Beanstalk에 대한 스팟 인스턴스 환경 지원](environments-cfg-autoscaling-spot.md) 단원을 참조하세요.
     + **용량 리밸런싱** - 이 옵션은 Auto Scaling 그룹에 스팟 인스턴스가 하나 이상 있는 경우에만 관련이 있습니다. 이 기능을 활성화하면 EC2는 Auto Scaling 그룹의 스팟 인스턴스가 중단되기 전에 인스턴스를 자동으로 교체하여 스팟 인스턴스의 애플리케이션 중단을 최소화하려고 시도합니다. 자세한 내용은 *Amazon EC2 Auto Scaling 사용 설명서*의 [용량 리밸런싱](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html)을 참조하세요.
   + **아키텍처** - EC2 인스턴스의 프로세서 아키텍처입니다. 프로세서 아키텍처는 다음 필드에서 선택 가능한 EC2 인스턴스 유형을 결정합니다.
   + **인스턴스 유형** - 애플리케이션을 실행하기 위해 시작되는 Amazon EC2 인스턴스의 유형입니다. 자세한 내용은 [인스턴스 유형](using-features.managing.ec2.console.md#using-features.managing.ec2.instancetypes)을 참조하세요.
   + **AMI ID** - 사용자 환경에서 Amazon EC2 인스턴스를 시작하기 위해 Elastic Beanstalk에서 사용하는 머신 이미지입니다. 자세한 내용은 [AMI ID](using-features.managing.ec2.console.md#using-features.managing.ec2.customami) 단원을 참조하세요.
   + **가용 영역(Availability Zones)** - 환경의 인스턴스를 분산할 가용 영역의 수를 선택합니다. 기본적으로 Auto Scaling 그룹은 사용 가능한 모든 영역에서 균일하게 인스턴스를 시작합니다. 인스턴스를 더 적은 수의 영역에 집중시키려면 사용할 영역 수를 선택합니다. 프로덕션 환경의 경우 가용 영역 하나를 사용할 수 없을 때 애플리케이션을 사용할 수 있도록 가용 영역을 두 개 이상 사용합니다.
   + **배치(Placement)**(선택 사항) - 사용할 가용 영역을 선택합니다. 인스턴스를 특정 영역의 리소스에 연결해야 하는 경우 또는 특정 영역에서만 사용할 수 있는 [예약 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-on-demand-reserved-instances.html)를 구입한 경우에 이 설정을 사용합니다. 사용자 지정 VPC에서 환경을 시작한 경우에는 이 옵션을 구성할 수 없습니다. 사용자 지정 VPC에서 환경에 할당한 서브넷의 가용 영역을 선택합니다.
   + **조정 쿨다운(Scaling cooldown)** - 조정 후 계속해서 트리거를 평가하기 전에 인스턴스가 시작되거나 종료될 때까지 대기하는 시간(초)입니다. 자세한 내용은 [조정 쿨다운](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html)을 참조하세요.

1. 변경 사항을 저장하려면 페이지 하단에서 **적용**을 선택합니다.

## 네임스페이스 옵션을 이용한 구성
<a name="environments-cfg-autoscaling-namespace"></a>

Elastic Beanstalk는 [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) 및 [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances)라는 두 네임스페이스에서 Auto Scaling 설정에 대한 [구성 옵션](command-options.md)을 제공합니다.

### aws:autoscaling:asg 네임스페이스
<a name="environments-cfg-autoscaling-namespace.asg"></a>

[`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) 네임스페이스는 전체 확장 및 가용성에 대한 옵션을 제공합니다.

다음 [구성 파일](ebextensions.md) 예에서는 2 \$1 4개의 인스턴스, 특정 가용 영역 및 12분(720초)의 휴지 기간을 사용하도록 Auto Scaling 그룹을 구성합니다. 스팟 인스턴스에 대해 [용량 리밸런싱](https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html)을 활성화합니다. 이 `EnableCapacityRebalancing` 옵션은 이 뒤에 나오는 구성 파일 예제에 보이는 것과 같이 [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances) 네임스페이스의 `EnableSpot`이 `true`로 설정되었을 경우에만 적용됩니다.

```
option_settings:
  aws:autoscaling:asg:
    Availability Zones: Any
    Cooldown: '720'
    Custom Availability Zones: 'us-west-2a,us-west-2b'
    MaxSize: '4'
    MinSize: '2'
    EnableCapacityRebalancing: true
```

### aws:ec2:instances 네임스페이스
<a name="environments-cfg-autoscaling-namespace.instances"></a>

**참고**  
환경 구성을 업데이트하고 `InstanceTypes` 옵션에서 하나 이상의 인스턴스 유형을 제거하면 Elastic Beanstalk는 제거된 인스턴스 유형에서 실행 중인 모든 Amazon EC2 인스턴스를 종료합니다. 그러면 환경의 Auto Scaling 그룹에서 필요에 따라 현재 지정된 인스턴스 유형을 사용하여 원하는 용량을 완료하는 데 필요한 새 인스턴스를 시작합니다.

[`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances) 네임스페이스는 스팟 인스턴스 관리를 포함하여 환경의 인스턴스와 관련된 옵션을 제공합니다. 이 옵션은 [`aws:autoscaling:launchconfiguration`](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) 및 [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg)를 보완합니다.

다음 [구성 파일](ebextensions.md) 예에서는 환경에 대한 스팟 인스턴스 요청을 활성화하도록 환경을 생성하고 Auto Scaling 그룹을 구성합니다. 사용할 수 있는 세 가지 인스턴스 유형을 지정합니다. 기본 용량에 최소 하나의 온디맨드 인스턴스를 사용하며, 모든 추가 용량에 대해 온디맨드 인스턴스 33% 유지가 사용됩니다.

이 구성은 [스팟 할당 전략](environments-cfg-autoscaling-spot-allocation-strategy.md)을 `capacity-optimized-prioritized`로 설정합니다. 이 특정 할당 전략은 `InstanceTypes` 옵션에 지정된 인스턴스 유형의 순서에 따라 풀에서 인스턴스 시작의 우선 순위를 지정합니다. `SpotAllocationStrategy`를 지정하지 않으면 기본적으로 `capacity-optimized`로 설정됩니다.

```
option_settings:
  aws:ec2:instances:
    EnableSpot: true
    InstanceTypes: 't2.micro,t3.micro,t3.small'    
    SpotAllocationStrategy: capacity-optimized-prioritized
    SpotFleetOnDemandBase: '1'
    SpotFleetOnDemandAboveBasePercentage: '33'
```

스팟 인스턴스 유형을 선택하려면 [스팟 인스턴스 어드바이저](https://aws.amazon.com/ec2/spot/instance-advisor/)를 사용합니다.

**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.

## 를 사용한 구성 AWS CLI
<a name="environments-cfg-autoscaling-aws-cli"></a>

이 섹션에서는 AWS CLI [create-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-environment.html) 명령을 사용하여이 섹션에 설명된 Auto Scaling 및 용량 옵션으로 환경을 구성하는 방법의 예를 제공합니다. 이전 [네임스페이스 구성 옵션](#environments-cfg-autoscaling-namespace) 섹션에 설명된 대로 [`aws:autoscaling:asg`](command-options-general.md#command-options-general-autoscalingasg) 및 [`aws:ec2:instances`](command-options-general.md#command-options-general-ec2instances)에 대한 네임스페이스 설정도이 예제로 구성되어 있다는 것을 살펴볼 수 있습니다.

 AWS 명령줄 인터페이스는 Elastic Beanstalk 환경을 생성하고 구성하는 명령을 제공합니다. `--option-settings` 옵션을 사용하면 Elastic Beanstalk에서 지원하는 네임스페이스 옵션을 전달할 수 있습니다. 즉, 앞에서 설명한 [네임스페이스 구성 옵션을](#environments-cfg-autoscaling-namespace) 적용 가능한 AWS CLI 명령으로 전달하여 Elastic Beanstalk 환경을 구성할 수 있습니다.

**참고**  
[update-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-environment.html) 명령과 함께 `--option-settings`를 사용하여 네임스페이스 옵션을 추가하거나 업데이트할 수도 있습니다. 환경에서 네임스페이스 옵션을 제거해야 하는 경우 **update-environment** 명령을 `--options-to-remove`항목과 함께 사용합니다.

다음 예제에서는 새 환경을 생성합니다. 전달되는 옵션에 대한 맥락은 이전에 설명된 주제인 [네임스페이스 구성 옵션](#environments-cfg-autoscaling-namespace)을 참조하세요.

[aws:autoscaling:launchconfiguration](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) 네임스페이스`IamInstanceProfile`의 첫 번째 옵션 은 Elastic Beanstalk [인스턴스 프로파일](concepts-roles-instance.md)입니다. 새 환경을 생성할 때 필요합니다.

**Example — Auto Scaling 옵션을 사용하는 create-environment(네임스페이스 옵션 인라인)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12" \
--option-settings \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role
Namespace=aws:autoscaling:asg,OptionName=Availability Zones,Value=Any \
Namespace=aws:autoscaling:asg,OptionName=Cooldown,Value=720 \
Namespace=aws:autoscaling:asg,OptionName=Custom Availability Zones,Value=us-west-2a,us-west-2b \
Namespace=aws:autoscaling:asg,OptionName=MaxSize,Value=4 \
Namespace=aws:autoscaling:asg,OptionName=MinSize,Value=2 \
Namespace=aws:autoscaling:asg,OptionName=EnableCapacityRebalancing,Value=true \
Namespace=aws:ec2:instances,OptionName=EnableSpot,Value=true \
Namespace=aws:ec2:instances,OptionName=InstanceTypes,Value=t2.micro,t3.micro,t3.small \
Namespace=aws:ec2:instances,OptionName=SpotAllocationStrategy,Value=capacity-optimized-prioritized \
Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandBase,Value=1 \
Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandAboveBasePercentage,Value=33
```





**중요**  
`EnableSpot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.





대안으로, 네임스페이스 옵션을 인라인으로 포함하는 대신 `options.json` 파일을 사용하여 해당 옵션을 지정하십시오.

**Example — Auto Scaling 옵션을 사용하는 create-environment(`options.json` 파일의 네임스페이스 옵션)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12"
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
    {
        "Namespace": "aws:autoscaling:launchconfiguration",
        "OptionName": "IamInstanceProfile",
        "Value": "aws-elasticbeanstalk-ec2-role"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Availability Zones",
        "Value": "Any"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Cooldown",
        "Value": "720"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "Custom Availability Zones",
        "Value": "us-west-2a,us-west-2b"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MaxSize",
        "Value": "4"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MinSize",
        "Value": "2"
    },
    {
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "EnableCapacityRebalancing",
        "Value": "true"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "EnableSpot",
        "Value": "true"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "InstanceTypes",
        "Value": "t2.micro,t3.micro,t3.small"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotAllocationStrategy",
        "Value": "capacity-optimized-prioritized"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotFleetOnDemandBase",
        "Value": "1"
    },
    {
        "Namespace": "aws:ec2:instances",
        "OptionName": "SpotFleetOnDemandAboveBasePercentage",
        "Value": "33"
    }
]
```

## EB CLI를 사용하여 구성
<a name="environments-cfg-autoscaling-ebcli"></a>

[**eb create**](eb3-create.md) 명령을 사용하여 환경을 생성하면 사용자 환경의 Auto Scaling 그룹과 관련된 몇 가지 옵션을 지정할 수 있습니다. 이러한 몇 개의 옵션을 통해 환경의 용량을 제어할 수 있습니다.

`--single`  
Amazon EC2 인스턴스 하나가 있고 로드 밸런서는 없는 환경을 생성합니다. 이 옵션을 사용하지 않으면 생성된 환경에 로드 밸런서가 추가됩니다.

`--enable-spot`  
환경에 대한 스팟 인스턴스 요청을 활성화합니다.  
`enable-spot` 옵션 설정으로 인해 Elastic Beanstalk이 시작 구성을 사용하는 기존 환경을 시작 템플릿으로 마이그레이션할 수 있습니다. 이 작업을 위해서는 시작 템플릿을 관리할 수 있는 권한이 필요합니다. 이러한 권한은 관리형 정책에 포함되어 있습니다. 관리형 정책 대신 사용자 지정 정책을 사용하는 경우, 환경 구성을 업데이트할 때 환경 생성 또는 업데이트가 실패할 수 있습니다. 자세한 내용 및 기타 고려 사항은 [Elastic Beanstalk 환경의 시작 템플릿으로의 마이그레이션](environments-cfg-autoscaling-launch-templates.md) 섹션을 참조하세요.
[**eb create**](eb3-create.md) 명령에 대한 다음 옵션은 `--enable-spot`과 함께 사용해야 합니다.    
`--instance-types`  
환경에서 사용할 Amazon EC2 인스턴스 유형을 나열합니다.  
`--spot-max-price`  
스팟 인스턴스에 대해 지불하려는 단위 시간당 최고 가격(미국 달러)입니다. 스팟 인스턴스에 대한 최고 가격 옵션 권장 사항에 대해서는 *Amazon EC2 사용 설명서*의 [스팟 인스턴스 요금 기록](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html)을 참조하세요.  
`--on-demand-base-capacity`  
환경 스케일 업에 따라 스팟 인스턴스를 고려하기 전에 Auto Scaling 그룹이 프로비저닝하는 최소 온디맨드 인스턴스 수입니다.  
`--on-demand-above-base-capacity`  
Auto Scaling 그룹이 `--on-demand-base-capacity` 옵션에 지정된 인스턴스 수를 초과하여 Auto Scaling 그룹에 프로비저닝하는 추가 용량의 일부인 온디맨드 인스턴스의 비율입니다.

다음 예에서는 새 환경에 대한 스팟 인스턴스 요청을 활성화하도록 환경을 생성하고 Auto Scaling 그룹을 구성합니다. 이 예제의 경우 사용 가능한 인스턴스 유형이 세 가지 있습니다.

```
$ eb create --enable-spot --instance-types "t2.micro,t3.micro,t3.small"
```

**중요**  
`--instance-type`(‘s’ 없음)이라고 부르는 유사한 이름의 옵션이 있어 온디맨드 인스턴스를 처리할 때에만 EB CLI가 인식할 수 있습니다. `--instance-type`("s" 없음)을 `--enable-spot` 옵션과 함께 사용하지 마세요. 함께 사용하면 EB CLI에서 이를 무시합니다. 그 대신 `--instance-types`("s" 포함)를 `--enable-spot` 옵션과 함께 사용합니다.

# Elastic Beanstalk 환경에 대한 Auto Scaling 트리거
<a name="environments-cfg-autoscaling-triggers"></a>

Elastic Beanstalk 환경의 Auto Scaling 그룹은 두 가지 Amazon CloudWatch 경보를 사용하여 조정 작업을 트리거합니다. 기본 트리거는 각 인스턴스의 평균 아웃바운드 네트워크 트래픽이 5분 이상 6MB보다 높거나 2MB보다 낮은 경우를 조정합니다. Amazon EC2 Auto Scaling을 효과적으로 사용하려면 애플리케이션, 인스턴스 유형 및 서비스 요구 사항에 적절한 트리거를 구성합니다. 지연 시간, 디스크 I/O, CPU 사용률 및 요청 수 등 여러 통계를 기준으로 조정할 수 있습니다.

CloudWatch 측정치 및 경보에 대한 자세한 내용은 *Amazon CloudWatch 사용 설명서*의 [Amazon CloudWatch 개념](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html)을 참조하세요.

## Auto Scaling 트리거 구성
<a name="environments-cfg-autoscaling-triggers-console"></a>

Elastic Beanstalk 콘솔에서 환경의 Auto Scaling 그룹 내 인스턴스 수를 조정하는 트리거를 구성할 수 있습니다.

**Elastic Beanstalk 콘솔에서 트리거를 구성하려면**

1. [Elastic Beanstalk 콘솔](https://console.aws.amazon.com/elasticbeanstalk)을 열고 **리전** 목록에서를 선택합니다 AWS 리전.

1. 탐색 창에서 **환경**을 선택한 다음 목록에서 환경의 이름을 선택합니다.

1. 탐색 창에서 **구성**을 선택합니다.

1. [**용량**] 구성 범주에서 [**편집**]을 선택합니다.

1. **조정 트리거** 섹션에서 다음 설정을 구성합니다.
   + **측정치(Metric)** - Auto Scaling 트리거에 사용되는 측정치입니다.
   + **통계(Statistic)** - 트리거가 사용해야 하는 통계 계산입니다(예: `Average`).
   + **단위(Unit)** - 트리거 측정의 단위입니다(예: **바이트**).
   + **기간(Period)** - Amazon CloudWatch가 트리거의 측정치를 측정하는 빈도를 지정합니다.
   + **위반 기간(Breach duration)** - 조정 작업을 트리거하기 전 측정치가 상한 또는 하한 임계값을 벗어날 수 있는 시간(분)입니다.
   + **상위 임계값(Upper threshold)** - 위반 기간 중 측정치가 이 값보다 커지면 조정 작업이 트리거됩니다.
   + **확장 증분(Scale up increment)** - 조정 활동 수행 시 추가할 Amazon EC2 인스턴스 수입니다.
   + **하위 임계값(Lower threshold)** - 위반 기간 중 측정치가 이 값보다 작아지면 조정 작업이 트리거됩니다.
   + **축소 증분(Scale down increment)** - 조정 활동 수행 시 제거할 Amazon EC2 인스턴스 수입니다.

1. 변경 사항을 저장하려면 페이지 하단에서 **적용**을 선택합니다.

## aws:autoscaling:trigger 네임스페이스
<a name="environments-cfg-autoscaling-triggers-namespace"></a>

Elastic Beanstalk는 [`aws:autoscaling:trigger`](command-options.md) 네임스페이스의 Auto Scaling 설정에 대한 [구성 옵션](command-options-general.md#command-options-general-autoscalingtrigger)을 제공합니다. 이 네임스페이스의 설정은 해당 설정이 적용되는 리소스별로 구성됩니다.

```
option_settings:
  AWSEBAutoScalingScaleDownPolicy.aws:autoscaling:trigger:
    LowerBreachScaleIncrement: '-1'
  AWSEBAutoScalingScaleUpPolicy.aws:autoscaling:trigger:
    UpperBreachScaleIncrement: '1'
  AWSEBCloudwatchAlarmHigh.aws:autoscaling:trigger:
    UpperThreshold: '6000000'
  AWSEBCloudwatchAlarmLow.aws:autoscaling:trigger:
    BreachDuration: '5'
    EvaluationPeriods: '1'
    LowerThreshold: '2000000'
    MeasureName: NetworkOut
    Period: '5'
    Statistic: Average
    Unit: Bytes
```

# Elastic Beanstalk 환경에 대해 예약된 Auto Scaling 작업
<a name="environments-cfg-autoscaling-scheduledactions"></a>

예측 가능한 피크 트래픽 기간에 환경에서 Amazon EC2 인스턴스의 사용을 최적화하려면 일정에 따라 인스턴스 개수를 변경하도록 Amazon EC2 Auto Scaling 그룹을 구성합니다. 매일 오전에 확장되고 트래픽이 낮은 야간에는 축소되는 반복 작업으로 환경을 구성할 수 있습니다. 예를 들어 제한된 기간 동안 사이트에 대한 트래픽을 높이는 마케팅 이벤트가 있는 경우 이벤트 시작 시 확장되는 일회성 이벤트 하나와 이벤트 종료 시 축소되는 또 다른 이벤트 하나를 예약할 수 있습니다.

활성 예약 작업은 환경당 최대 120개까지 정의할 수 있습니다. 또한 Elastic Beanstalk에서는 만료된 예약 작업을 최대 150개까지 보관하므로 설정을 업데이트해 다시 사용할 수 있습니다.

## 예약 작업 구성
<a name="environments-cfg-autoscaling-scheduledactions-console"></a>

Elastic Beanstalk 콘솔에서 환경의 Auto Scaling 그룹에 대한 예약 작업을 생성할 수 있습니다.

**Elastic Beanstalk 콘솔에서 예약된 작업을 구성하려면**

1. [Elastic Beanstalk 콘솔](https://console.aws.amazon.com/elasticbeanstalk)을 열고 **리전** 목록에서를 선택합니다 AWS 리전.

1. 탐색 창에서 **환경**을 선택한 다음 목록에서 환경의 이름을 선택합니다.

1. 탐색 창에서 **구성**을 선택합니다.

1. [**용량**] 구성 범주에서 [**편집**]을 선택합니다.

1. [**시간 기반 조정**] 섹션에서 [**예약된 작업 추가**]를 선택합니다.

1. 다음 예약된 작업 설정을 채웁니다.
   + **이름(Name)** - 최대 255자의 영숫자를 공백 없이 입력해 고유한 이름을 지정합니다.
   + **인스턴스(Instances)** - Auto Scaling 그룹에 적용할 최소 및 최대 인스턴스 개수를 선택합니다.
   + **원하는 용량**(선택 사항) - Auto Scaling 그룹에 원하는 초기 용량을 설정합니다. 예약 작업이 적용되면 트리거가 설정을 기반으로 원하는 용량을 조정합니다.
   + **발생(Occurrence)** - 일정에 따라 조정 작업을 반복하려면 **반복(Recurring)**을 선택합니다.
   + **시작 시간(Start time)** - 일회성 작업의 경우 작업을 실행할 날짜와 시간을 선택합니다.

     반복 작업의 경우 시작 시간은 선택 사항입니다. 이 옵션을 지정하여 작업이 수행되는 가장 빠른 시간을 선택합니다. 이 시간이 지나면 **반복**에 따라 작업이 반복됩니다.
   + **반복 시간(Recurrence)** - [Cron](http://en.wikipedia.org/wiki/Cron#CRON_expression) 식을 사용하여 예약된 작업을 실행할 빈도를 지정합니다. 예를 들어 `30 6 * * 2`는 매주 화요일 오전 6:30 UTC에 작업을 실행합니다.
   + **종료 시간(End time)**(선택 사항) - 반복 작업에 대한 옵션입니다. 종료 시간이 지정되면 작업이 **반복** 표현식에 따라 반복되며, 이 시간 이후에는 다시 수행되지 않습니다.

     예약 작업이 종료됐을 때 Auto Scaling은 이전 설정으로 자동으로 되돌아가지 않습니다. 필요에 따라 두 번째 예약 작업은 Auto Scaling을 원래 설정으로 되돌리도록 구성할 수 있습니다.

1. [**추가**]를 선택합니다.

1. 변경 사항을 저장하려면 페이지 하단에서 **적용**을 선택합니다.
**참고**  
예약된 작업은 적용될 때까지 저장되지 않습니다.

## aws:autoscaling:scheduledaction 네임스페이스
<a name="environments-cfg-autoscaling-scheduledactions-namespace"></a>

많은 수의 예약 작업을 구성해야 하는 경우 [구성 파일](ebextensions.md) 또는 [Elastic Beanstalk API](environment-configuration-methods-after.md#configuration-options-after-awscli-commandline)를 사용하여 YAML 또는 JSON 파일의 구성 옵션 변경 사항을 적용할 수 있습니다. 또한 이러한 방법을 통해 [`Suspend` 옵션](command-options-general.md#command-options-general-autoscalingscheduledaction)에 액세스해 반복 예약 작업을 일시적으로 비활성화할 수 있습니다.

**참고**  
콘솔 외부에서 예약 작업 구성 옵션을 사용하는 경우에는 ISO 8601 시간 형식을 사용하여 시작 및 종료 시간을 UTC로 지정합니다. 예를 들면 2015-04-28T04:07:02Z입니다. ISO 8601 시간 형식에 대한 자세한 내용은 [날짜 및 시간 형식](http://www.w3.org/TR/NOTE-datetime)을 참조하십시오. 날짜는 예약된 모든 작업에서 고유해야 합니다.

Elastic Beanstalk에서는 [`aws:autoscaling:scheduledaction`](command-options-general.md#command-options-general-autoscalingscheduledaction) 네임스페이스에 예약 작업 설정에 대한 구성 옵션을 제공합니다. `resource_name` 필드를 사용해 예약 작업의 이름을 지정합니다.

**Example Scheduled-scale-up-specific-time-long.config**  
이 구성 파일은 Elastic Beanstalk가 2015-12-12T00:00:00Z에 5개에서 10개의 인스턴스를 스케일 아웃하도록 지시합니다.  

```
option_settings:
  - namespace: aws:autoscaling:scheduledaction
    resource_name: ScheduledScaleUpSpecificTime
    option_name: MinSize
    value: '5'
  - namespace: aws:autoscaling:scheduledaction
    resource_name: ScheduledScaleUpSpecificTime
    option_name: MaxSize
    value: '10'
  - namespace: aws:autoscaling:scheduledaction
    resource_name: ScheduledScaleUpSpecificTime
    option_name: DesiredCapacity
    value: '5'
  - namespace: aws:autoscaling:scheduledaction
    resource_name: ScheduledScaleUpSpecificTime
    option_name: StartTime
    value: '2015-12-12T00:00:00Z'
```

**Example Scheduled-scale-up-specific-time.config**  
EB CLI 또는 구성 파일에 간편 구문을 사용하려면 네임스페이스 앞에 리소스 이름을 추가합니다.  

```
option_settings:
  ScheduledScaleUpSpecificTime.aws:autoscaling:scheduledaction:
    MinSize: '5'
    MaxSize: '10'
    DesiredCapacity: '5'
    StartTime: '2015-12-12T00:00:00Z'
```

**Example Scheduled-scale-down-specific-time.config**  
이 구성 파일은 Elastic Beanstalk가 2015-12-12T07:00:00Z에 스케일 인을 수행하도록 지시합니다.  

```
option_settings:
  ScheduledScaleDownSpecificTime.aws:autoscaling:scheduledaction:
    MinSize: '1'
    MaxSize: '1'
    DesiredCapacity: '1'
    StartTime: '2015-12-12T07:00:00Z'
```

**Example Scheduled-periodic-scale-up.config**  
이 구성 파일은 Elastic Beanstalk가 매일 오전 9시에 스케일 아웃을 수행하도록 지시합니다. 이 작업은 2015년 5월 14일에 시작하여 2016년 1월 12일에 종료하도록 예약되어 있습니다.  

```
option_settings:
  ScheduledPeriodicScaleUp.aws:autoscaling:scheduledaction:
    MinSize: '5'
    MaxSize: '10'
    DesiredCapacity: '5'
    StartTime: '2015-05-14T07:00:00Z'
    EndTime: '2016-01-12T07:00:00Z'
    Recurrence: 0 9 * * *
```

**Example Scheduled-periodic-scale-down.config**  
이 구성 파일은 Elastic Beanstalk가 매일 오후 6시에 실행 중인 인스턴스가 없도록 스케일 인을 수행하도록 지시합니다. 애플리케이션이 영업 시간 외에는 대부분 유휴 상태인 경우에도 비슷하게 예약된 작업을 생성할 수 있습니다. 애플리케이션이 영업 시간이 아닐 때 실행되지 않도록 만들려면 `MaxSize`를 `0`로 변경합니다.  

```
option_settings:
  ScheduledPeriodicScaleDown.aws:autoscaling:scheduledaction:
    MinSize: '0'
    MaxSize: '1'
    DesiredCapacity: '0'
    StartTime: '2015-05-14T07:00:00Z'
    EndTime: '2016-01-12T07:00:00Z'
    Recurrence: 0 18 * * *
```

**Example Scheduled-weekend-scale-down.config**  
이 구성 파일은 Elastic Beanstalk가 금요일 오후 6시마다 스케일 인을 수행하도록 지시합니다. 애플리케이션이 주말 동안 많은 트래픽을 받지 못한다면 비슷한 예약된 작업을 만들 수 있습니다.  

```
option_settings:
  ScheduledWeekendScaleDown.aws:autoscaling:scheduledaction:
    MinSize: '1'
    MaxSize: '4'
    DesiredCapacity: '1'
    StartTime: '2015-12-12T07:00:00Z'
    EndTime: '2016-01-12T07:00:00Z'
    Recurrence: 0 18 * * 5
```

# Elastic Beanstalk 환경에 대한 Auto Scaling 상태 확인 설정
<a name="environmentconfig-autoscaling-healthchecktype"></a>

Amazon EC2 Auto Scaling은 시작하는 각 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 상태를 모니터링합니다. 인스턴스가 예기치 않게 종료된 경우 Auto Scaling은 종료를 감지하고 대체 인스턴스를 시작합니다. 기본적으로 사용자의 환경을 위해 생성된 Auto Scaling 그룹에는 [Amazon EC2 상태 확인](https://docs.aws.amazon.com/autoscaling/latest/userguide/healthcheck.html)이 사용됩니다. 환경의 인스턴스가 Amazon EC2 상태 확인에 실패하면 Auto Scaling이 인스턴스를 중단하고 바꿉니다.

Amazon EC2 상태 확인은 인스턴스의 상태만 다루며, 애플리케이션, 서버 또는 인스턴스에서 실행되는 모든 Docker 컨테이너의 상태는 다루지 않습니다. 애플리케이션이 중단되었지만 애플리케이션이 실행되는 인스턴스가 여전히 정상일 경우 인스턴스가 로드 밸런서에서 제외될 수 있으나 Auto Scaling이 자동으로 바꾸지는 않습니다. 문제를 해결하려면 기본 동작을 수행하는 것이 좋습니다. 애플리케이션이 중단되는 즉시 Auto Scaling에서 인스턴스를 바꾸면 시작 후 곧바로 애플리케이션이 중단되었더라도 사용자는 무언가 잘못되었음을 깨닫지 못할 수 있습니다.

Auto Scaling에서 애플리케이션이 응답을 중지한 인스턴스를 바꾸게 하려는 경우 [구성 파일](ebextensions.md)을 사용하여 Auto Scaling 그룹에서 Elastic Load Balancing 상태 확인을 사용하도록 구성할 수 있습니다. 다음 예에서는 그룹이 로드 밸런서의 상태 확인은 물론 Amazon EC2 상태 확인도 사용하여 인스턴스 상태를 확인하도록 설정합니다.

**Example .ebextensions/autoscaling.config**  

```
Resources:
  AWSEBAutoScalingGroup:
    Type: "AWS::AutoScaling::AutoScalingGroup"
    Properties:
      HealthCheckType: ELB
      HealthCheckGracePeriod: 300
```

`HealthCheckType` 및 `HealthCheckGracePeriod` 속성에 대한 자세한 내용은 *AWS CloudFormation 사용 설명서*의 [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html) 및 *Amazon EC2 Auto Scaling 사용 설명서*의 [Auto Scaling 인스턴스 상태 확인](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html)을 참조하세요.

기본적으로 Elastic Load Balancing 상태 확인은 포트 80을 통해 인스턴스에 TCP 연결을 시도하도록 구성되어 있습니다. 이를 통해 인스턴스에서 실행 중인 웹 서버가 연결을 수락하고 있음을 확인합니다. 하지만 웹 서버뿐 아니라 애플리케이션 또한 양호한 상태가 되도록 [로드 밸런서 상태 확인을 사용자 지정](using-features.managing.elb.md)할 수 있습니다. 유예 기간 설정은 인스턴스가 종료되어 바뀌지 않고 상태 확인에 실패할 수 있는 시간(초)을 설정합니다. 로드 밸런서에서 제외된 후에도 인스턴스가 복구될 수 있으므로 애플리케이션에 적합한 시간을 인스턴스에 부여하세요.