AWS AppConfig 삭제 방지 구성
AWS AppConfig는 사용자가 실수로 사용 중인 활성 환경 및 구성 프로필을 삭제하지 않도록 방지하는 계정 설정을 제공합니다. AWS AppConfig는 GetLatestConfiguration 및 GetConfiguration 직접 호출을 모니터링하며 60분 간격(기본 설정) 내에서 이러한 직접 호출에 포함된 구성 프로필과 환경을 추적합니다. 삭제 방지를 활성화한 상태에서 활성 구성 프로파일 또는 환경을 삭제하려고 하면 AWS AppConfig에서 오류를 반환합니다.
참고
다음 정보를 참고하세요.
-
삭제 방지 기능은 기본적으로 비활성화됩니다.
-
기본 간격을 최대 24시간까지 늘릴 수 있습니다.
다음 절차에 따라 AWS AppConfig 삭제 방지를 활성화하고 구성할 수 있습니다.
시작하기 전 준비 사항
AWS CLI의 최신 버전으로 업데이트합니다. 자세한 내용은 AWS Command Line Interface 사용 설명서에서 최신 버전의 AWS CLI 설치 또는 업데이트를 참조하세요.
AWS AppConfig 삭제 방지를 활성화하려면
-
UpdateAccountSettings API를 사용하여 삭제 방지를 활성화합니다. AWS CLI에서 다음과 같은 명령을 실행합니다. 이 명령은
ProtectionPeriodInMinutes
파라미터에 대한 값을 지정하지 않으므로 해당 설정이 변경되지 않습니다.aws appconfig update-account-settings --deletion-protection Enabled=true
다른 간격을 지정하려면 다음 명령을 실행합니다.
aws appconfig update-account-settings --deletion-protection Enabled=true,ProtectionPeriodInMinutes=
a number between 15 and 1440
참고
현재 삭제 방지 설정을 보려면 다음 명령을 실행합니다. 계정에 대해 삭제 방지를 구성하지 않은 경우 이 명령은 기본 설정을 반환합니다.
aws appconfig get-account-settings
삭제 방지를 관리하는 데 도움이 되도록 DeleteEnvironment 및 DeleteConfigurationProfile API에는 DeletionProtectionCheck
라는 파라미터가 포함되어 있습니다. 이 파라미터가 지원하는 값은 다음과 같습니다.
-
BYPASS
: 삭제 방지 검사를 건너뛰고 삭제 보호가 설정되어 있어도 구성 프로필을 삭제하도록 AWS AppConfig에 지시합니다. -
APPLY
: 계정 수준에서 삭제 보호가 비활성화된 경우에도 삭제 방지 검사를 실행하도록 지시합니다. 또한APPLY
는 일반적으로 삭제 보호 검사에서 제외되는 최근 1시간 이내에 생성된 리소스에 대해서도 삭제 보호 검사를 실행합니다. -
ACCOUNT_DEFAULT
: 기본 설정으로, AWS AppConfig가UpdateAccountSettings
API에 지정된 삭제 방지 값을 구현하도록 지시합니다.
참고
기본적으로 DeletionProtectionCheck
는 최근 1시간 이내에 생성된 구성 프로필과 환경을 건너뜁니다. 기본 구성은 삭제 방지 기능이 짧은 수명의 리소스를 생성하는 테스트 및 데모에 방해되지 않도록 하기 위한 것입니다. DeleteEnvironment
또는 DeleteConfigurationProfile
을 직접적으로 호출할 때 DeletionProtectionCheck=APPLY
를 전달하여 이 동작을 재정의할 수 있습니다.
다음 간단한 연습에서는 샘플 명령을 사용하여 DeletionProtectionCheck
파라미터를 사용하는 방법에 대해 설명합니다.
-
배포된 구성에 대해 GetLatestConfiguration을 직접적으로 호출합니다.
aws appconfigdata get-latest-configuration --configuration-token $(aws appconfigdata start-configuration-session --application-identifier
ID
--environment-identifierID
--configuration-profile-identifierID
--query InitialConfigurationToken) outfile.txt -
AWS AppConfig가 구성이 활성 상태임을 등록할 때까지 60초 동안 기다립니다.
-
다음 명령을 실행하여 DeleteEnvironment를 직접적으로 호출하고 환경에 삭제 방지를 적용합니다.
aws appconfig delete-environment --environment-id
ID
--application-idID
--deletion-protection-check APPLY -
60분 이내에
DeleteEnvironment
를 다시 직접적으로 호출하면 다음과 같은 오류가 반환됩니다.An error occurred (BadRequestException) when calling the DeleteEnvironment operation: Environment Beta is actively being used in your application and cannot be deleted.
-
다음 명령을 실행하여 삭제 방지를 건너뛰고 환경을 삭제합니다.
aws appconfig delete-environment --environment-id
ID
--application-idID
--deletion-protection-check BYPASS