

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

# 구성 변경
<a name="environments-updating"></a>

[환경 관리 콘솔](environments-console.md)의 구성 섹션에서 **구성** 옵션 설정을 수정하면가 변경 사항을 영향을 받는 모든 리소스에 AWS Elastic Beanstalk 전파합니다. 이러한 리소스로는 애플리케이션을 실행하는 Amazon EC2 인스턴스로 트래픽을 분산하는 로드 밸런서, 인스턴스를 관리하는 Auto Scaling 그룹, EC2 인스턴스가 있습니다.

기존 인스턴스를 바꾸지 않고 실행 환경에 여러 구성 변경을 적용할 수 있습니다. 예를 들어 [상태 점검 URL](environments-cfg-clb.md#using-features.managing.elb.healthchecks)을 설정하면 로드 밸런서 설정을 수정하기 위한 환경 업데이트가 트리거되지만, 업데이트가 전파되는 동안 애플리케이션 실행 인스턴스에서 계속해서 요청을 처리하기 때문에 가동 중단은 발생하지 않습니다.

[시작 구성](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) 또는 [VPC 설정](command-options-general.md#command-options-general-ec2vpc)을 수정하도록 구성을 변경하려면 환경의 모든 인스턴스를 종료하고 바꿔야 합니다. 예를 들어 환경에 대한 인스턴스 유형 또는 SSH 키 설정을 변경할 때, EC2 인스턴스를 종료하고 교체해야 합니다. Elastic Beanstalk는 이러한 대체 방법을 결정하는 몇 가지 정책을 제공합니다.
+ **롤링 업데이트** – Elastic Beanstalk는 배치 단위로 구성 변경을 적용하여 지속적으로 최소 인스턴스 수가 실행되고 트래픽을 처리하도록 합니다. 이와 같은 접근 방식은 업데이트 프로세스 중에 가동 중지를 방지해 줍니다. 자세한 내용은 [롤링 업데이트](using-features.rollingupdates.md)을 참조하세요.
+ **변경이 불가능한 업데이트** – Elastic Beanstalk는 새 구성으로 실행 중인 별도의 인스턴스 세트를 사용하여 환경 외부에서 임시 Auto Scaling 그룹을 시작합니다. 그런 다음 Elastic Beanstalk는 이러한 인스턴스를 환경의 로드 밸런서 뒤에 배치합니다. 새 인스턴스가 상태 확인을 통과할 때까지 이전 인스턴스 및 새 인스턴스가 트래픽을 처리합니다. 이때 Elastic Beanstalk는 새 인스턴스를 환경의 Auto Scaling 그룹으로 이동시키고 임시 그룹 및 이전 인스턴스를 종료합니다. 자세한 내용은 [변경이 불가능한 업데이트](environmentmgmt-updates-immutable.md)을 참조하세요.
+ **비활성화** – Elastic Beanstalk는 가동 중지를 방지하려고 시도하지 않습니다. 환경의 기존 인스턴스를 종료하고 새 구성으로 실행 중인 새 인스턴스로 대체합니다.

**주의**  
일부 정책은 배포 또는 업데이트 중에 모든 인스턴스를 대체합니다. 따라서 누적된 모든 [Amazon EC2 버스트 잔고](https://docs.aws.amazon.com/AWSEC2/latest/DeveloperGuide/burstable-performance-instances.html)가 소실됩니다. 이 동작은 다음과 같은 경우에 발생합니다.  
인스턴스 교체가 활성화된 관리형 플랫폼 업데이트
변경이 불가능한 업데이트
변경 불가능한 업데이트 또는 트래픽 분할이 활성화된 배포


**지원되는 업데이트 유형**  

| 롤링 업데이트 설정 | 로드 밸런싱된 환경 | 단일 인스턴스 환경 | 레거시 Windows Server 환경† | 
| --- | --- | --- | --- | 
|  비활성화됨  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  | 
|  상태 기반 롤링  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[No\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-no.png) 아니요  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  | 
|  시간 기반 롤링  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[No\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-no.png) 아니요  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  | 
|  변경 불가능  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[Yes\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-yes.png) 예  |   ![\[No\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/icon-no.png) 아니요  | 

† 이 표의 목적상 레거시 *Windows Server 환경*은 IIS 8.5 이전의 IIS 버전을 사용하는 [Windows Server 플랫폼 구성](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.net)을 기반으로 하는 환경입니다.

**Topics**
+ [Elastic Beanstalk 롤링 환경 구성 업데이트](using-features.rollingupdates.md)
+ [변경이 불가능한 환경 업데이트](environmentmgmt-updates-immutable.md)

# Elastic Beanstalk 롤링 환경 구성 업데이트
<a name="using-features.rollingupdates"></a>

[구성 변경 사항으로 인해 인스턴스의 교체가 필요한 경우](environments-updating.md) Elastic Beanstalk는 업데이트를 배치 형태로 수행해 변경 사항이 전파되는 동안 가동 중지를 방지할 수 있습니다. 롤링 업데이트 중 용량은 단일 배치 크기만큼만 줄어들며 이 크기는 직접 구성할 수 있습니다. Elastic Beanstalk는 인스턴스 배치 하나를 서비스에서 제외하고 종료한 다음 새 구성 배치를 시작합니다. 새 배치가 요청을 처리하기 시작하면 Elastic Beanstalk는 다음 배치를 시작합니다.

롤링 구성 업데이트 배치는 배치 간 지연 시간을 설정하거나(시간 기반) 상태 확인 내용에 기반하는 방식으로 간격을 두고 처리할 수 있습니다. 시간 기반 롤링 업데이트의 경우 인스턴스 배치 시작을 완료한 후 다음 배치를 시작하기까지 Elastic Beanstalk가 대기하는 시간을 구성할 수 있습니다. 이 일시 중지 시간 동안 애플리케이션은 부트스트랩을 수행하고 요청 처리를 시작할 수 있습니다.

상태 확인 기반 롤링 업데이트의 경우 Elastic Beanstalk는 배치의 인스턴스가 상태 확인을 통과할 때까지 대기했다가 다음 배치를 시작합니다. 인스턴스의 상태는 상태 확인 보고 시스템(기본 또는 고급)에서 판단합니다. [기본 상태 확인](using-features.healthstatus.md)에서는 배치의 모든 인스턴스가 Elastic Load Balancing(ELB) 상태 확인을 통과하는 즉시 해당 배치가 정상으로 간주됩니다.

[확장 상태 보고](health-enhanced.md)에서는 배치의 모든 인스턴스가 여러 연속 상태 확인을 통과해야 Elastic Beanstalk가 다음 배치를 시작합니다. 확장 상태 확인에서는 인스턴스만 확인하는 ELB 상태 확인 외에도 애플리케이션 로그와 환경 내 기타 리소스의 상태를 모니터링합니다. 확장 상태 확인을 사용하는 웹 서버 환경에서는 모든 인스턴스가 2분간 12가지 상태 확인을 통과해야 합니다(작업자 환경의 경우 3분간 18가지 상태 확인). 상태 확인을 한 가지라도 통과하지 못하는 인스턴스가 있으면 개수가 초기화됩니다.

롤링 업데이트 제한 시간(기본값: 30분) 내에 배치의 상태가 정상적으로 되지 않으면 업데이트가 취소됩니다. 롤링 업데이트 제한 시간은 [구성 옵션](command-options.md)이며 `aws:autoscaling:updatepolicy:rollingupdate` 네임스페이스에서 확인할 수 있습니다. 애플리케이션이 상태 확인을 통과(`Ok` 상태)하지 않았으나 다른 수준에서 안정적이라면, [`aws:elasticbeanstalk:healthreporting:system`](command-options-general.md#command-options-general-elasticbeanstalkhealthreporting) 네임스페이스에서 `HealthCheckSuccessThreshold` 옵션을 설정하여 Elastic Beanstalk에서 인스턴스가 정상이라고 판단하는 수준을 변경할 수 있습니다.

롤링 업데이트 프로세스가 실패하면 Elastic Beanstalk는 다른 롤링 업데이트를 시작하여 이전 구성으로 롤백합니다. 롤링 업데이트는 상태 확인이 실패하는 경우나 새 인스턴스를 시작한 결과 계정의 할당량을 초과하는 경우 실패할 수 있습니다. 예를 들어, Amazon EC2 인스턴스의 개수 할당량에 도달했다면 롤링 업데이트에서 새 인스턴스 배치를 프로비저닝하고자 시도할 때 업데이트가 실패할 수 있습니다. 이 경우 롤백 역시 실패합니다.

롤백이 실패하면 업데이트 프로세스가 종료되고 환경이 비정상 상태가 됩니다. 처리되지 않은 배치는 기존 구성을 사용하는 실행 중인 인스턴스가 되고, 처리가 성공적으로 완료된 배치에는 새 구성이 적용됩니다. 롤백이 실패한 후 환경을 수정하려면 먼저 업데이트 실패를 유발한 근원적 문제를 해결한 후 다른 환경 업데이트를 초기화하십시오.

다른 방법으로는 다른 환경에 새 애플리케이션 버전을 배포한 후 CNAME 스왑을 수행해 가동 중지 없이 트래픽을 리디렉션하는 것이 있습니다. 자세한 정보는 [Elastic Beanstalk를 사용한 블루/그린 배포](using-features.CNAMESwap.md)을 참조하세요.

## 롤링 업데이트와 롤링 배포의 비교
<a name="environments-cfg-rollingupdates-deployments"></a>

롤링 업데이트는 설정 변경으로 새 Amazon EC2 인스턴스를 환경에 맞게 프로비저닝해야 하는 경우에 발생합니다. 인스턴스 유형 및 키 페어 설정과 같은 Auto Scaling 그룹 구성을 변경하는 경우와 VPC 설정을 변경하는 경우가 여기에 해당됩니다. 롤링 업데이트에서는 새 배치를 프로비저닝해 이전 배치를 교체하기 전에 각 인스턴스 배치가 종료됩니다.

[롤링 배포](using-features.rolling-version-deploy.md)는 애플리케이션을 배포할 때마다 발생하며, 일반적으로 환경의 인스턴스를 교체하지 않고 수행할 수 있습니다. Elastic Beanstalk는 각 배치를 서비스에서 제외하고 새 애플리케이션 버전을 배포한 후 이 버전을 서비스 상태로 되돌립니다.

단, 인스턴스를 교체하는 동시에 새 애플리케이션 버전을 배포해야 하는 설정 변경은 예외입니다. 예를 들어 소스 번들의 [구성 파일](ebextensions.md)에서 [키 이름](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) 설정을 변경하고 이 파일을 환경에 배포하면 롤링 업데이트가 트리거됩니다. 기존 인스턴스 배치 각각에 새 애플리케이션 버전을 배포하는 대신 새 인스턴스 배치가 새 구성으로 프로비저닝됩니다. 이 경우 새 인스턴스가 새 애플리케이션 버전으로 추가되므로 별도의 배포는 발생하지 않습니다.

새 인스턴스가 환경 업데이트의 일환으로 프로비저닝될 때에는 애플리케이션의 소스 코드가 새 인스턴스에 배포되고 인스턴스의 운영 체제 또는 소프트웨어를 수정하는 구성 설정이 적용되는 배포 단계가 존재합니다. [배포 상태 확인 설정](using-features.rolling-version-deploy.md#environments-cfg-rollingdeployments-console)(**상태 확인 무시**, **정상 임계 값** 및 **명령 제한 시간**)도 배포 단계 진행 동안 상태 기반 롤링 업데이트와 변경 불가능한 업데이트에 적용됩니다.

## 롤링 업데이트 구성
<a name="rollingupdates-configure"></a>

Elastic Beanstalk 콘솔에서 롤링 업데이트를 활성화하고 구성할 수 있습니다.

**롤링 업데이트를 활성화하는 방법**

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

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

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

1. [**롤링 업데이트와 배포**] 구성 범주에서 [**편집**]을 선택합니다.

1. **구성 업데이트** 섹션의 **롤링 업데이트 유형**에서 **롤링** 옵션 중 하나를 선택합니다.  
![\[롤링 업데이트와 배포 수정 구성 페이지의 구성 업데이트 단원\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/aeb-config-rolling-updates-health.png)

1. Choose **배치 크기**, **최소 용량**, **일시 중지 시간** 순으로 설정합니다.

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

**롤링 업데이트와 배포(Rolling updates and deployments)** 페이지의 **구성 업데이트(Configuration updates)** 섹션에는 다음과 같은 롤링 업데이트 옵션이 있습니다.
+ **롤링 업데이트 유형** – 업데이트를 완료한 인스턴스가 부트스트래핑을 마치고 트래픽 서비스를 시작할 수 있도록 Elastic Beanstalk는 다음 배치로 이동하기 전에 인스턴스 배치 업데이트를 완료합니다. 다음 옵션 중 하나를 선택합니다.
  + **상태 기반 롤링** – 현재 배치의 인스턴스가 정상으로 판정될 때까지 대기했다가 인스턴스를 서비스 상태로 되돌리고 다음 배치를 시작합니다.
  + **시간 기반 롤링** – 새 인스턴스를 시작하는 시점과 이 인스턴스를 서비스 상태로 되돌리고 다음 배치를 시작하는 시점 사이의 시간 간격을 지정합니다.
  + **변경 불가능** – [변경이 불가능한 업데이트](environmentmgmt-updates-immutable.md)를 수행해 새 인스턴스 그룹에 구성 변경 사항을 적용합니다.
+ **배치 크기** – 각 배치에서 교체할 인스턴스 수(**1** \$1 **10000**)입니다. 기본적으로 이 값은 Auto Scaling 그룹의 최소 크기의 1/3(정수로 반올림)입니다.
+ **최소 용량** – 다른 인스턴스가 업데이트되는 동안 실행 상태를 유지하는 인스턴스의 최소 수(**0** \$1 **9999**)입니다. 기본값은 Auto Scaling 그룹 최소 크기에 해당하는 값과 Auto Scaling 그룹의 최대 크기에서 1을 뺀 값 중 더 작은 쪽입니다.
+ **일시 중지 시간**(시간 기반만 해당) – 애플리케이션이 트래픽 서비스를 시작할 수 있도록, 배치를 업데이트한 후 다음 배치를 시작하기까지의 대기 시간입니다. 범위는 0초\$11시간입니다.

## aws:autoscaling:updatepolicy:rollingupdate 네임스페이스
<a name="rollingupdate-namespace"></a>

`aws:autoscaling:updatepolicy:rollingupdate` 네임스페이스의 [구성 옵션](command-options.md)을 사용해 롤링 업데이트를 구성할 수도 있습니다.

`RollingUpdateEnabled` 옵션을 사용해 롤링 업데이트를 활성화하고 `RollingUpdateType`을 사용해 업데이트 유형을 선택하십시오. 다음 지원 값은 `RollingUpdateType`에서 사용할 수 있습니다.
+ `Health` – 현재 배치의 인스턴스가 정상으로 판정될 때까지 대기했다가 인스턴스를 서비스 상태로 되돌리고 다음 배치를 시작합니다.
+ `Time` – 새 인스턴스를 시작하는 시점과 이 인스턴스를 서비스 상태로 되돌리고 다음 배치를 시작하는 시점 사이의 시간 간격을 지정합니다.
+ `Immutable` – [변경이 불가능한 업데이트](environmentmgmt-updates-immutable.md)를 수행해 새 인스턴스 그룹에 구성 변경 사항을 적용합니다.

롤링 업데이트를 활성화할 때는 `MaxBatchSize` 및 `MinInstancesInService` 옵션을 설정해 각 배치의 크기를 구성하십시오. 시간 기반 및 상태 확인 기반 롤링 업데이트의 경우 각각 `PauseTime`과 `Timeout`도 구성할 수 있습니다.

예를 들어, 한 번에 최대 5개의 인스턴스를 시작하되 최소 2개의 인스턴스를 서비스 상태로 유지하고 배치 간 5분 30초를 대기하는 형태라면 다음과 같이 옵션 및 값을 지정하십시오.

**Example .ebextensions/timebased.config**  

```
option_settings:
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateEnabled: true
    MaxBatchSize: 5
    MinInstancesInService: 2
    RollingUpdateType: Time
    PauseTime: PT5M30S
```

상태 기반 롤링 업데이트를 활성화하고 각 배치의 제한 시간을 45분으로 설정하려면 다음 옵션 및 값을 지정하십시오.

**Example .ebextensions/healthbased.config**  

```
option_settings:
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateEnabled: true
    MaxBatchSize: 5
    MinInstancesInService: 2
    RollingUpdateType: Health
    Timeout: PT45M
```

`Timeout` 및 `PauseTime` 값은 [ISO8601 기간](http://en.wikipedia.org/wiki/ISO_8601#Durations) 형식(`PT#H#M#S`)으로 지정해야 합니다. 각 \$1은 각각 시, 분 또는 초를 가리킵니다.

EB CLI 및 Elastic Beanstalk 콘솔에서 위 옵션의 권장 값을 적용합니다. 구성 파일을 사용해 동일하게 구성하고자 하는 경우 이러한 설정을 제거해야 합니다. 세부 정보는 [권장 값](command-options.md#configuration-options-recommendedvalues) 섹션을 참조하세요.

# 변경이 불가능한 환경 업데이트
<a name="environmentmgmt-updates-immutable"></a>

변경 불가능한 환경 업데이트는 [롤링 업데이트](using-features.rollingupdates.md)의 대안입니다. 변경 불가능한 환경 업데이트를 통해 인스턴스 교체가 필요한 구성 변경이 효율적이고 안전하게 적용됩니다. 변경이 불가능한 환경 업데이트에 실패하면 롤백 프로세스는 Auto Scaling 그룹만 종료하면 됩니다. 반면에 롤링 업데이트에 실패하면 롤백 업데이트를 추가로 수행하여 변경 사항을 롤백해야 합니다.

Elastic Beanstalk는 변경이 불가능한 환경 업데이트를 수행하기 위해 환경의 로드 밸런서 뒤에 새 인스턴스를 포함할 두 번째 임시 Auto Scaling 그룹을 생성합니다. 먼저 Elastic Beanstalk는 새로운 그룹에서 새로운 구성으로 단일 인스턴스를 시작합니다. 이 인스턴스는 이전 구성을 실행 중인 원래 Auto Scaling 그룹의 모든 인스턴스와 함께 트래픽을 처리합니다.

첫 번째 인스턴스가 상태 확인을 통과하면 Elastic Beanstalk는 원래 Auto Scaling 그룹에서 실행 중인 인스턴스 수와 일치하는 새로운 구성으로 추가 인스턴스를 시작합니다. 모든 새 인스턴스가 상태 확인을 통과하면 Elastic Beanstalk는 이를 원래 Auto Scaling 그룹으로 전송하고 임시 Auto Scaling 그룹 및 이전 인스턴스를 종료합니다.

**참고**  
변경이 불가능한 환경 업데이트 중에 새 Auto Scaling 그룹의 인스턴스가 요청을 처리하기 시작하고 원래 Auto Scaling 그룹의 인스턴스가 종료되기 전에 잠시 동안 환경의 용량이 두 배가 됩니다. 환경에 인스턴스가 많거나 [온디맨드 인스턴스 할당량](https://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2)이 낮은 경우 변경이 불가능한 환경 업데이트를 수행할 용량이 충분한지 확인하십시오. 할당량에 근접한 경우 롤링 업데이트를 대신 사용하십시오.

변경이 불가능한 업데이트를 수행하려면 업데이트 중에 환경의 상태를 평가하기 위한 [확장 상태 보고](health-enhanced.md)가 필요합니다. 확장 상태 보고는 표준 로드 밸런서 상태 확인과 인스턴스 모니터링을 결합하여 새로운 구성을 실행하는 인스턴스가 [요청을 처리](health-enhanced.md#health-enhanced-factors)하는지 확인합니다.

롤링 배포의 대안으로 변경이 불가능한 업데이트를 사용하여 새 애플리케이션 버전을 배포할 수도 있습니다. [애플리케이션 배포에 변경이 불가능한 업데이트를 사용하도록 Elastic Beanstalk를 구성](using-features.rolling-version-deploy.md)하면 새 애플리케이션 버전을 배포할 때마다 환경의 모든 인스턴스가 교체됩니다. 변경이 불가능한 애플리케이션 배포에 실패하면 Elastic Beanstalk는 새 Auto Scaling 그룹을 종료하여 변경 사항을 즉시 되돌립니다. 이를 통해 일부 배치가 이미 완료된 후 롤링 배포에 실패할 경우 발생하는 플릿 부분 배포를 방지할 수 있습니다.

**주의**  
일부 정책은 배포 또는 업데이트 중에 모든 인스턴스를 대체합니다. 따라서 누적된 모든 [Amazon EC2 버스트 잔고](https://docs.aws.amazon.com/AWSEC2/latest/DeveloperGuide/burstable-performance-instances.html)가 소실됩니다. 이 동작은 다음과 같은 경우에 발생합니다.  
인스턴스 교체가 활성화된 관리형 플랫폼 업데이트
변경이 불가능한 업데이트
변경 불가능한 업데이트 또는 트래픽 분할이 활성화된 배포

변경이 불가능한 업데이트에 실패할 경우 Elastic Beanstalk가 [번들 로그](using-features.logging.md)를 종료하기 전에 새 인스턴스는 이를 Amazon S3에 업로드합니다. Elastic Beanstalk는 실패한 변경이 불가능한 업데이트의 로그를 삭제하기 전에 번들 및 테일 로그에 적용되는 표준 15분이 아닌 1시간 동안 Amazon S3에 이를 남겨 둡니다.

**참고**  
애플리케이션 버전 배포에 변경 불가능한 업데이트를 사용하지만 구성에는 사용하지 않는 경우 일반적으로 롤링 업데이트(예: 인스턴스 유형을 변경하는 구성)를 트리거하는 구성 변경이 포함된 애플리케이션 버전을 배포하려고 하면 오류가 발생할 수 있습니다. 이를 방지하려면 별도의 업데이트에서 구성 변경을 수행하거나 배포와 구성 변경 모두에 변경이 불가능한 업데이트를 구성하십시오.

리소스 구성 변경과 함께 변경이 불가능한 업데이트를 수행할 수 없습니다. 예를 들어, 다른 설정을 업데이트하는 동안 [인스턴스 교체가 필요한 설정](environments-updating.md)을 변경하거나, 소스 코드의 구성 설정 또는 추가 리소스를 변경하는 구성 파일과 함께 변경이 불가능한 배포를 수행할 수 없습니다. 리소스 설정(예: 로드 밸런서 설정)을 변경하는 동시에 변경이 불가능한 업데이트를 수행하려고 하면, Elastic Beanstalk에서 오류를 반환합니다.

리소스 구성 변경이 소스 코드 변경 또는 인스턴스 구성에 종속되지 않는 경우, 두 업데이트에서 이를 수행합니다. 종속되는 경우, 대신에 [블루/그린(Blue/Green) 배포](using-features.CNAMESwap.md)를 수행합니다.

## 변경이 불가능한 업데이트 구성
<a name="updates-immutable-configure"></a>

Elastic Beanstalk 콘솔에서 변경이 불가능한 업데이트를 활성화하고 구성할 수 있습니다.

**변경이 불가능한 업데이트를 활성화하려면(콘솔)**

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

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

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

1. [**롤링 업데이트와 배포**] 구성 범주에서 [**편집**]을 선택합니다.

1. **구성 업데이트** 단원에서 **롤링 업데이트 유형**을 **변경 불가능**으로 설정합니다.  
![\[롤링 업데이트와 배포 수정 구성 페이지의 구성 업데이트 단원\]](http://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/images/environments-mgmt-updates-immutable.png)

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

## aws:autoscaling:updatepolicy:rollingupdate 네임스페이스
<a name="updates-immutable-namespace"></a>

`aws:autoscaling:updatepolicy:rollingupdate` 네임스페이스의 옵션을 사용하여 변경이 불가능한 업데이트를 구성할 수도 있습니다. 다음은 구성 변경에 변경 불가능한 업데이트를 사용하는 [구성 파일](ebextensions.md) 예입니다.

**Example .ebextensions/immutable-updates.config**  

```
option_settings:
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateType: Immutable
```

다음은 구성 변경과 배포 모두에 변경 불가능한 업데이트를 사용하는 예입니다.

**Example .ebextensions/immutable-all.config**  

```
option_settings:
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateType: Immutable
  aws:elasticbeanstalk:command:
    DeploymentPolicy: Immutable
```

EB CLI 및 Elastic Beanstalk 콘솔에서 위 옵션의 권장 값을 적용합니다. 구성 파일을 사용해 동일하게 구성하고자 하는 경우 이러한 설정을 제거해야 합니다. 세부 정보는 [권장 값](command-options.md#configuration-options-recommendedvalues) 섹션을 참조하세요.