728x90
반응형
CloudFormation 템플릿의 주요 섹션
섹션 이름 | 설명 | 필수 여부 |
Resources | AWS 리소스를 정의 | ✅ 필수 |
Parameters | 사용자 입력값을 받아 템플릿을 동적으로 설정 | 선택 사항 |
Conditions | 특정 조건에 따라 리소스를 생성할지 결정 | 선택 사항 |
Mappings | 정적인 키-값 매핑을 제공 (예: 리전별 AMI 매핑) | 선택 사항 |
Outputs | 생성된 리소스 정보를 출력하여 다른 템플릿에서 참조 가능 | 선택 사항 |
Resources
와 Parameters
는 CloudFormation의 템플릿에 사용된다.
CloudFormation Resources
Resources
Resources
는 생성할 AWS 리소스(예: EC2 인스턴스, S3 버킷, RDS 데이터베이스 등)를 정의한다.
각 리소스는 "Type"과 "Properties"가 필수로 구성되어 있으며, 이를 통해 리소스의 종류와 설정을 지정할 수 있다.
Resources
예시) EC2 인스턴스 생성
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
InstanceType: t2.micro
ImageId: ami-0c55b159cbfafe1f0
KeyName: my-key-pair
CloudFormation Parameters
Parameters
Parameters
은 템플릿에서 값을 동적으로 입력받을 수 있게 해주는 기능
Parameters
를 통해 CloudFormation 템플릿을 여러 환경(예: 개발, 테스트, 프로덕션)에서 재사용할 수 있다. 특정 파라미터를 선택할 수 있다.
Parameters
예시) EC2 인스턴스 생성
CloudFormation 템플릿을 실행할 때, InstanceType과 Environment에 대해 값을 묻게 된다.
– InstanceType
: EC2 인스턴스 타입을 t2.micro, t2.small, t2.medium 중 하나로 선택할 수 있게 한다.
– Environment
: 개발 환경을 dev 또는 prod 선택할 수 있게 한다.
AWSTemplateFormatVersion: '2010-09-09'
Description: EC2 인스턴스를 생성하는 CloudFormation 템플릿
Parameters:
InstanceType:
Type: String
Description: EC2 인스턴스의 유형을 선택합니다.
Default: t2.micro
AllowedValues:
- t2.micro
- t2.small
- t2.medium
ConstraintDescription: EC2 인스턴스는 t2.micro, t2.small 또는 t2.medium이어야 합니다.
Environment:
Type: String
Description: 환경을 선택하세요. (예: dev, prod)
Default: dev
AllowedValues:
- dev
- prod
ConstraintDescription: 환경은 dev 또는 prod여야 합니다.
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
InstanceType: !Ref InstanceType
ImageId: ami-0c55b159cbfafe1f0
Tags:
- Key: Environment
Value: !Ref Environment
🤔 문제
SysOps 관리자가 회사의 인프라를 코드로 배포하는 작업을 맡았습니다. 관리자는 여러 환경에서 재사용할 수 있는 단일 템플릿을 작성하려고 합니다.
SysOps 관리자는 AWS CloudFormation을 사용하여 어떻게 해결해야 합니까?
- CloudFormation 템플릿에서 Amazon EC2 User data를 사용합니다.
- 리소스를 프로비저닝하기 위해 중첩 스택(nested stacks)을 사용합니다.
- CloudFormation 템플릿에서 Parameters를 사용합니다.
- 리소스를 프로비저닝하기 위해 스택 정책(stack policies)을 사용합니다.
정답
더보기
정답. 3번
728x90
반응형
'클라우드(AWS) > SOA-C02' 카테고리의 다른 글
[AWS] EC2의 'InsufficientInstanceCapacity' Error 오류 쉽게 정리 (0) | 2025.01.31 |
---|---|
[AWS] AWS Health Dashboard란? 쉽게 정리 (Personal Health Dashboard + Service Health Dashboard 통합) (0) | 2025.01.30 |
[AWS] DLM(Data Lifecycle Manager)과 AWS Backup 차이점 비교 (0) | 2025.01.28 |
[AWS] CloudTrail의 "Log File Integrity Validation"란? 쉽게 정리 (로그 파일 무결성 검증) (0) | 2025.01.28 |
[AWS] EFS를 EC2 인스턴스에 마운트(Mount)하는 방법 (0) | 2025.01.27 |