

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

# Auto Scaling 인프라 삭제
<a name="as-process-shutdown"></a>

조정 인프라를 완전히 삭제하려면 다음 작업을 완료하세요.

**Topics**
+ [Auto Scaling 그룹 삭제](#as-shutdown-lbs-delete-asg-cli)
+ [(옵션) 시작 구성 삭제](#as-shutdown-lbs-delete-lc-cli)
+ [(옵션) 시작 템플릿 삭제](#as-shutdown-lbs-delete-lt-cli)
+ [(옵션) 로드 밸런서 및 대상 그룹 삭제](#as-shutdown-lbs-delete-lbs-cli)
+ [(옵션) CloudWatch 경보 삭제](#as-shutdown-delete-alarms-cli)
+ [Amazon EC2 Auto Scaling 리소스에 대한 삭제 방지 구성](resource-deletion-protection.md)

## Auto Scaling 그룹 삭제
<a name="as-shutdown-lbs-delete-asg-cli"></a>

Auto Scaling 그룹을 삭제하면 원하는 값과 최소, 최대값이 0으로 설정됩니다. 그리고 인스턴스가 해지됩니다. 인스턴스를 삭제하면 연결된 로그 또는 데이터, 그리고 인스턴스의 모든 볼륨도 모두 삭제됩니다. 하나 이상의 인스턴스를 해지하지 않으려면 Auto Scaling 그룹을 삭제하기 전에 인스턴스를 분리할 수 있습니다. 그룹에 조정 정책이 있는 경우, 그룹을 삭제하면 정책, 기본 경보 작업 및 더 이상 연결된 작업이 없는 경보가 삭제됩니다.

**Auto Scaling 그룹을 삭제하려면(콘솔)**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 열고 탐색 창에서 **Auto Scaling 그룹(Auto Scaling Groups)**을 선택합니다.

1. Auto Scaling 그룹 옆에 있는 확인란을 선택하고 **조치**, **삭제**를 선택합니다.

1. 확인 메시지가 표시되면 **delete**를 입력하여 지정된 Auto Scaling 그룹 삭제를 확인한 다음 **Delete**(삭제)를 선택합니다.

   **Name**(이름) 열의 로딩 아이콘은 Auto Scaling 그룹이 삭제 중임을 나타납니다. **원하는 수**, **최소** 및 **최대** 열에 Auto Scaling 그룹에 대한 인스턴스가 `0`으로 표시됩니다. 인스턴스를 해지하고 그룹을 삭제하는 데 몇 분 정도 걸립니다. 목록을 새로 고침하여 상태를 확인합니다.

**Auto Scaling 그룹을 삭제하려면(AWS CLI)**  
다음 [delete-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/delete-auto-scaling-group.html) 명령을 사용하여 Auto Scaling 그룹을 삭제합니다. 그룹에 EC2 인스턴스가 있는 경우에는 이 작업이 유효하지 않습니다. 인스턴스가 없는 그룹에만 유효합니다.

```
aws autoscaling delete-auto-scaling-group --auto-scaling-group-name my-asg
```

그룹에 진행 중인 인스턴스 또는 크기 조정 활동이 있는 경우, [delete-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/delete-auto-scaling-group.html) 명령을 `--force-delete` 옵션과 함께 사용합니다. 그러면 EC2 인스턴스도 해지됩니다. Amazon EC2 Auto Scaling 콘솔에서 Auto Scaling 그룹을 삭제하면 콘솔은 이 작업을 사용하여 EC2 인스턴스를 해지하는 동시에 그룹을 삭제합니다.

```
aws autoscaling delete-auto-scaling-group --auto-scaling-group-name my-asg --force-delete
```

## (옵션) 시작 구성 삭제
<a name="as-shutdown-lbs-delete-lc-cli"></a>

나중에 시작 구성을 사용하려면 이 단계를 건너뛸 수 있습니다.

**시작 구성을 삭제하는 방법(콘솔)**

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

1. 왼쪽 탐색 창의 **Auto Scaling**에서 **Auto Scaling 그룹**을 선택합니다.

1. 페이지 상단에서 **시작 구성**을 선택합니다. 확인 메시지가 표시되면 **시작 구성 보기**를 선택하여 **시작 구성** 페이지를 볼 것인지 확인합니다.

1. 시작 구성을 선택한 다음 **조치**, **시작 구성 복사**를 선택합니다.

1. 확인 메시지가 나타나면 **삭제**를 선택합니다.

**시작 구성을 삭제하는 방법(AWS CLI)**  
다음 [delete-launch-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/delete-launch-configuration.html) 명령을 사용합니다.

```
aws autoscaling delete-launch-configuration --launch-configuration-name my-launch-config
```

## (옵션) 시작 템플릿 삭제
<a name="as-shutdown-lbs-delete-lt-cli"></a>

시작 템플릿 또는 시작 템플릿의 한 가지 버전만 삭제할 수 있습니다. 시작 템플릿을 삭제하면 모든 해당 버전이 삭제됩니다.

나중에 시작 템플릿을 사용하려면 이 단계를 건너뛸 수 있습니다.

**시작 템플릿을 삭제하려면(콘솔)**

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

1. 탐색 창의 **Instances**(인스턴스)에서 **Launch Templates**(시작 템플릿)을 선택합니다.

1. 시작 템플릿을 선택한 다음, 다음 중 하나를 수행하세요.
   + **Actions**(작업)와 **Delete template**(템플릿 삭제)을 차례로 선택합니다. 확인 메시지가 표시되면 **Delete**를 입력하여 지정된 시작 템플릿 삭제를 확인한 다음 **Delete**(삭제)를 선택합니다.
   + [**Actions**]와 [**Delete template version**]을 차례로 선택합니다. 삭제할 버전을 선택하고 **삭제**를 선택합니다.

**시작 템플릿(AWS CLI) 삭제**  
[delete-launch-template](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/delete-launch-template.html) 명령을 사용하여 템플릿과 모든 버전을 삭제합니다.

```
aws ec2 delete-launch-template --launch-template-id lt-068f72b72934aff71
```

또는 [delete-launch-template-versions](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/delete-launch-template-versions.html) 명령을 사용하여 시작 템플릿의 특정 버전을 삭제할 수 있습니다.

```
aws ec2 delete-launch-template-versions --launch-template-id lt-068f72b72934aff71 --versions 1
```

## (옵션) 로드 밸런서 및 대상 그룹 삭제
<a name="as-shutdown-lbs-delete-lbs-cli"></a>

Auto Scaling 그룹이 Elastic Load Balancing 로드 밸런서에 연결되지 않았거나 로드 밸런서를 나중에 사용하려면 이 단계를 건너뛰세요.

**로드 밸런서를 삭제하려면(콘솔)**

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

1. 탐색 창의 **Load Balancing** 아래에서 **로드 밸런서**를 선택합니다.

1. 로드 밸런서를 선택한 다음 **작업**, **삭제**를 선택합니다.

1. 확인 메시지가 나타나면 **예, 삭제합니다(Yes, Delete)**를 선택합니다.

**대상 그룹을 삭제하려면(콘솔)**

1. 탐색 창의 **Load Balancing** 아래에서 **대상 그룹**을 선택합니다.

1. 대상 그룹을 선택하고 [**Actions**], [**Delete**]를 차례로 선택합니다.

1. 확인 메시지가 나타나면 **예, 삭제합니다(Yes, Delete)**를 선택합니다.

**Auto Scaling 그룹과 연결된 로드 밸런서를 삭제하려면(AWS CLI)**  
Application Load Balancers 및 Network Load Balancer의 경우, 다음 [delete-load-balancer](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elbv2/delete-load-balancer.html) 및 [delete-target-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elbv2/delete-target-group.html) 명령을 사용합니다.

```
aws elbv2 delete-load-balancer --load-balancer-arn my-load-balancer-arn
aws elbv2 delete-target-group --target-group-arn my-target-group-arn
```

Classic Load Balancer의 경우, [delete-load-balancer](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/elb/delete-load-balancer.html) 명령을 사용합니다.

```
aws elb delete-load-balancer --load-balancer-name my-load-balancer
```

## (옵션) CloudWatch 경보 삭제
<a name="as-shutdown-delete-alarms-cli"></a>

Auto Scaling 그룹과 관련된 CloudWatch 경보를 삭제하려면 다음 단계를 완료하세요. 예컨대, 단계별 스케일링 또는 단순 스케일링 정책과 관련된 경보가 있을 수 있습니다.

**참고**  
Auto Scaling 그룹을 삭제하면 대상 추적 조정 정책에 대해 Amazon EC2 Auto Scaling에서 관리하는 CloudWatch 경보가 자동으로 삭제됩니다.

Auto Scaling 그룹이 CloudWatch 경보와 연결되지 않았거나 나중에 경보를 사용하려면 이 단계를 건너뛸 수 있습니다.

**CloudWatch 경보를 삭제하려면(콘솔)**

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

1. 탐색 창에서 **Alarms(경보)**를 선택합니다.

1. 경보를 선택하고 **작업**, **삭제**를 선택합니다.

1. 확인 메시지가 나타나면 **삭제**를 선택합니다.

**CloudWatch 경보를 삭제하려면(AWS CLI)**  
[delete-alarms](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/delete-alarms.html) 명령을 사용합니다. 한 번에 하나 이상의 경보를 삭제할 수 있습니다. 예컨대, 다음 명령을 사용하여 `Step-Scaling-AlarmHigh-AddCapacity` 및 `Step-Scaling-AlarmLow-RemoveCapacity` 경보를 삭제합니다.

```
aws cloudwatch delete-alarms --alarm-name Step-Scaling-AlarmHigh-AddCapacity Step-Scaling-AlarmLow-RemoveCapacity
```

# Amazon EC2 Auto Scaling 리소스에 대한 삭제 방지 구성
<a name="resource-deletion-protection"></a>

 여러 보호 계층을 구성하여 Amazon EC2 Auto Scaling 인프라가 실수로 삭제되지 않도록 보호합니다. Auto Scaling은 Auto Scaling 그룹과 Auto Scaling이 관리하는 Amazon EC2 인스턴스에 대한 원치 않는 리소스 삭제를 방지하기 위한 몇 가지 접근 방식을 제공합니다.

**Topics**
+ [Auto Scaling 그룹 삭제 보호 구성](#asg-deletion-protection)
+ [IAM 정책을 사용하여 삭제 권한 제어](#deletion-protection-iam-policies)

## Auto Scaling 그룹 삭제 보호 구성
<a name="asg-deletion-protection"></a>

 삭제 방지는 Amazon EC2 Auto Scaling 그룹이 실수로 삭제되는 것을 방지하는 리소스 수준 설정입니다. 활성화되면 삭제 방지 기능은 [ DeleteAutoScalingGroup ](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_DeleteAutoScalingGroup.html) API 작업이 성공하지 못하도록 차단하므로 Auto Scaling 그룹을 삭제하기 전에 먼저 삭제 방지 설정을 덜 제한적인 수준으로 업데이트해야 합니다.

Amazon EC2 Auto Scaling은 세 가지 수준의 삭제 보호를 제공합니다.

**없음**(기본값)  
 삭제 방지가 활성화되지 않았습니다. 즉, `ForceDelete` 옵션을 사용하거나 사용하지 않고 Auto Scaling 그룹을 삭제할 수 있습니다. `ForceDelete`를 사용하면 Auto Scaling 그룹에서 관리하는 모든 Amazon EC2 인스턴스도 종료 수명 주기 후크를 실행하지 않고 강제로 종료됩니다.

**강제 삭제 방지**  
 `ForceDelete` 옵션을 사용할 때는 Auto Scaling 그룹을 삭제할 수 없습니다. 이 구성을 사용하면 빈 Auto Scaling 그룹(인스턴스가 없는 그룹)을 삭제할 수 있습니다. 이 옵션은 대량 인스턴스 종료를 방지하지만 빈 그룹을 정리할 수 있는 프로덕션 워크로드에 권장됩니다.

**모든 삭제 방지**  
 Auto Scaling 그룹은 `ForceDelete` 옵션 사용 여부에 관계없이 삭제할 수 없습니다. 이 옵션은 우발적 삭제로부터 가장 강력한 보호를 제공합니다. Auto Scaling 그룹을 삭제하려면 먼저 삭제 방지 기능을 명시적으로 비활성화해야 합니다. 이는 거의 또는 절대 삭제하지 않아야 하는 미션 크리티컬 Auto Scaling 그룹에 권장됩니다.

### 삭제 방지 작동 방식
<a name="deletion-protection-how-it-works"></a>

 삭제 방지가 활성화된 상태에서 [ DeleteAutoScalingGroup ](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_DeleteAutoScalingGroup.html) API 작업을 시도하는 경우: 

1.  Amazon EC2 Auto Scaling은 요청을 처리하기 전에 삭제 방지 설정을 검증합니다.

1.  구성된 삭제 방지 수준이 삭제 시도를 차단하면 Amazon EC2 Auto Scaling은를 반환합니다`ValidationError`.

1.  Auto Scaling 그룹과 해당 Amazon EC2 인스턴스는 변경되지 않습니다.

1.  Auto Scaling 그룹을 삭제하려면 먼저 삭제 방지 설정을 덜 제한적인 수준으로 업데이트해야 합니다.

 삭제 방지 기능은 다음과 같은 다른 작업을 방지하지 않습니다.
+  Auto Scaling 그룹 구성 업데이트.
+  개별 인스턴스 종료.
+  조정 작업(수동 또는 자동).
+  프로세스를 일시 중지하거나 재개합니다.

 인스턴스 종료를 정상적으로 처리하는 방법에 대한 자세한 내용은 섹션을 참조하세요[인스턴스 종료를 원활하게 처리할 수 있도록 애플리케이션 설계](gracefully-handle-instance-termination.md).

### 삭제 방지 구성
<a name="configure-deletion-protection"></a>

 Auto Scaling 그룹을 생성하거나 기존 Auto Scaling 그룹의 설정을 업데이트할 때 삭제 방지를 설정할 수 있습니다.

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

**삭제 방지 기능을 사용하여 Auto Scaling 그룹을 생성하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 열고 탐색 창에서 **Auto Scaling Groups**(Auto Scaling 그룹)를 선택합니다.

1. **Create Auto Scaling group**(Auto Scaling 그룹 생성)을 선택합니다.

1. Auto Scaling 그룹의 구성 단계를 완료합니다.

1. **그룹 크기 및 크기 조정 구성** 페이지에서 **추가 설정을** 확장합니다.

1. **Auto Scaling 그룹 삭제 보호**에서 원하는 보호 수준을 선택합니다.
   + **없음** - 삭제 방지 없음(기본값)
   + **강제 삭제 방지** - 강제 삭제 작업 차단
   + **모든 삭제 방지** - 모든 삭제 작업 차단

1. 나머지 단계를 완료하여 Auto Scaling 그룹을 생성합니다.

**기존 Auto Scaling 그룹에서 삭제 방지를 업데이트하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 열고 탐색 창에서 **Auto Scaling 그룹(Auto Scaling Groups)**을 선택합니다.

1. Auto Scaling 그룹 옆의 확인란을 선택합니다.

1. **작업(Actions)**, **편집(Edit)**을 선택합니다.

1. **추가 설정**에서 **Auto Scaling 그룹 삭제 보호** 설정을 업데이트합니다.

1. **업데이트**를 선택합니다.

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

**삭제 방지 기능을 사용하여 Auto Scaling 그룹을 생성하려면**  
[create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html) 명령을 `--deletion-protection` 파라미터와 함께 사용합니다.

```
aws autoscaling create-auto-scaling-group \
    --auto-scaling-group-name my-asg \
    --launch-template LaunchTemplateName=my-template,Version='$Latest' \
    --min-size 1 \
    --max-size 5 \
    --desired-capacity 2 \
    --vpc-zone-identifier "subnet-12345678,subnet-87654321" \
    --deletion-protection prevent-force-deletion
```

에 유효한 값은 \$1 `none` `prevent-force-deletion` \$1`--deletion-protection`입니다. `prevent-all-deletion` 

**기존 Auto Scaling 그룹에서 삭제 방지를 업데이트하려면**  
[update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html) 명령을 사용합니다.

```
aws autoscaling update-auto-scaling-group \
    --auto-scaling-group-name my-asg \
    --deletion-protection prevent-all-deletion
```

**삭제 방지를 비활성화하려면**  
삭제 방지를 로 설정합니다`none`.

```
aws autoscaling update-auto-scaling-group \
    --auto-scaling-group-name my-asg \
    --deletion-protection none
```

**삭제 방지 상태를 확인하려면**  
[describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html) 명령을 사용합니다.

```
aws autoscaling describe-auto-scaling-groups \
    --auto-scaling-group-names my-asg
```

------

## IAM 정책을 사용하여 삭제 권한 제어
<a name="deletion-protection-iam-policies"></a>

 AWS Identity and Access Management (IAM) 정책을 사용하여 Auto Scaling 그룹을 삭제할 수 있는 사용자 및 역할을 제어합니다. IAM 기반 제어는 자격 증명 수준에서 권한을 제한하여 추가 보안 계층을 제공합니다.

IAM 정책은 다음과 같은 경우에 특히 유용합니다.
+  사용자마다 Auto Scaling 작업에 대한 다양한 수준의 액세스를 허용합니다.
+  특정 사용자가 다른 Auto Scaling 작업을 수행할 수 있더라도 `ForceDelete` 옵션을 사용하지 못하도록 합니다.
+  삭제 권한을 특정 Auto Scaling 그룹으로 제한합니다.

 다음 정책은 그룹에 `environment=development` 태그가 있는 경우에만 Auto Scaling 그룹의 삭제를 허용합니다.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [{
      "Effect": "Allow",
      "Action": "autoscaling:DeleteAutoScalingGroup",
      "Resource": "*",
      "Condition": {
          "StringEquals": { "aws:ResourceTag/environment": "development" }
      }
   }]
}
```

------

 다음 정책은 `autoscaling:ForceDelete` 조건 키를 사용하여 `DeleteAutoScalingGroup` API 작업에 대한 액세스를 제어합니다. 이렇게 하면 특정 사용자가 Auto Scaling 그룹 내의 모든 Amazon EC2 인스턴스를 종료하는 `ForceDelete` 작업을 사용하지 못할 수 있습니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Deny",
        "Action": "autoscaling:DeleteAutoScalingGroup",
        "Resource": "*",
        "Condition": {
            "Bool": {
                "autoscaling:ForceDelete": "true"
            }
        }
    }]
}
```

------

 또는 조건 키를 사용하여 Auto Scaling 그룹에 대한 액세스를 제어하고 있지 않은 경우, `Resource` 요소에서 리소스의 ARN을 지정하여 대신 액세스를 제어할 수 있습니다.

 다음 정책은 사용자에게 `DeleteAutoScalingGroup` API 작업을 사용할 수 있는 권한을 부여하지만 이름이 로 시작하는 Auto Scaling 그룹에만 적용됩니다`devteam-`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "autoscaling:DeleteAutoScalingGroup",
            "Resource": "arn:aws:autoscaling:us-east-1:111122223333:autoScalingGroup:*:autoScalingGroupName/devteam-*"
        }
    ]
}
```

------

 여러 ARN을 목록에 포함시켜 지정할 수도 있습니다. UUID를 포함하면 특정 Auto Scaling 그룹에 대한 액세스 권한을 부여할 수 있습니다. 새 그룹의 UUID는 이름이 같은 삭제된 그룹의 UUID와 다릅니다.

```
"Resource": [
    "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-1",
    "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-2",
    "arn:aws:autoscaling:region:account-id:autoScalingGroup:uuid:autoScalingGroupName/devteam-3"
]
```

 삭제 권한을 제어하는 정책을 포함하여 Amazon EC2 Auto Scaling에 대한 IAM 정책의 추가 예는 섹션을 참조하세요[ID 기반 정책 예시](security_iam_id-based-policy-examples.md).