서비스 관리형 권한으로 CloudFormation StackSets 생성
service-managed
권한을 사용하면 특정 리전에서 AWS Organizations 관리 계정에 스택 인스턴스를 배포할 수 있습니다. 이 모델을 사용하면 필요한 IAM 역할을 생성할 필요가 없습니다. StackSets가 사용자를 대신하여 IAM 역할을 생성합니다. 나중에 대상 조직 또는 조직 단위(OU)에 추가되는 계정에 자동 배포를 활성화할 수도 있습니다. 자동 배포를 활성화한 경우 대상 조직 또는 OU에서 스택 인스턴스가 제거되면 StackSets가 자동으로 계정에서 스택 인스턴스를 삭제합니다. 자세한 내용은 신뢰할 수 있는 액세스 활성화 단원을 참조하십시오.
고려 사항
서비스 관리형 권한으로 스택 세트를 생성하기 전에 다음을 고려하세요.
-
서비스 관리형 권한이 있는 스택 세트는 위임된 관리자가 생성한 스택 세트를 포함하여 관리 계정에 생성됩니다.
-
스택 세트는 전체 조직 또는 지정된 조직 단위(OU)를 대상으로 할 수 있습니다. 스택 세트가 조직을 대상으로 하는 경우, 조직의 모든 OU에 있는 모든 계정도 대상으로 합니다. 스택 세트가 지정된 OU를 대상으로 하는 경우, 해당 OU의 모든 계정도 대상으로 합니다.
-
스택 세트가 상위 OU를 대상으로 하는 경우 스택 세트는 하위 OU를 대상으로 합니다.
-
여러 스택 세트가 동일한 조직 또는 OU를 대상으로 할 수 있습니다.
-
스택 세트는 조직 외부의 계정을 대상으로 지정할 수 없습니다.
-
스택 세트는 중첩 스택을 배포할 수 없습니다.
-
관리 계정이 조직에 있거나 조직의 OU에 있는 경우에도 StackSets에서는 조직 관리 계정에 스택 인스턴스를 배포하지 않습니다.
-
자동 배포는 스택 세트 수준에서 설정됩니다. OU, 계정 또는 리전의 경우 자동 배포를 선택적으로 조정할 수 없습니다.
-
관리 계정에 로그인하는 데 사용하는 IAM 보안 주체 엔터티(사용자, 역할 또는 그룹)의 권한에 따라 StackSets와 함께 배포할 권한이 있는지 여부가 결정됩니다. 조직에 배포할 권한을 부여하는 IAM 정책 예제는 서비스 관리형 스택 세트 권한을 부여하는 샘플 정책 단원을 참조하십시오.
-
위임된 관리자는 조직의 계정에 배포할 수 있는 모든 권한을 가집니다. 관리 계정은 위임된 관리자 권한을 특정 OU에 배포하는 권한 또는 특정 스택 세트 작업을 수행하는 권한으로 제한할 수 없습니다.
서비스 관리형 권한으로 스택 세트 생성(콘솔)
-
AWS Management Console에 로그인하여 https://console.aws.amazon.com/cloudformation
에서 AWS CloudFormation 콘솔을 엽니다. -
화면 상단의 탐색 모음에서 스택 세트를 관리할 AWS 리전을 선택합니다.
-
탐색 창에서 스택 세트를 선택합니다.
-
StackSet 페이지의 상단에서 StackSet 만들기를 선택합니다.
-
권한에서 서비스 관리형 권한을 선택합니다.
참고
AWS Organizations에서 신뢰할 수 있는 액세스가 비활성화되면 배너가 표시됩니다. 서비스 관리형 권한으로 스택 세트를 만들거나 업데이트하려면 신뢰할 수 있는 액세스가 필요합니다. 조직 관리 계정의 관리자만 AWS Organizations를 사용하여 스택 세트에 대한 신뢰할 수 있는 액세스 활성화에 대한 권한이 있습니다.
-
사전 조건 - 템플릿 준비에서 템플릿 준비 완료를 선택합니다.
-
템플릿 지정, 아래에서 스택 템플릿을 포함하는 S3 버킷의 URL을 지정하거나 스택 템플릿 파일을 업로드하도록 선택합니다. 그리고 다음을 선택합니다.
-
StackSet 세부 정보 지정 페이지에서 스택 세트의 이름을 제공하고 파라미터를 지정한 후 다음을 선택합니다.
-
StackSet 옵션 구성 페이지의 태그 아래에서 스택의 리소스에 적용할 태그를 지정합니다.
-
StackSets가 충돌하지 않는 작업을 동시에 수행하고 충돌하는 작업을 대기열에 넣도록 Execution configuration(실행 구성)에서 Active(활성)를 선택합니다. 충돌하는 작업이 완료된 후 StackSets는 요청 순서대로 대기 중인 작업을 시작합니다.
참고
이미 실행 중이거나 대기 중인 작업이 있는 경우 StackSets는 충돌하지 않더라도 모든 수신 작업을 대기열에 넣습니다.
해당 스택 세트에 대해 실행 중이거나 대기 중인 작업이 있는 동안에는 스택 세트의 실행 구성을 수정할 수 없습니다.
-
아직 활성화하지 않은 경우 계속해서 신뢰할 수 있는 액세스를 활성화하려면 다음을 선택합니다.
-
배포 옵션 설정 페이지의 배포 대상에서 다음 중 하나를 수행합니다.
-
조직의 모든 계정에 배포하려면 조직에 배포를 선택합니다.
-
특정 OU의 모든 계정에 배포하려면 OU(조직 단위)에 배포를 선택합니다. OU 추가를 선택한 다음, 텍스트 상자에 대상 OU ID를 붙여 넣습니다. 각각의 새로운 대상 OU에 대해 반복합니다.
-
-
자동 배포에서 StackSets가 나중에 대상 조직 또는 OU에 추가되는 계정에 자동으로 배포할지 여부를 선택합니다.
-
자동 배포를 활성화한 경우 계정 제거 동작에서 대상 조직 또는 OU에서 계정이 제거될 때 스택 리소스를 유지할지 또는 삭제할지 여부를 선택합니다.
참고
스택 보관을 선택하면 스택 인스턴스가 스택 세트에서 제거되지만 스택 및 관련 리소스는 유지됩니다. 리소스는 현재 상태로 유지되지만 더 이상 스택 세트에 포함되지 않습니다.
-
리전 지정에서 스택 인스턴스를 배포할 리전을 선택합니다.
-
Deployment options(배포 옵션)의 경우:
-
최대 동시 계정에서 필요에 따라 최대 동시 계정을 구성합니다.
-
내결함성에서 필요에 따라 내결함성을 구성합니다.
-
리전 동시성에서 필요에 따라 리전 동시성을 선택합니다.
-
동시성 모드에서 필요에 따라 동시성 모드를 선택합니다.
-
-
다음을 선택하여 계속 진행합니다.
-
Review(검토) 페이지에서 StackSets가 올바른 리전의 올바른 계정에 배포하는지 확인한 다음 Create StackSet(스택 세트 만들기)를 선택합니다.
StackSet 세부 정보 페이지가 열립니다. 스택 세트에서 스택 생성 진행률과 상태를 볼 수 있습니다.
서비스 관리형 권한으로 스택 세트 생성(AWS CLI)
AWS CLI를 사용하여 스택 세트를 생성하는 경우 별개의 두 명령을 실행합니다. create-stack-set 중에는 템플릿을 업로드하고 스택 세트 컨테이너를 만들고 자동 배포를 관리합니다. create-stack-instances 중에는 특정 대상 계정에 스택 인스턴스를 생성합니다.
위임 관리자 역할을 수행할 때는 StackSets 명령을 실행할 때마다 --call-as
옵션을 DELEGATED_ADMIN
으로 설정해야 합니다.
--call-as
DELEGATED_ADMIN
위임된 관리자가 생성한 스택 세트는 조직의 관리 계정에 생성됩니다.
-
create-stack-set CLI 명령을 사용합니다.
다음 예제에서는 StackSets가 나중에 대상 조직 또는 OU에 추가되는 계정에 자동으로 배포할 수 있도록 자동 배포를 활성화합니다. 대상 조직 또는 OU에서 계정이 제거되어도 스택 리소스는 보존됩니다.
aws cloudformation create-stack-set \ --stack-set-name
my-stackset
\ --template-urlhttps://s3.us-west-2.amazonaws.com/cloudformation-templates-us-west-2/MyApp.template
\ --permission-modelSERVICE_MANAGED
\ --auto-deployment Enabled=true
,RetainStacksOnAccountRemoval=true
참고
이미 실행 중이거나 대기 중인 작업이 있는 경우 StackSets는 충돌하지 않더라도 모든 수신 작업을 대기열에 넣습니다.
해당 스택 세트에 대해 실행 중이거나 대기 중인 작업이 있는 동안에는 스택 세트의 실행 구성을 수정할 수 없습니다.
-
create-stack-set 명령이 완료되면 list-stack-sets 명령을 실행하여 스택 세트가 생성되었는지 확인합니다. 새 스택 세트가 결과에 나열됩니다.
aws cloudformation list-stack-sets
-
멤버 계정에 로그인한 상태에서
--call-as
옵션을DELEGATED_ADMIN
으로 설정하는 경우 list-stack-sets는 조직의 관리 계정에서 서비스 관리형 권한이 있는 모든 스택 세트를 반환합니다. -
AWS 계정에 로그인한 상태에서
--call-as
옵션을SELF
로 설정하는 경우 list-stack-sets는 AWS 계정의 모든 자체 관리형 스택 세트를 반환합니다. -
조직의 관리 계정에 로그인한 상태에서
--call-as
옵션을SELF
로 설정하는 경우 list-stack-sets는 조직의 관리 계정에 있는 모든 스택 세트를 반환합니다.
-
-
create-stack-instances 명령을 사용하여 스택 세트에 스택 인스턴스를 추가합니다.
--deployment-targets
옵션으로 조직의 모든 계정에 배포할 조직 루트 ID를 지정하거나 해당 OU의 모든 계정에 배포할 OU ID를 지정합니다. 이 예에서는ou-rcuk-1x5j1lwo
및ou-rcuk-slr5lh0a
ID가 있는 OU를 지정합니다.aws cloudformation create-stack-instances --stack-set-name
my-stackset
\ --deployment-targets OrganizationalUnitIds='["ou-rcuk-1x5j1lwo", "ou-rcuk-slr5lh0a"]'
\ --regions'["us-west-2","us-east-1"]'
중요
작업이 완료된 후에 다른 작업을 시작하십시오. 한 번에 한 작업만 실행할 수 있습니다.
-
create-stack-instances 출력의 일부로 반환된
operation-id
를 사용하여 describe-stack-set-operation을 실행하여 스택 인스턴스가 성공적으로 생성되었는지 확인합니다.aws cloudformation describe-stack-set-operation \ --stack-set-name
my-awsconfig-stackset
\ --operation-idoperation_ID