CloudFormation 콘솔에서 스택 생성 - AWS CloudFormation

CloudFormation 콘솔에서 스택 생성

이 주제에서는 CloudFormation 콘솔에서 스택을 생성하는 프로세스를 설명합니다. 콘솔에서는 사전 정의된 옵션으로 스택 생성 프로세스를 간소화하는 마법사 기반 인터페이스를 제공합니다.

새 스택을 생성하려면 CloudFormation 템플릿을 제공해야 합니다. 이 템플릿은 프로비저닝하려는 리소스와 해당 리소스의 구성 속성을 지정하는 JSON 또는 YAML 형식의 텍스트 파일입니다. 자세한 내용은 CloudFormation 템플릿 작업 단원을 참조하십시오.

스택 생성

이 섹션의 단계에 따라 스택을 배포합니다.

스택 생성
  1. AWS CloudFormation 콘솔(https://console.aws.amazon.com/cloudformation)을 엽니다.

  2. 화면 상단의 탐색 모음에서 스택을 생성할 AWS 리전을 선택합니다.

  3. 스택 페이지에서 오른쪽 상단의 스택 생성을 선택하고 새 리소스 사용(표준)을 선택합니다.

    또는 기존 리소스 사용(리소스 가져오기) 옵션을 선택하여 템플릿에 설명된 기존 AWS 리소스를 가져올 수 있습니다. 이 옵션에 대한 자세한 내용은 리소스 가져오기를 사용하여 AWS 리소스를 CloudFormation 스택으로 가져오기 섹션을 참조하세요.

  4. 스택 생성 페이지에서 다음 중 하나를 수행합니다.

    • 기존 템플릿을 사용하려면 템플릿 준비의 경우 템플릿 준비 완료를 선택합니다. 그런 다음에 템플릿 지정에서 템플릿의 위치에 따라 Amazon S3 URL 또는 템플릿 파일 업로드를 선택합니다.

      • Amazon S3 URL을 선택하는 경우 S3 버킷의 템플릿 파일에 URL을 제공합니다.

        템플릿에 중첩 스택(예: 하위 디렉터리에 있는 다른 템플릿 문서에서 설명하는 스택)이 포함되어 있으면 S3 버킷에 필수 파일 및 디렉터리가 있는지 확인합니다.

        템플릿이 버전 관리가 활성화된 버킷에 있는 경우 ?versionId=version-id 추가를 통해 특정 템플릿 버전을 URL에 지정할 수 있습니다. 버전 관리가 활성화된 버킷에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 버전 관리가 활성화된 버킷의 객체 작업을 참조하세요.

        URL은 사용자에게 읽기 권한이 있는 S3 버킷에 저장된 템플릿(최대 크기 1MB)을 가리켜야 합니다. URL은 최대 1,024자 길이일 수 있습니다. 일부 리소스의 경우 버킷이 스택과 같은 리전에 있어야 할 수 있습니다.

      • 템플릿 파일 업로드를 선택하는 경우 파일 선택을 선택하여 로컬 컴퓨터에서 템플릿 파일을 선택합니다. 템플릿 파일 크기는 1MB 이하여야 합니다.

        템플릿을 선택하면 CloudFormation이 파일을 업로드하고 S3 URL을 표시합니다. CloudFormation에서는 이를 AWS 계정의 Amazon S3 버킷에 업로드합니다. CloudFormation에서 생성한 S3 버킷이 AWS 계정에 이미 있는 경우 CloudFormation이 템플릿을 해당 버킷에 추가합니다. CloudFormation에서 생성한 버킷이 아직 없는 경우 템플릿 파일을 업로드하는 리전마다 고유한 버킷이 생성됩니다.

        다음은 CloudFormation에서 생성한 S3 버킷 사용 시 고려 사항입니다.

        • AWS 계정의 Amazon S3 권한이 있는 모든 사용자가 버킷에 액세스할 수 있습니다.

        • CloudFormation은 기본값으로 서버 측 암호화가 활성화된 버킷을 생성하여 버킷에 저장된 모든 객체를 암호화합니다.

          CloudFormation에서 생성한 버킷에 대한 암호화 옵션을 직접 관리할 수 있습니다(예: https://console.aws.amazon.com/s3/의 Amazon S3 콘솔 또는 AWS CLI 사용). 자세한 내용은 Amazon Simple Storage Service 사용 설명서Amazon S3 버킷에 대한 기본 서버 측 암호화 동작 설정을 참조하세요.

        • 템플릿을 Amazon S3에 수동으로 업로드하여 자체 버킷을 사용하고 버킷의 권한을 관리할 수 있습니다. 스택을 생성하거나 업데이트할 때마다 템플릿 파일의 Amazon S3 URL을 지정합니다.

    • 템플릿이 준비되지 않은 경우, 샘플 템플릿 사용을 선택하여 템플릿 라이브러리의 샘플 템플릿을 사용하거나 Application Composer에서 빌드를 선택하여 Application Composer로 템플릿을 생성할 수 있습니다. 자세한 내용은 Application Composer 단원을 참조하십시오.

  5. 계속하여 템플릿을 검증하려면 다음을 선택합니다.

    계속하기 전에 CloudFormation에서 템플릿을 검증하여 구문 및 일부 의미 체계 오류(예: 순환 종속성)를 파악합니다. 확인 중에 CloudFormation에서는 먼저 템플릿이 유효한 JSON인지를 확인합니다. 유효한 JSON이 아니면 CloudFormation은 템플릿이 유효한 YAML인지를 확인합니다. 두 확인이 모두 실패한 경우 CloudFormation에서는 템플릿 확인 오류를 반환합니다.

  6. 스택 세부 정보 지정 페이지에서 스택 이름 상자에 스택 이름을 입력합니다.

    스택 이름은 스택 목록에서 특정 스택을 찾을 수 있도록 도와주는 식별자입니다. 스택 이름에는 영숫자(대소문자 구분)와 하이픈만 사용할 수 있습니다. 영문자로 시작해야 하고 128자 이하여야 합니다.

  7. 파라미터 섹션에서 템플릿에 정의된 파라미터의 값을 지정합니다.

  8. 스택 생성을 계속하려면 다음을 선택합니다.

  9. (선택 사항) 스택 옵션 구성 페이지에서 기본 스택 옵션을 변경합니다. 자세한 내용은 스택 옵션 구성 단원을 참조하십시오.

  10. 다음을 선택하여 계속 진행합니다.

  11. 검토 및 생성 페이지에서 스택의 세부 정보를 검토합니다.

    스택 시작 전에 값을 변경하려면 변경하려는 설정이 있는 섹션에서 편집을 선택합니다.

  12. 템플릿에 IAM 리소스가 포함되어 있는 경우 승인 확인란을 선택하여 CloudFormation에서 사용자 지정 이름으로 IAM 리소스를 생성할 수도 있다는 것을 승인합니다. 자세한 내용은 AWS CloudFormation 템플릿에서 IAM 리소스 승인 단원을 참조하십시오.

  13. (선택 사항) 변경 세트를 생성하여 스택을 생성하기 전에 해당 구성을 미리 볼 수 있습니다. 검토 및 생성 페이지에서 변경 세트 생성을 선택하고 지침을 따릅니다. 자세한 내용은 스택 구성 미리 보기 단원을 참조하십시오.

  14. 제출을 선택하여 스택을 시작합니다.

그러면 CloudFormation에서는 템플릿에 정의된 모든 리소스 생성을 진행합니다.

새 스택의 이벤트 탭에서 스택 생성 진행 상황과 상태를 모니터링할 수 있습니다. 자세한 내용은 스택 진행 상황 모니터링 단원을 참조하십시오.

스택 옵션 구성

스택 옵션 구성 페이지에서 CloudFormation 스택의 옵션(예: 태그, 스택 이벤트 알림 또는 스택 정책)을 구성할 수 있습니다.

다음과 같은 스택 옵션을 설정할 수 있습니다.

태그

스택과 CloudFormation에서 태깅을 지원하는 리소스에 태그 키 페어를 50개까지 추가할 수 있습니다. 태그는 비용 추적과 같은 목적으로 AWS 리소스에 할당될 수 있는 고객 정의 키 및 값입니다.

는 영숫자 또는 공백으로 구성됩니다. 태그 키는 최대 127자일 수 있습니다.

은 영숫자 또는 공백으로 구성됩니다. 태그 값은 최대 255자일 수 있습니다.

권한

CloudFormation이 수임할 수 있는 기존 IAM 서비스 역할입니다.

CloudFormation에서는 사용자의 계정 자격 증명을 사용하는 대신 역할의 자격 증명을 사용하여 스택을 생성합니다. 자세한 내용은 AWS CloudFormation 서비스 역할 단원을 참조하십시오.

스택 실패 옵션

모든 스택 배포 및 변경 세트 작업에 대한 프로비저닝 실패 옵션을 지정합니다. 자세한 내용은 리소스 프로비저닝 시 실패 처리 방법 선택 단원을 참조하십시오.

Roll back all stack resources(모든 스택 리소스 롤백) 옵션은 스택 상태가 CREATE_FAILED 또는 UPDATE_FAILED일 때 템플릿에 지정된 모든 리소스를 롤백합니다.

생성 작업의 경우 Preserve successfully provisioned resources(성공적으로 프로비저닝된 리소스 보존) 옵션은 성공한 리소스의 상태를 유지하는 반면 실패한 리소스는 다음 업데이트 작업이 수행될 때까지 실패 상태로 유지됩니다.

업데이트 및 변경 세트 작업의 경우 Preserve successfully provisioned resources(성공적으로 프로비저닝된 리소스 보존) 옵션은 성공한 리소스의 상태를 유지하면서 실패한 리소스를 마지막으로 알려진 안정 상태로 롤백합니다. 실패한 리소스는 UPDATE_FAILED 상태가 됩니다. 마지막으로 알려진 안정 상태가 없는 리소스는 다음 스택 작업 시 삭제됩니다.

스택 생성을 위해 다음과 같은 고급 옵션을 설정할 수도 있습니다.

스택 정책

스택 업데이트 중 의도치 않게 업데이트되지 않도록 하려는 리소스를 정의합니다. 기본적으로 스택 업데이트 중에는 모든 리소스가 업데이트될 수 있습니다.

스택 정책을 바로 JSON으로 입력하거나 스택 정책이 포함된 JSON 파일을 업로드할 수 있습니다. 자세한 내용은 스택 리소스에 대한 업데이트 방지 단원을 참조하십시오.

롤백 구성

스택 생성 및 업데이트 중에 CloudFormation에서 스택의 상태를 모니터링하도록 하여 지정한 경보의 임곗값을 스택에서 위반하는 경우 해당 작업을 롤백할 수 있습니다. CloudFormation에서 모니터링해야 하는 CloudWatch 경보를 지정합니다. 스택 작업 도중 또는 모니터링 기간 동안 ALARM 상태로 전환되는 경보가 하나라도 있을 경우 CloudFormation이 전체 스택 작업을 롤백합니다. 자세한 내용은 롤백 트리거를 사용하여 경보 위반 시 CloudFormation 스택을 롤백합니다. 단원을 참조하십시오.

Notification options(알림 옵션)

스택 이벤트에 대한 알림을 전송하는 기존 또는 새 Amazon Simple Notification Service 주제를 지정할 수 있습니다.

Amazon SNS 주제를 생성하면 스택 이벤트 알림을 보낼 이메일 주소와 이름을 지정해야 합니다.

스택 생성 옵션

다음 옵션은 스택 생성에 포함되지만 스택 업데이트의 일부로 사용할 수 없습니다.

제한 시간

스택 생성 작업 시간이 초과되기 전에 CloudFormation이 할당해야 하는 시간(분)을 지정합니다. CloudFormation이 할당된 시간 내에 전체 스택을 생성하지 못할 경우, 시간 초과로 인해 스택 생성이 실패하고 스택이 롤백됩니다.

기본적으로 스택 생성에는 시간 초과가 없습니다. 하지만 개인 리소스에는 해당 리소스가 구현하는 서비스의 특성에 따라 자체 시간 초과가 설정될 수 있습니다. 예를 들어 스택의 개별 리소스가 시간 초과될 경우, 스택 생성에 대해 지정한 시간 초과 시간이 아직 지나지 않았더라도 스택 생성이 시간 초과됩니다.

종료 방지

스택이 실수로 삭제되는 것을 방지합니다. 종료 방지 기능이 활성화된 스택을 삭제하려고 시도하면 삭제가 실패하고 스택은 상태를 포함하여 변함없이 그대로 유지됩니다. 자세한 내용은 스택 삭제 방지 단원을 참조하십시오.

종료 방지 기능은 기본적으로 비활성화됩니다.

스택 구성 미리 보기

스택을 생성하기 이전에 CloudFormation 스택이 어떻게 구성될지 미리 보려면 변경 세트를 생성 합니다. 이 기능을 사용하면 다양한 구성을 검사한 다음 변경 세트를 실행하기 이전에 스택을 수정 및 변경할 수 있습니다. 변경 세트에 대한 자세한 내용은 변경 세트를 사용하여 스택 업데이트 단원을 참조하십시오.

새 스택에 대한 변경 세트 생성

새 스택에 대한 변경 세트를 만들려면 스택 템플릿을 선택하고 새 스택을 만드는 경우와 같이 스택 구성을 지정한 다음, 새 스택 대신 새 변경 세트를 만들도록 선택합니다.

CloudFormation 콘솔을 사용하여 변경 세트를 생성하려면
  1. 검토 페이지에서 스택 세부 정보를 검토합니다.

    변경 세트를 만들기 전에 설정을 변경해야 하는 경우 해당 섹션에서 [편집(Edit)]을 선택하여 변경하고자 하는 설정이 있는 페이지로 돌아가십시오.

  2. 변경 세트 생성을 선택합니다.

  3. 변경 세트의 이름과 원하는 경우 설명을 입력하십시오. 변경 세트 생성을 선택합니다.

    새 스택에 대한 변경 세트를 만들면 CloudFormation이 다음을 수행합니다.

    • 상태가 REVIEW_IN_PROGRESS인 새 스택을 시작합니다.

    • 이전 단계에서 지정한 스택 구성을 반영하는 새 스택에 대해 변경 세트를 만듭니다.

    CloudFormation에서 제안한 스택에 대한 [변경 세트(Change sets)] 페이지가 표시됩니다. CloudFormation이 변경 세트를 생성하는 동안 상태는 CREATE_IN_PROGRESS이고 실행 상태는 UNAVAILABLE입니다. CloudFormation이 변경 세트 생성을 성공적으로 완료하면 변경 세트 상태는 CREATE_COMPLETE로 설정되고 실행 상태는 AVAILABLE입니다. 스택 상태가 REVIEW_IN_PROGRESS로 업데이트됩니다. 이 시점에 변경 세트를 실행하여 새 스택 생성을 완료할 수 있습니다.

    CloudFormation의 [변경(Changes)] 창에 제안된 스택 구성이 표시됩니다.

    CloudFormation이 변경 세트 생성에 실패하면, 변경 세트 상태는 CREATE_FAILED로 설정됩니다. 상태 사유 필드에 표시된 오류를 수정한 다음 새 변경 세트를 만듭니다. 이 단계에서 다양한 구성을 시도한 후 다음 변경 세트를 실행하기 이전에 스택을 수정 및 변경할 수 있습니다.

  4. 변경 세트를 기반으로 새 스택 생성을 완료하려면 Execute(실행)를 선택하고 롤백 구성을 지정한 다음 Execute change set(변경 세트 실행)를 선택합니다.