스택 출력 값 내보내기 - AWS CloudFormation

스택 출력 값 내보내기

스택 간에 정보를 공유하려면 스택의 출력 값을 내보냅니다. 내보낸 값을 동일한 AWS 계정 및 리전의 다른 스택으로 가져올 수 있습니다. 예를 들어, 퍼블릭 웹 서버의 서브넷 및 보안 그룹 ID를 내보내는 네트워킹 스택이 하나 있을 수 있습니다. 퍼블릭 웹 서버가 있는 스택은 네트워킹 리소스를 쉽게 가져올 수 있습니다. 스택의 템플릿 내에서 리소스 ID를 하드 코딩하거나 리소스 ID를 입력 파라미터로 전달할 필요가 없습니다.

스택의 출력 값을 내보내려면 스택 템플릿의 출력 섹션에서 Export 필드를 사용합니다. 이러한 값을 가져오려면 다른 스택의 템플릿에서 Fn::ImportValue 함수를 사용합니다. 연습 및 샘플 템플릿은 연습: 다른 AWS CloudFormation 스택의 리소스 출력 참조 단원을 참조하십시오.

참고

다른 스택이 출력 값을 가져오면 출력 값을 내보내는 스택을 삭제하거나 내보낸 출력 값을 수정할 수 없습니다. 따라서 내보내는 스택을 삭제하거나 출력 값을 수정하려면 가져오기를 모두 제거해야 합니다.

스택 출력 값 내보내기와 중첩 스택 사용 비교

중첩 스택은 AWS::CloudFormation::Stack 리소스를 사용하여 다른 스택 내에 생성한 스택입니다. 중첩 스택을 사용하여 단일 스택의 모든 리소스를 배포 및 관리합니다. 중첩 스택 그룹 내 스택 하나의 출력은 그룹 내 다른 스택에 대한 입력으로 사용할 수 있습니다. 이는 값을 내보내는 것과는 다릅니다.

중첩 스택 그룹 내로 정보 공유를 제한하려면 중첩 스택을 사용하는 것이 좋습니다. (중첩 스택 그룹 내에서 뿐만이 아니라 해당 그룹 외부에서도) 다른 스택과 정보를 공유하려면 값을 내보냅니다. 예를 들어 서브넷을 사용해 단일 스택을 생성한 다음 이 서브넷의 ID를 내보냅니다. 다른 스택에서는 이 서브넷의 ID를 가져와 해당 서브넷을 사용할 수 있습니다. 따라서 각 스택에서 자체 서브넷을 생성할 필요가 없습니다. 스택이 서브넷 ID를 가져오는 한 이 ID를 변경하거나 삭제할 수 없습니다.

내보낸 출력 값 나열

가져올 수 있는 값을 확인하려면 AWS CloudFormation 콘솔, AWS CLI 또는 AWS CloudFormation API를 사용하여 내보낸 출력 값을 모두 나열합니다. AWS CloudFormation에서는 출력을 내보낸 현재 리전 및 스택에 대해 내보낸 출력의 이름 및 값을 표시합니다. 스택 템플릿에서 내보낸 출력 값을 참조하려면 내보내기 이름 및 Fn::ImportValue 함수를 사용합니다.

내보낸 출력 값을 나열하려면(콘솔)
내보낸 출력 값을 나열하려면(AWS CLI)
내보낸 출력 값을 나열하려면(API)