CloudFormation에서 상위가 루트 스택인 중첩 스택으로 기존 리소스를 가져오려면 어떻게 해야 하나요?

2분 분량
0

AWS CloudFormation에 상위 스택이 루트 스택인 중첩 스택이 있습니다. 기존 리소스를 중첩 스택으로 가져오려 합니다. 그러나 루트 스택에서 리소스를 가져오려고 하면 "This template does not include any resources to import."라는 오류가 발생합니다.

간략한 설명

중첩 스택의 상위 스택이 루트인 경우 루트 스택만 수정하는 것이 좋습니다.

참고: 다음 해결 방법으로 상위 스택이 루트 스택인 중첩 스택으로 리소스를 가져옵니다.

중요: 가져오기 작업 후에는 항상 스택에서 드리프트 감지를 실행하여 가져온 리소스가 드리프트되지 않았는지 확인하세요.

해결 방법

리소스를 중첩 스택으로 가져오려면 다음 단계를 수행합니다.

  1. 중첩된 AWS::CloudFormation::Stack 리소스에서 Retain DeletionPolicy로 루트 템플릿을 업데이트하여 루트 스택에서 스택을 삭제하지 않고 분리합니다.
  2. 템플릿에서 AWS::CloudFormation::Stack을 제거하여 루트 스택을 업데이트합니다.
    참고: 루트 스택을 업데이트한 후에도 중첩 스택은 여전히 Nested로 표시됩니다.
  3. 분리된 중첩 스택에서 가져오기 작업을 수행하여 기존 리소스를 가져옵니다.
    참고: 스택은 여전히 Nested로 간주되기 때문에 대신 루트 스택을 업데이트하도록 권장하는 경고가 나타납니다. 이를 무시하고 중첩 스택을 계속 업데이트합니다. 가져오는 동안 다른 리소스를 수정하지 마세요.
  4. 출력 또는 태그 추가와 같이 쉽게 제거할 수 있는 변경 사항을 사용하여 다시 업데이트하여 분리된 중첩 스택을 IMPORT_COMPLETE 상태 밖으로 이동합니다.
  5. 루트 스택에서 가져오기 작업을 수행하여 중첩 스택을 다시 중첩 계층에 추가합니다.
    참고: 루트 템플릿에 새로 가져온 리소스가 포함되도록 중첩 스택의 업데이트된 템플릿에 대한 참조가 포함되어 있는지 확인하세요.

관련 정보

CloudFormation 워크숍: 중첩 스택 랩

AWS 공식
AWS 공식업데이트됨 2년 전