일반

Q: AWS CloudFormation이란 무엇입니까?

AWS CloudFormation은 개발자와 기업이 손쉽게 관련 AWS 및 타사 리소스의 모음을 쉽게 생성하고 순서에 따라 예측 가능한 방식으로 프로비저닝할 수 있는 방법을 제공하는 서비스입니다.

Q: 개발자가 이전에는 할 수 없었지만 이제 AWS CloudFormation을 사용해 할 수 있는 작업은 무엇입니까?

AWS CloudFormation은 애플리케이션을 실행하는 반복적이고 예측 가능한 관련 리소스의 그룹 생성 작업을 자동화 및 간소화합니다. 이제 단일 EC2 또는 RDS 인스턴스를 생성하는 것만큼이나 간단하게 애플리케이션을 실행하는 데 필요한 모든 리소스를 생성하고 상호 연결할 수 있습니다.

Q: AWS CloudFormation은 AWS Elastic Beanstalk와 어떻게 다릅니까?

이 두 서비스는 상호 보완할 수 있도록 설계되었습니다. AWS Elastic Beanstalk는 클라우드에서 손쉽게 애플리케이션을 배포하고 실행할 수 있는 환경을 제공합니다. 개발자 도구와 통합되며 애플리케이션의 수명 주기를 한 곳에서 관리할 수 있는 환경을 제공합니다. AWS CloudFormation은 광범위한 AWS 및 타사 리소스를 편리하게 배포할 수 있는 메커니즘입니다. 기존의 엔터프라이즈 애플리케이션, 레거시 애플리케이션, 다양한 AWS 리소스 및 컨테이너 기반 솔루션을 사용해 구축된 애플리케이션(AWS Elastic Beanstalk를 사용해 구축된 애플리케이션 포함)과 같은 각종 애플리케이션의 인프라 요구를 지원합니다.

AWS CloudFormation은 AWS 리소스 유형 중 하나로 Elastic Beanstalk 애플리케이션 환경을 지원합니다. 따라서 애플리케이션 데이터를 저장하는 RDS 데이터베이스와 함께 AWS Elastic Beanstalk에 호스팅되는 애플리케이션을 생성하고 관리할 수 있습니다. RDS 인스턴스뿐만 아니라, 지원되는 모든 AWS 리소스를 그룹에 추가할 수 있습니다.

Q: AWS CloudFormation에서 도입한 새로운 개념은 무엇입니까?

AWS CloudFormation에서는 두 가지 개념을 도입하였습니다. 애플리케이션을 실행하기 위해 배포해야 하는 모든 AWS 리소스를 설명하는 JSON 또는 YAML 형식의 텍스트 기반 파일인 템플릿과 AWS CloudFormation에서 템플릿을 인스턴스화할 때 단일 유닛으로 생성 및 관리되는 AWS 리소스 세트인 스택이 이에 해당합니다.

Q: AWS CloudFormation에서는 어떤 리소스를 지원합니까?

지원되는 AWS 리소스 및 해당 기능의 전체 목록을 보려면 설명서의 릴리스 기록에서 지원되는 AWS 서비스 페이지를 참조하십시오.

AWS CloudFormation Registry 및 AWS CloudFormation 사용자 지정 리소스를 사용하면 추가 AWS 및 타사 리소스를 관리할 수 있습니다.

Q: AWS CloudFormation 스택의 일부인 개별 AWS 리소스를 관리할 수 있습니까?

예. AWS CloudFormation은 전혀 방해가 되지 않으므로, 사용자는 인프라의 모든 요소에 대해 전체 권한을 그대로 유지할 수 있습니다. 그리고 계속해서 기존의 모든 AWS 및 타사 도구를 사용해 AWS 리소스를 관리할 수 있습니다.

Q: AWS CloudFormation 템플릿의 요소는 무엇입니까?

AWS CloudFormation 템플릿은 다음과 같은 다섯 가지 유형의 요소로 구성된 JSON 또는 YAML 형식의 텍스트 파일입니다.

1. 템플릿 파라미터의 선택적 목록(스택 생성 시 입력 값이 제공됨)

2. 출력 값의 선택적 목록(예: 웹 애플리케이션에 대한 전체 URL)

3. 정적 구성 값을 조회하는 데 사용되는 데이터 테이블의 선택적 목록(예: AMI 이름)

4. AWS 리소스 및 해당 구성 값 목록

5. 템플릿 파일 형식 버전 번호

스택이 구축될 때, 파라미터를 사용하면 런타임 시 템플릿의 요소를 사용자 지정할 수 있습니다. 예를 들어, 스택이 생성되면 Amazon RDS 데이터베이스 크기, Amazon EC2 인스턴스 유형, 데이터베이스 및 웹 서버 포트 번호를 AWS CloudFormation으로 전달할 수 있습니다. 각 파라미터에는 기본값과 설명이 포함될 수 있으며, 화면에 입력한 실제 값을 숨기기 위해 이벤트 로그에 “NoEcho”로 표시될 수 있습니다. AWS CloudFormation 스택을 생성하면 AWS Management Console에서 자동으로 사용자가 파라미터 값을 편집할 수 있는 팝업 대화 상자 양식을 구성하여 표시합니다.

출력 값은 AWS Management Console 또는 명령줄 도구를 통해 스택의 주요 리소스(예: Elastic Load Balancing 로드 밸런서 또는 Amazon RDS 데이터베이스의 주소)를 사용자에게 제공할 수 있는 매우 편리한 방법입니다. 단순한 함수를 사용해 실제 AWS 리소스와 연결된 문자열 리터럴 및 속성 값을 연결할 수 있습니다.

Q: AWS CloudFormation에서는 실제 리소스 이름을 어떻게 선택합니까?

템플릿에서 AWS 리소스에 논리적 이름을 할당할 수 있습니다. 스택이 생성되면 AWS CloudFormation은 논리적 이름을 이에 해당하는 실제 AWS 리소스의 이름에 바인딩합니다. 실제 리소스 이름은 스택 및 논리적 리소스 이름의 조합입니다. 따라서 AWS 리소스 사이에서 이름 충돌을 염려할 필요 없이 하나의 템플릿에서 여러 스택을 생성할 수 있습니다.

Q: 모든 리소스에 이름을 지정할 수 없는 이유는 무엇입니까?

AWS CloudFormation에서는 Amazon S3 버킷 등 일부 리소스에 이름을 지정할 수 있지만, 모든 리소스에 이름을 지정할 수는 없습니다. 리소스에 이름을 지정하면 템플릿을 재사용하기 힘들고 업데이트하기 위해 리소스를 교체할 때 이름에 충돌이 생깁니다. CloudFormation에서는 이러한 문제를 최소화하기 위해 상황에 따라 리소스 이름 지정을 지원합니다.

Q: AWS CloudFormation을 사용해 스택을 생성할 때 소프트웨어를 설치할 수 있습니까?

예. AWS CloudFormation은 애플리케이션 부트스트랩 스크립트 세트를 제공하므로, CloudFormation 템플릿에 이들에 대한 설명을 제공하는 간단한 방식으로 EC2 인스턴스에 패키지, 파일 및 서비스를 설치할 수 있습니다. 자세한 내용과 방법은 AWS CloudFormation을 통한 애플리케이션 부트스트랩을 참조하십시오.

Q: AWS CloudFormation을 Chef와 함께 사용할 수 있습니까?

예. AWS CloudFormation은 EC2 인스턴스에서 Chef Server 및 Chef Client 소프트웨어를 부트스트랩하는 데 사용할 수 있습니다. 자세한 내용과 방법은 AWS CloudFormation과 Chef의 통합 문서를 참조하십시오.

Q: AWS CloudFormation을 Puppet과 함께 사용할 수 있습니까?

예. AWS CloudFormation은 EC2 인스턴스에서 Puppet Master 및 Puppet Client 소프트웨어를 부트스트랩하는 데 사용할 수 있습니다. 자세한 내용과 방법은 AWS CloudFormation과 Puppet의 통합을 참조하십시오.

Q: AWS CloudFormation에서는 Amazon EC2 태그 지정을 지원합니까?

예. 태그 지정 기능을 지원하는 Amazon EC2 리소스에도 AWS 템플릿에서 태그를 지정할 수 있습니다. 태그 값은 템플릿 파라미터, 다른 리소스 이름, 리소스 속성 값(예: 주소) 또는 간단한 함수로 계산된 값(예: 연결된 문자열 목록)을 참조할 수 있습니다. AWS CloudFormation에서는 자동으로 Amazon EBS 볼륨과 Amazon EC2 인스턴스를 해당 리소스가 포함된 AWS CloudFormation 스택의 이름으로 태그를 지정합니다.

Q: Amazon EC2 인스턴스 또는 Auto Scaling 시작 구성 사용자 데이터 필드에 액세스할 수 있습니까?

예. 단순한 함수를 사용해 AWS 리소스의 문자열 리터럴과 속성 값을 연결하고, 이를 템플릿의 사용자 데이터 필드에 전달할 수 있습니다. 이 사용하기 쉬운 함수에 대한 자세한 내용은 Amazon의 샘플 템플릿을 참조하십시오.

Q: 스택의 리소스 중 하나가 성공적으로 생성되지 않을 경우 어떻게 됩니까?

기본적으로 “Automatic rollback on error” 기능이 활성화되어 있습니다. 따라서 오류가 발생한 시점까지 AWS CloudFormation이 스택에 대해 성공적으로 생성한 모든 AWS 리소스가 삭제됩니다. 이 기능은 예를 들어, 실수로 탄력적 IP 주소 제한을 초과했거나 실행하려는 EC2 AMI에 액세스할 수 있는 권한이 없는 경우에 유용합니다. 이 기능을 사용하면 스택이 완전히 생성되거나 전혀 생성되지 않는다는 점을 이용해, 시스템 관리와 AWS CloudFormation에 구축된 계층형 솔루션을 간소화할 수 있습니다.

Q: 애플리케이션이 가동될 때까지 기다린 후에 스택을 생성할 수 있습니까?

예. AWS CloudFormation은 장벽처럼 작용해 애플리케이션 또는 관리 시스템과 같은 외부 소스에서 완료 신호가 수신될 때까지 다른 리소스의 생성을 차단하는 WaitCondition 리소스를 제공합니다.

Q: 스택이 삭제된 경우 데이터를 저장할 수 있습니까?

예. AWS CloudFormation을 사용해 템플릿에서 리소스에 대한 삭제 정책을 정의할 수 있습니다. Amazon EBS 볼륨 또는 Amazon RDS 데이터베이스 인스턴스가 삭제되기 전에 이에 대해 생성할 스냅샷을 지정할 수 있습니다. 스택이 삭제될 때 리소스를 삭제하지 않고 보존하도록 지정할 수도 있습니다. 이 기능은 스택이 삭제될 때 Amazon S3 버킷을 보존하려는 경우에 유용합니다.

Q: 스택이 생성된 후에 이를 업데이트할 수 있습니까?

예. AWS CloudFormation을 사용하여 예측 가능한 제어된 방식으로 기존 스택의 리소스를 수정 및 업데이트할 수 있습니다. 템플릿을 사용해 스택 변경 사항을 관리하므로, AWS 인프라에서 실행하는 소프트웨어와 같은 방식으로 AWS 인프라에 버전 관리를 적용할 수 있습니다.

Q: Virtual Private Cloud(VPC)에 스택을 생성할 수 있습니까?

예. CloudFormation은 VPC에서 탄력적 IP, Amazon EC2 인스턴스, EC2 보안 그룹, Auto Scaling 그룹, Elastic Load Balancer, Amazon RDS 데이터베이스 인스턴스 및 Amazon RDS 보안 그룹과 같은 리소스를 생성할 뿐 아니라, VPC, 서브넷, 게이트웨이, 라우팅 테이블 및 네트워크 ACL을 생성하는 기능도 지원합니다.

시작하기

Q: AWS CloudFormation에 가입하려면 어떻게 해야 합니까?

AWS CloudFormation에 가입하려면 AWS CloudFormation 제품 페이지에서 무료 계정 생성을 클릭하십시오. 가입한 후 AWS CloudFormation 설명서를 참조하십시오. 여기에는 시작하기 안내서도 포함되어 있습니다.

Q: AWS CloudFormation에 가입할 때 전화번호를 확인하라는 메시지가 표시되는 이유는 무엇입니까?

AWS CloudFormation에 가입하려면 연락이 필요한 경우에 대비하여 유효한 전화번호와 이메일 주소를 AWS에 제출해야 합니다. 전화번호를 확인하는 데는 몇 분밖에 걸리지 않습니다. 가입 프로세스 중에 자동 전화를 받고 전화기의 키패드를 사용해 PIN 번호를 입력합니다.

Q: 가입한 후에 시작하려면 어떻게 해야 합니까?

AWS CloudFormation을 시작하는 가장 좋은 방법은 AWS 기술 설명서에 포함된 시작하기 안내서를 참조하는 것입니다. 몇 분 내에 Tracks, WordPress 등과 같은 애플리케이션을 실행하는 데 필요한 인프라 생성 방법을 설명하는 샘플 템플릿 중 하나를 배포하여 사용할 수 있습니다.

Q: AWS CloudFormation을 검토하는 데 사용할 수 있는 샘플 템플릿이 있습니까?

예, AWS CloudFormation에는 테스트 드라이브를 통해 해당 기능을 탐색하는 데 사용할 수 있는 샘플 템플릿이 포함되어 있습니다. AWS의 샘플 템플릿에서는 여러 AWS 리소스를 한 번에 상호 연결해서 사용하는 방법과 여러 가용 영역 중복성에 대한 모범 사례 준수, 확장 및 경보에 대해 설명합니다. AWS Management Console로 이동하여 [Create Stack]을 클릭하고 단계를 따라 샘플 중 하나를 선택하여 시작하면 됩니다. 스택이 생성되고 나면 콘솔에서 해당 스택을 선택한 다음, 각각의 스택을 생성하는 데 사용된 템플릿 파일의 세부 정보를 템플릿파라미터 탭에서 확인합니다.

AWS CloudFormation Registry

Q: AWS CloudFormation Registry란 무엇입니까?

AWS CloudFormation Registry는 AWS 및 타사 리소스 공급자를 등록, 사용 및 검색할 수 있는 관리형 서비스입니다. 타사 리소스 공급자를 등록해야 AWS CloudFormation 템플릿으로 리소스를 프로비저닝하는 데 사용할 수 있습니다. 자세한 내용은 설명서를 참조하십시오.

Q: AWS CloudFormation의 리소스 공급자는 무엇입니까?

리소스 공급자는 생성, 읽기, 업데이트, 삭제 및 나열 작업을 통해 기본 리소스의 수명주기를 제어하는 사양과 핸들러가 포함된 리소스 유형 세트입니다. CloudFormation으로 리소스 공급자를 사용하고 리소스를 프로비저닝할 수 있습니다. 예를 들어, AWS::EC2::Instance는 Amazon EC2 공급자의 리소스 유형입니다. 이 유형을 사용하여 CloudFormation으로 Amazon EC2 인스턴스를 모델링하고 프로비저닝할 수 있습니다. AWS CloudFormation Registry를 사용하면 리소스 공급자를 만들고 사용하여 SaaS 모니터링, 팀 생산성 또는 소스 코드 관리 리소스 등의 타사 리소스를 모델링하고 프로비저닝할 수 있습니다.

Q: AWS 리소스 공급자와 타사 리소스 공급자의 차이점은 무엇입니까?

AWS 리소스 공급자와 타사 리소스 공급자의 차이점은 출처입니다.
AWS 리소스 공급자는 Amazon과 AWS에서 AWS 리소스 및 서비스를 관리하기 위해 만들고 유지 관리합니다. 예를 들어, 3개의 AWS 리소스 공급자가 Amazon DynamoDB, AWS Lambda 및 Amazon EC2 리소스를 관리하는 데 도움이 됩니다. 이러한 공급자에는 AWS::DynamoDB::Table, AWS::Lambda::Function 및 AWS::EC2::Instance 등의 리소스 유형이 들어 있습니다. 자세한 내용은 당사 설명서를 참조하십시오.

타사 리소스 공급자는 다른 회사, 조직 또는 개발자 커뮤니티에서 만듭니다. 타사 리소스 공급자를 통해 모니터링, 팀 생산성, 인시던트 관리 또는 버전 제어 관리 도구 등의 비 AWS SaaS소스트웨어 서비스와 AWS 애플리케이션 리소스를 비롯한 비 AWS 리소스와 AWS 리소스를 모두 관리할 수 있습니다.

Q: 리소스 스키마란 무엇입니까?

리소스 공급자에서 리소스 유형은 CloudFormation 리소스 스키마를 사용하여 해당 속성을 정의하는 방식으로 표현됩니다. 이 스키마는 리소스 유형의 정의를 확인하는 데도 사용됩니다.

Q: 리소스 공급자나 리소스 유형을 개발하려면 어떻게 해야 합니까?

AWS CloudFormation CLI를 사용하여 리소스 공급자를 만듭니다. 먼저 필요한 권한과 다른 리소스와의 관계를 포함하는 리소스에 대한 단순한 선언적 스키마를 정의합니다. 그런 다음 CloudFormation CLI를 사용하여 유닛 및 통합 테스트를 위한 테스트 스텁과 함께 리소스 수명주기 핸들러(만들기, 읽기, 업데이터, 삭제 및 나열)에 대한 스캐폴딩을 생성합니다.

Q: 리소스 공급자를 등록하려면 어떻게 해야 합니까?

오픈 소스 AWS CloudFormation CLI를 사용합니다. 또는 AWS SDK와 AWS CLI를 통해 사용할 수 있는 RegisterType과 관련 Registry API를 직접 호출할 수 있습니다. 자세한 내용은 설명서를 참조하십시오. AWS 리소스 공급자는 바로 사용 가능하며 사용 전에 어떠한 추가 등록 단계도 필요 없습니다.

결제

Q: AWS CloudFormation을 사용하려면 비용이 얼마나 듭니까?

AWS::*, Alexa::* 및 Custom::*과 같은 네임스페이스의 리소스 공급자에서 AWS CloudFormation을 사용하는 경우 추가 요금은 부과되지 않습니다. 이 경우 수동으로 생성했을 때와 같이 AWS CloudFormation을 사용해 생성한 AWS 리소스(예: Amazon EC2 인스턴스, Elastic Load Balancing 로드 밸런서 등)에 대해서만 요금을 지불하면 됩니다. 사용한 만큼만 비용을 지불하며 최소 요금이나 사전 약정은 없습니다.

위에서 언급한 네임스페이스 외부의 AWS CloudFormation에서 리소스 공급자를 사용하는 경우 핸들러 작업당 요금이 부과됩니다. 핸들러 작업은 리소스에서 생성, 업데이트, 삭제, 읽기 또는 나열 작업을 말합니다. 자세한 내용은 요금 페이지를 참조하십시오.

Q: 실패한 스택 생성 시도 중에 롤백된 리소스에 대한 비용을 지불해야 합니까?

예. 템플릿 인스턴스화 도중 생성된 AWS 리소스에 대한 비용은 전체 스택이 성공적으로 생성되었는지 여부에 관계없이 부과됩니다.

한도 및 제한

Q: 템플릿 또는 스택 수에 대한 제한이 있습니까?

템플릿 수에 대한 제한은 없습니다. 각 AWS CloudFormation 계정의 최대 스택 수는 200개로 제한됩니다. 여기에서 한도 증가 요청을 작성해 주십시오. 업무일 기준 2일 이내에 답변해 드리겠습니다.

Q: 설명 필드의 문자 수에 대한 제한이 있습니까?

템플릿, 파라미터, 출력, 리소스 설명 필드는 4,096자로 제한됩니다.

Q: 템플릿의 파라미터 또는 출력 수에 대한 제한이 있습니까?

템플릿에 최대 60개의 파라미터와 60개의 출력을 포함할 수 있습니다.

리전 및 엔드포인트

Q: 각 리전의 AWS CloudFormation 서비스 액세스 지점은 어디입니까?

각 리전에 대한 엔드포인트는 기술 설명서에서 확인할 수 있습니다.

Q: 현재 AWS CloudFormation을 사용할 수 있는 AWS 리전은 어디입니까?

CloudFormation의 리전별 가용성에 대한 자세한 정보는 리전별 제품 및 서비스를 참조하십시오.

AWS CloudFormation 요금에 대해 자세히 알아보기

AWS CloudFormation 요금 페이지로 이동하기
구축할 준비가 되셨습니까?
AWS CloudFormation 시작하기
추가 질문이 있으십니까?
AWS에 문의