

# Amazon EC2 AMI 비활성화
<a name="disable-an-ami"></a>

인스턴시 시작에 사용되지 않도록 AMI를 비활성화할 수 있습니다. 비활성화된 AMI에서는 새 인스턴스를 시작할 수 없습니다. 비활성화된 AMI를 다시 활성화하면 인스턴스 시작에 다시 사용할 수 있습니다.

프라이빗 및 퍼블릭 AMI를 모두 비활성화할 수 있습니다.

거의 사용하지 않지만 장기간 유지해야 하는 비활성화된 EBS 지원 AMI의 스토리지 비용을 줄이려면 관련 스냅샷을 아카이빙할 수 있습니다. 자세한 내용은 *Amazon EBS 사용 설명서*의 [Archive Amazon EBS snapshots](https://docs.aws.amazon.com/ebs/latest/userguide/snapshot-archive.html)를 참조하세요.

**Topics**
+ [AMI 비활성화 작동 방식](#how-disable-ami-works)
+ [비용](#ami-disable-costs)
+ [사전 조건](#ami-disable-prerequisites)
+ [필수 IAM 권한](#ami-disable-iam-permissions)
+ [AMI 비활성화](#disable-ami)
+ [비활성화된 AMI 설명](#describe-disabled-ami)
+ [비활성화된 AMI 다시 활성화](#re-enable-a-disabled-ami)

## AMI 비활성화 작동 방식
<a name="how-disable-ami-works"></a>

**주의**  
AMI를 비활성화하면 시작 권한이 모두 제거됩니다.

**AMI가 비활성화된 경우:**
+ AMI의 상태가 `disabled`로 변경됩니다.
+ 비활성화된 AMI는 공유될 수 없습니다. AMI가 퍼블릭 상태였거나 이전에 공유된 경우 프라이빗으로 전환됩니다. AMI가 AWS 계정, 조직 또는 조직 단위와 공유된 경우 비활성화된 이들은 AMI에 대한 액세스 권한을 잃게 됩니다.
+ 비활성화된 AMI는 기본적으로 [https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html) API 호출에 표시되지 않습니다.
+ 비활성화된 AMI는 **내 소유** 콘솔 필터 아래에 표시되지 않습니다. 비활성화된 AMI를 찾으려면 **비활성화된 이미지** 콘솔 필터를 사용합니다.
+ 비활성화된 AMI는 EC2 콘솔에서 인스턴스 시작 선택이 불가능합니다. 예를 들어 비활성화된 AMI는 시작 인스턴스 마법사의 AMI 카탈로그나 시작 템플릿을 생성할 때 표시되지 않습니다.
+ 시작 템플릿 및 Auto Scaling 그룹과 같은 시작 서비스는 비활성화된 AMI를 계속 참조할 수 있습니다. 비활성화된 AMI에서 후속 인스턴스를 시작하면 실패하므로 사용 가능한 AMI만 참조하도록 시작 템플릿과 Auto Scaling 그룹을 업데이트하는 것이 좋습니다.
+ 이후에 비활성화된 AMI 사용하여 시작되었던 EC2 인스턴스는 영향을 받지 않으며 중지, 시작 및 재부팅할 수 있습니다.
+ 비활성화된 AMI와 관련된 스냅샷은 삭제할 수 없습니다. 연결된 스냅샷을 삭제하려고 하면 `snapshot is currently in use` 오류가 발생합니다.

**AMI가 다시 활성화된 경우:**
+ AMI의 상태가 `available`로 변경되고, 이를 사용하여 인스턴스를 시작할 수 있습니다.
+ AMI가 공유될 수 있습니다.
+ 비활성화되었을 때 액세스 권한을 잃은 AWS 계정, 조직 및 조직 단위는 자동으로 액세스 권한을 획득하고, AMI가 다시 공유될 수 있습니다.

## 비용
<a name="ami-disable-costs"></a>

AMI를 비활성화하더라도 해당 AMI는 삭제되지 않습니다. AMI가 EBS 지원 AMI인 경우 AMI의 EBS 스냅샷에 대한 요금은 계속 지불합니다. AMI를 유지하려는 경우 스냅샷을 보관하여 스토리지 비용을 줄일 수 있습니다. 자세한 내용은 *Amazon EBS 사용 설명서*의 [Archive Amazon EBS snapshots](https://docs.aws.amazon.com/ebs/latest/userguide/snapshot-archive.html)를 참조하세요. AMI와 스냅샷을 보관하지 않으려면 AMI 등록을 취소하고 스냅샷을 삭제해야 합니다. 자세한 내용은 [AMI 등록 취소](deregister-ami.md) 섹션을 참조하세요.

## 사전 조건
<a name="ami-disable-prerequisites"></a>

AMI를 비활성화하거나 다시 활성화하려면 AMI의 소유자여야 합니다.

## 필수 IAM 권한
<a name="ami-disable-iam-permissions"></a>

AMI를 비활성화하고 다시 활성화하려면 다음 IAM 권한이 있어야 합니다.
+ `ec2:DisableImage`
+ `ec2:EnableImage`

## AMI 비활성화
<a name="disable-ami"></a>

EC2 콘솔 또는 AWS Command Line Interface(AWS CLI) 사용을 통해 AMI를 비활성화할 수 있습니다. 이 절차를 수행하려면 AMI 소유자여야 합니다.

------
#### [ Console ]

**AMI 비활성화**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **AMI**를 선택합니다.

1. 필터 표시줄에서 **내 소유**를 선택합니다.

1. AMI를 선택한 다음 **작업**, **AMI 비활성화**를 선택합니다. 한 번에 여러 개의 AMI를 선택하여 비활성화할 수 있습니다.

1. **AMI 비활성화** 창에서 **AMI 비활성화**를 선택합니다.

------
#### [ AWS CLI ]

**AMI 비활성화**  
다음 [https://docs.aws.amazon.com/cli/latest/reference/ec2/disable-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/disable-image.html) 명령을 사용합니다.

```
aws ec2 disable-image --image-id {{ami-0abcdef1234567890}}
```

------
#### [ PowerShell ]

**AMI 비활성화**  
[Disable-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Disable-EC2Image.html) cmdlet을 사용합니다.

```
Disable-EC2Image -ImageId {{ami-0abcdef1234567890}}
```

------

## 비활성화된 AMI 설명
<a name="describe-disabled-ami"></a>

EC2 콘솔 또는 AWS CLI 사용을 통해 비활성화된 AMI를 볼 수 있습니다.

비활성화된 AMI를 보려면 AMI 소유자여야 합니다. 비활성화된 AMI는 프라이빗으로 전환되므로 소유자가 아닌 경우 비활성화된 AMI를 볼 수 없습니다.

------
#### [ Console ]

**비활성화된 AMI 보기**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **AMI**를 선택합니다.

1. 필터 막대에서 **비활성화된 이미지**를 선택합니다.  
![비활성화된 이미지 필터](http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/images/ami-filter-by-disabled-images.png)

------
#### [ AWS CLI ]

기본적으로 모든 AMI를 설명하는 경우 비활성화된 AMI는 결과에 포함되지 않습니다. 비활성화된 AMI를 결과에 포함하려면 `--include-disabled` 옵션을 지정합니다. AMI가 비활성화된 경우 AMI의 `State` 필드는 `disabled`입니다.

**계정에 대한 모든 AMI를 설명할 때 비활성화된 AMI를 포함하는 방법**  
다음 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 명령을 사용합니다.

```
aws ec2 describe-images \
    --owners {{123456789012}} \
    --include-disabled
```

**계정에 대한 비활성화된 AMI를 나열하는 방법**  
다음 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 명령을 사용합니다.

```
aws ec2 describe-images \
    --owners self \
    --include-disabled \
    --filters Name=state,Values=disabled \
    --query Images[].ImageId \
    --output text
```

다음은 예제 출력입니다.

```
ami-0abcdef1234567890
```

**AMI 상태를 설명하는 방법**  
다음 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 명령을 사용합니다. `DeprecationTime`이 출력에 표시되지 않는 경우 AMI는 사용되지 않거나 향후 날짜에 사용되지 않도록 설정되어 있습니다.

```
aws ec2 describe-images \
    --image-ids {{ami-0abcdef1234567890}} \
    --query Images[].State \
    --output text
```

다음은 예제 출력입니다.

```
disabled
```

------
#### [ PowerShell ]

기본적으로 모든 AMI를 설명하는 경우 비활성화된 AMI는 결과에 포함되지 않습니다. 비활성화된 AMI를 결과에 포함하려면 `-IncludeDisabled` 파라미터를 지정합니다. AMI가 비활성화된 경우 AMI의 `State` 필드는 `disabled`입니다.

**계정에 대한 비활성화된 AMI를 나열하는 방법**  
[Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet을 사용합니다.

```
(Get-EC2Image `
    -Owner self `
    -IncludeDisabled $true | Where-Object {$_.State -eq "disabled"}).ImageId
```

다음은 예제 출력입니다.

```
ami-0abcdef1234567890
```

**AMI 상태를 설명하는 방법**  
[Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet을 사용합니다.

```
(Get-EC2Image -ImageId {{ami-0abcdef1234567890}}).State.Value
```

다음은 예제 출력입니다.

```
disabled
```

------

## 비활성화된 AMI 다시 활성화
<a name="re-enable-a-disabled-ami"></a>

비활성화된 AMI를 다시 활성화할 수 있습니다. 이 절차를 수행하려면 AMI 소유자여야 합니다.

------
#### [ Console ]

**비활성화된 AMI 다시 활성화**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **AMI**를 선택합니다.

1. 필터 막대에서 **비활성화된 이미지**를 선택합니다.

1. AMI를 선택한 다음 **작업**, **AMI 활성화**를 선택합니다. 여러 AMI를 선택하여 여러 AMI를 한 번에 다시 활성화할 수 있습니다.

1. **AMI 활성화** 창에서 **활성화**를 선택합니다.

------
#### [ AWS CLI ]

**비활성화된 AMI 다시 활성화**  
다음 [https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-image.html) 명령을 사용합니다.

```
aws ec2 enable-image --image-id {{ami-0abcdef1234567890}}
```

------
#### [ PowerShell ]

**비활성화된 AMI 다시 활성화**  
[Enable-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Enable-EC2Image.html) cmdlet을 사용합니다.

```
Enable-EC2Image -ImageId {{ami-0abcdef1234567890}}
```

------