AWS CloudFormation을 사용하여 한 AWS 계정에서 다른 계정으로 리소스를 프로비저닝하려고 합니다.
간략한 설명
CloudFormation을 사용하여 대상 계정에서 리소스를 생성하려면 지정된 리소스를 정의하는 YAML 또는 JSON 형식의 CloudFormation 템플릿이 있어야 합니다. CloudFormation 템플릿이 준비되면 대상 계정의 템플릿을 사용하여 스택을 생성하고 지정된 리소스를 프로비저닝합니다.
소스 계정에서 수동으로 프로비저닝한 리소스의 경우 CloudFormation IaC 생성기를 사용하여 소스 계정 템플릿을 생성합니다. 그런 다음, 해당 템플릿을 사용하여 대상 계정의 스택 템플릿 리소스를 정의합니다.
해결 방법
IaC 생성기를 사용하여 소스 계정 템플릿 생성
참고: 다음은 IaC 생성기가 지원하는 수동으로 프로비저닝된 리소스에 대한 단계입니다. IaC 생성기는 AWS 리전에서 AWS Cloud Control API를 지원하는 리소스 유형만 지원합니다.
다음 단계를 완료하십시오.
- 소스 계정에서 CloudFormation 콘솔을 엽니다.
- 탐색 창에서 **IaC generator(IaC 생성기)**를 선택합니다. 그런 다음, **Start a new scan(새 스캔 시작)**을 선택합니다.
참고: 스캔 시간은 보유한 리소스의 수에 따라 달라지며 1,000개의 리소스에 대해 최대 10분이 소요될 수 있습니다.
- **Create template(템플릿 생성)**을 선택합니다.
- Specify template details(템플릿 세부 정보 지정) 페이지의 Prerequisite - Prepare template(사전 조건 - 템플릿 준비) 섹션에서 **Start from a new template(새 템플릿에서 시작)**을 선택한 다음, Provide template details(템플릿 세부 정보 제공) 섹션을 업데이트합니다.
- **Next(다음)**를 선택합니다.
- Add scanned resources(스캔한 리소스 추가) 페이지에서 복사하려는 리소스를 선택하고 **Next(다음)**를 선택합니다.
- Add related resources(관련 리소스 추가) 페이지에서 복사하려는 관련 리소스를 선택하고 **Next(다음)**를 선택합니다.
- Review and Create(검토 및 생성) 페이지에서 **Create template(템플릿 생성)**을 선택한 다음, **Download(다운로드)**를 선택합니다.
대상 계정 템플릿 생성
참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
소스 계정 템플릿을 생성한 후 이 템플릿을 참조로 사용하여 대상 계정 템플릿을 생성합니다. 소스 계정 템플릿의 공통 리소스 속성을 대상 계정 템플릿에 복사해야 합니다.
소스 계정 템플릿을 참조하여 대상 계정 템플릿을 생성할 때는 다음 작업을 수행하십시오.
- 템플릿은 소스 계정의 전역적으로 고유한 ARN과 속성 값으로 구성될 수 있습니다. 템플릿에서 ARN 또는 속성을 수정한 다음, 대상 계정 사용 사례에 따라 정의합니다.
- 리소스 속성 및 논리적 ID와 같은 템플릿 속성을 수정하고 사용 사례에 맞는 파라미터를 생성합니다.
- IaC 생성기에서 지원하지 않는 리소스의 경우 리소스의 AWS CLI 명령을 실행하여 리소스 세부 정보를 확인합니다. 출력에서 리소스 구성 속성을 확인한 다음, CloudFormation 리소스 유형 참조를 사용하여 리소스를 정의합니다.
대상 계정에 CloudFormation 스택 생성
CloudFormation 템플릿을 지정된 리소스의 구성 속성과 함께 사용할 준비가 되면 대상 계정에 스택을 생성하여 리소스를 프로비저닝합니다. 리소스를 더욱 잘 관리하려면 리소스를 여러 스택으로 그룹화하십시오.