티스토리 뷰

인프라

AWS CloudFormation에 대해 알아보자!

김도리개발자 2023. 4. 2. 15:28

사용하게된 이유

회사에서 CloudFormation을 사용하여 개발 환경 구성을 템플릿화해보자고 하여 도입하게 될 CloudFormation의 사전 리서치를 해보자!

 

IaC(Infrastructure as Code)

일단 CloudFormation은 IaC이다.

IaC(Infrastructure as Code)는 코드형 인프라로, 코드를 통해 인프라를 관리 및 프로비저닝 하는 것을 말한다.

(프로비저닝이란? IT 인프라를 설정하는 프로세스이며, 사용자와 시스템에서 사용할 수 있도록 데이터와 리소스에 대한 액세스를 관리하는데 필요한 단계이기도 하다.)

 

AWS CloudFormation이란?

AWS의 대표적인 IaC 기반 서비스이며, 

리소스를 수동 생성할 필요 없이 리소스들을 템플릿(코드)로 구성하고 스택을 생성하여 인프라를 구성할 수 있다.

 

yaml과 json을 사용하여 작성할 수 있지만 yaml을 사용하면 문서에 대한 설명을 추가할 수 있어 AWS에서는 yaml을 추천한다.

 

인프라 관리 간소화, 인프라 신속히 복제 가능, 인프라 변경 사항 쉽게 제어 및 추적할 수 있다는 장점이 있다.

 

CloudFormation 구성

  • 템플릿 (Template)
    • AWS의 리소스를 yaml or json 코드로 정의
    • AWS 리소스를 프로비저닝 및 구성하기 위해 필요한 파일
  • 스택 (Stack)
    • 하나의 단위로 관리할 수 있는 AWS 리소스 모음
    • 스택을 통해 템플릿을 읽고 실제 리소스를 생성하고 인프라를 관리한다.
    • 스택의 모든 리소스는 템플릿을 통해 정의한다.
    • 스택을 삭제하면 스택이 관리하는 모든 리소스를 삭제한다.

즉, 리소스 및 프로비저닝 정보들이 들어있는 템플릿을 통해 실제 리소스들을 생성하여 관리하는 곳이 스택이다.

 

CloudFormation 작동 방식

  • 스택 생성

템플릿 작성 -> 템플릿 저장 -> 템플릿 파일 위치 지정하여 스택 생성, 리소스 구성

 

  • 스택 업데이트

템플릿 수정 -> 템플릿 저장 -> 변경 세트 생성 -> 변경 사항 확인 후 변경 세트 실행 -> 실행된 변경 세트는 스택 업데이트함

 

  • 템플릿
    • 사용자가 직접 yaml 코드로 작성된 템플릿
    • 사용자가 직접 json 코드로 작성된 템플릿
    • AWS에서 제공하는 샘플 템플릿
    • CloudFormation 디자이너를 통해 생성된 템플릿

 

https://yoo11052.tistory.com/188

 

[AWS] CloudFormation이란

CloudFormation AWS CloudFormation은 AWS에서 제공하는 대표적인 IaC기반의 서비스입니다. CloudFormation을 사용하면 VPC, EC2, Lambda 등과 같은 리소스를 수동으로 생성할 필요 없이 리소스들을 템플릿(코드)으

yoo11052.tistory.com

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함