변경 세트 생성 - AWS CloudFormation

변경 세트 생성

실행 중인 스택에 대한 변경 세트를 생성하려면 수정된 템플릿, 새 입력 파라미터 값 또는 둘 다를 제공하여 수행하려는 변경 사항을 제출합니다. CloudFormation은 제출한 변경 사항과 스택을 비교하여 변경 세트를 생성합니다.

변경 세트를 생성하기 전에 또는 변경 세트 생성 중에 템플릿을 수정할 수 있습니다.

Create a change set for nested stacks (console)
중첩 스택에 대해 변경 세트 생성(콘솔)
  1. AWS CloudFormation 콘솔스택에서 변경 세트를 만들고자 하는 실행 중인 스택을 선택하십시오.

  2. 스택 세부 정보 창에서 Stack actions(스택 작업)를 선택하고 현재 스택에 대한 변경 세트 만들기를 선택합니다.

  3. Create change set for stack-name(스택 이름에 대한 변경 세트 만들기) 페이지에서 다음 중 하나를 수행하여 입력 파라미터 값을 수정하거나 업데이트된 템플릿의 위치를 ​​지정하거나 템플릿을 수정하십시오.

    작업 작업
    입력 파라미터 값을 수정하려면 [현재 템플릿 사용(Use current template)]을 선택하고 [다음(Next)]을 선택하여 입력 파라미터 값을 입력하거나 수정합니다.
    업데이트된 템플릿의 위치를 ​​지정하려면

    템플릿을 수정한 경우 Replace current template(현재 템플릿 교체)을 선택하고 다음 중 하나를 수행하십시오.

    • Amazon S3 버킷에 저장된 템플릿의 경우 Amazon S3 URL을 선택합니다. 템플릿에 대한 URL을 입력하거나 붙여 넣고 다음을 선택합니다.

      템플릿이 버전 관리를 사용하는 버킷에 있는 경우 특정 버전의 템플릿(예: https://s3.amazonaws.com/templates/myTemplate.template?versionId=123ab1cdeKdOW5IH4GAcYbEngcpTJTDW)을 지정할 수 있습니다. 자세한 내용을 알아보려면 Amazon Simple Storage Service 사용 설명서Managing objects in a versioning-enabled bucket(버전 관리를 사용하는 버킷의 객체 관리)을 참조하세요.

    • 컴퓨터에 로컬로 저장된 템플릿의 경우 템플릿 파일에 업로드를 선택합니다. [파일 선택(Choose file)]을 선택하고 해당 파일을 찾아 선택한 후 [다음(Next)]을 선택합니다.

    템플릿을 수정하려면 템플릿을 수정하지 않은 경우 Edit template in designer(Designer에서 템플릿 편집)를 선택한 다음 View in designer(Designer에서 보기)를 선택합니다. AWS CloudFormation Designer로 리디렉션됩니다. 템플릿을 수정했으면 를 선택하여 [Create change set for stack-name(stack-name에 대한 변경 세트 생성)] 페이지를 선택한 다음, [Next(다음)]를 선택합니다.
  4. 템플릿에 파라미터가 포함되어 있는 경우 Specify stack details(스택 세부 정보 지정) 페이지에서 해당 입력 파라미터 값을 입력하거나 수정하고 다음을 선택합니다.

    스택 템플릿을 재사용할 경우 CloudFormation에서는 NoEcho 속성으로 선언된 파라미터를 제외하고 스택의 현재 값으로 각 파라미터를 채웁니다. 이러한 파라미터에 기존 값을 사용하려면 기존 값 사용을 선택합니다.

    동적 파라미터를 사용하여 보안 암호를 관리하는 방법 및 NoEcho를 사용하여 민감한 정보를 마스킹 처리하는 방법에 대한 자세한 내용은 템플릿에 자격 증명을 포함하지 않음 모범 사례를 참조하세요.

  5. [Configure stack options(구성 스택 옵션)] 페이지에서 스택 태그, IAM 서비스 역할, 스택 정책, 롤백 구성, Amazon SNS 알림 주제(해당할 경우) 또는 변경 세트를 업데이트한 다음, [Next(다음)]을 선택합니다.

    참고

    중첩 스택에 대한 변경 세트는 기본적으로 활성화됩니다. 그러면 템플릿에 지정된 모든 중첩 세트에 대해 변경 세트가 생성됩니다. 중첩 스택에 대한 변경 세트 정보는 중첩 스택에 대한 변경 세트를 참조하세요.

  6. 스택 이름 검토 페이지에서 이 변경 세트의 변경 사항을 검토하십시오.

    템플릿에 AWS Identity and Access Management(IAM) 리소스가 포함된 경우 I acknowledge that CloudFormation might create IAM resources(CloudFormation에서 IAM 리소스를 생성할 수 있음을 확인함)를 선택합니다. IAM 리소스는 AWS 계정의 권한을 수정할 수 있습니다. 이러한 리소스를 검토하여 의도한 작업만 허용하는지 확인하세요. 자세한 내용은 AWS Identity and Access Management을(를) 통한 액세스 제어 단원을 참조하십시오.

  7. 변경 세트 생성을 선택합니다. 변경 세트의 이름을 지정하고 선택적으로 변경 세트의 설명을 지정하여 용도를 식별합니다. 변경 세트 만들기를 선택합니다.

    변경 세트 세부 정보 페이지의 변경 사항 탭으로 리디렉션됩니다. CloudFormation에서 변경 세트를 생성하면 변경 세트의 상태가 CREATE_IN_PROGRESS로 전환됩니다. 변경 세트가 생성된 후 CloudFormation에서는 상태를 CREATE_COMPLETE로 설정합니다. [변경(Changes)] 섹션의 CloudFormation에서 스택에 적용된 모든 변경 사항을 나열합니다. 자세한 내용은 변경 세트 보기 단원을 참조하십시오.

    
         중첩된 변경 세트의 세부 정보 페이지입니다.

    CloudFormation에서 변경 세트 생성에 실패하면(FAILED 상태 보고) [상태(Status)] 필드에 표시된 오류를 수정한 다음 변경 세트를 다시 생성합니다.

Create a change set (console)
변경 세트(콘솔)를 생성하려면
  1. AWS CloudFormation 콘솔스택에서 변경 세트를 만들고자 하는 실행 중인 스택을 선택하십시오.

  2. 스택 세부 정보 창에서 Stack actions(스택 작업)를 선택하고 현재 스택에 대한 변경 세트 만들기를 선택합니다.

  3. Create change set for stack-name(스택 이름에 대한 변경 세트 만들기) 페이지에서 다음 중 하나를 수행하여 입력 파라미터 값을 수정하거나 업데이트된 템플릿의 위치를 ​​지정하거나 템플릿을 수정하십시오.

    작업 작업
    입력 파라미터 값을 수정하려면 [현재 템플릿 사용(Use current template)]을 선택하고 [다음(Next)]을 선택하여 입력 파라미터 값을 입력하거나 수정합니다.
    업데이트된 템플릿의 위치를 ​​지정하려면

    템플릿을 수정한 경우 Replace current template(현재 템플릿 교체)을 선택하고 다음 중 하나를 수행하십시오.

    • Amazon S3 버킷에 저장된 템플릿의 경우 Amazon S3 URL을 선택합니다. 템플릿에 대한 URL을 입력하거나 붙여 넣고 다음을 선택합니다.

      템플릿이 버전 관리를 사용하는 버킷에 있는 경우 특정 버전의 템플릿(예: https://s3.amazonaws.com/templates/myTemplate.template?versionId=123ab1cdeKdOW5IH4GAcYbEngcpTJTDW)을 지정할 수 있습니다. 자세한 내용을 알아보려면 Amazon Simple Storage Service 사용 설명서Managing objects in a versioning-enabled bucket(버전 관리를 사용하는 버킷의 객체 관리)을 참조하세요.

    • 컴퓨터에 로컬로 저장된 템플릿의 경우 템플릿 파일에 업로드를 선택합니다. [파일 선택(Choose file)]을 선택하고 해당 파일을 찾아 선택한 후 [다음(Next)]을 선택합니다.

    템플릿을 수정하려면 템플릿을 수정하지 않은 경우 Edit template in designer(Designer에서 템플릿 편집)를 선택한 다음 View in designer(Designer에서 보기)를 선택합니다. AWS CloudFormation Designer로 리디렉션됩니다. 템플릿을 수정했으면 를 선택하여 [Create change set for stack-name(stack-name에 대한 변경 세트 생성)] 페이지를 선택한 다음, [Next(다음)]를 선택합니다.
  4. 템플릿에 파라미터가 포함되어 있는 경우 Specify stack details(스택 세부 정보 지정) 페이지에서 해당 입력 파라미터 값을 입력하거나 수정하고 다음을 선택합니다.

    스택 템플릿을 재사용할 경우 CloudFormation에서는 NoEcho 속성으로 선언된 파라미터를 제외하고 스택의 현재 값으로 각 파라미터를 채웁니다. 이러한 파라미터에 기존 값을 사용하려면 기존 값 사용을 선택합니다.

    NoEcho를 사용하여 민감한 정보를 마스킹 처리하는 방법과 동적 파라미터를 사용하여 보안 암호를 관리하는 방법에 대한 자세한 내용은 템플릿에 자격 증명을 포함하지 않음 모범 사례를 참조하세요.

  5. [Configure stack options(구성 스택 옵션)] 페이지에서 스택 태그, IAM 서비스 역할, 스택 정책, 롤백 구성, Amazon SNS 알림 주제(해당할 경우) 또는 변경 세트를 업데이트한 다음, [Next(다음)]을 선택합니다.

    참고

    중첩 스택에 대한 변경 세트는 기본적으로 활성화됩니다. 그러면 템플릿에 지정된 모든 중첩 세트에 대해 변경 세트가 생성됩니다. 현재 스택에 대해서만 변경 세트를 생성하려면 [Disabled(비활성화)]를 선택합니다. 중첩 스택에 대한 변경 세트 정보는 중첩 스택에 대한 변경 세트를 참조하세요.

  6. 스택 이름 검토 페이지에서 이 변경 세트의 변경 사항을 검토하십시오.

    템플릿에 AWS Identity and Access Management(IAM) 리소스가 포함된 경우 I acknowledge that CloudFormation might create IAM resources(CloudFormation에서 IAM 리소스를 생성할 수 있음을 확인함)를 선택합니다. IAM 리소스는 AWS 계정의 권한을 수정할 수 있습니다. 이러한 리소스를 검토하여 의도한 작업만 허용하는지 확인하세요. 자세한 내용은 AWS Identity and Access Management을(를) 통한 액세스 제어 단원을 참조하십시오.

  7. 변경 세트 생성을 선택합니다. 변경 세트의 이름을 지정하고 선택적으로 변경 세트의 설명을 지정하여 용도를 식별합니다. 변경 세트 만들기를 선택합니다.

    변경 세트 세부 정보 페이지의 변경 사항 탭으로 리디렉션됩니다. CloudFormation에서 변경 세트를 생성하면 변경 세트의 상태가 CREATE_IN_PROGRESS로 전환됩니다. 변경 세트가 생성된 후 CloudFormation에서는 상태를 CREATE_COMPLETE로 설정합니다. [변경(Changes)] 섹션의 CloudFormation에서 스택에 적용된 모든 변경 사항을 나열합니다. 자세한 내용은 변경 세트 보기 단원을 참조하십시오.

    
         변경 세트의 세부 정보 페이지.

    CloudFormation에서 변경 세트 생성에 실패하면(FAILED 상태 보고) [상태(Status)] 필드에 표시된 오류를 수정한 다음 변경 세트를 다시 생성합니다.

변경 세트를 생성하려면(AWS CLI)
  • aws cloudformation create-change-set 명령을 실행합니다.

    변경 사항을 명령 옵션으로 제출합니다. 새 파라미터 값, 수정된 템플릿 또는 둘 다를 지정할 수 있습니다. 예를 들어 다음 명령은 SampleChangeSet 스택에 대해 SampleStack이라는 변경 세트를 생성합니다. 변경 세트에서 현재 스택의 템플릿을 사용하지만 다음 Purpose 파라미터의 값이 다릅니다.

    aws cloudformation create-change-set --stack-name arn:aws:cloudformation:us-east-1:123456789012:stack/SampleStack/1a2345b6-0000-00a0-a123-00abc0abc000 --change-set-name SampleChangeSet --use-previous-template --parameters ParameterKey="InstanceType",UsePreviousValue=true ParameterKey="KeyPairName",UsePreviousValue=true ParameterKey="Purpose",ParameterValue="production"