본문 바로가기

AWS - KOR

#009) CloudFormation 으로 VPC, EC2 생성하기

https://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/cloudformation-vpc-template.html

 

AWS CloudFormation VPC 템플릿 - AWS CodeBuild

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

 

Cloudformation 이란?
aws 인프라를 코드로 Json 이나 Yaml 파일로 관리하는 도구로 실수를 줄이고 
시간을 단축할 수 있습니다. ec2 인스턴스를 만들때 AMI 이미지로 편하게 구축할 수 있지만
aws 의 다양한 자원을 함께 생성할때는 Cloudformation 템플릿으로 편하게 자동 생성할 수 있습니다.

Description : 템플릿의 기본 설명
Parameters : 템플릿 스택시 입력할 매개 변수의 목록 (ex/ AMI ID, VPC ID, Subnet ID)
Resource : aws 리소스의 종류와 옵션으로 
Ref를 이용해 이 반환값을 얻어올 수 있고 템플릿의 다른 위치에 사용 가능
Outputs: 스택 생성시 출력되는 값
Mapping: 리전의 특화된 템플릿에서 특정요소를 참조할 때 사용

 

 

1. VPC 생성하기

Cloudformation 의 스택 생성하기로 갑니다.

 

 

 

샘플 템플릿이 .yaml  파일에 저장되어있으므로 준비된 템플릿으로 업로드해 줍니다.

 

 

cloudformation-vpc.yaml
0.00MB

VPC 192.168.0.0/16

SubnetA 192.168.0.0/20 ,SubnetB 192.168.16.0/20 ,SubnetC 192.168.32.0/20, SubnetD 192.168.48.0/20 

InternetGateway ,RouteTable

의 구성을 가진 VPC 생성 파일입니다. VPC 생성에 필요한 IP 할당과 필요한 연결들이 포함 되어있습니다.

 

 

 

 

스택 이름을 지정해주고 이 파일에는 Parameters 를 따로 설정해 둘 필요가 없으므로 진행합니다.

이후 진행상황에는 모두 기본값으로 설정 한 후, Step 4 에서 스택정보를 확인 한 후 생성해 줍니다.

 

 

 

 

 

1분 이내로 스택이 정상적으로 구성되었습니다.

 

 

 

기본 구성요소들이 잘 생성되었습니다. 

 

 

 

2. EC2 생성하기

 

 

 

cloudformation-ec2.yaml
0.00MB

 

 

EC2 의 생성에 필요한 구성요소들과 유저데이터가 있습니다.

Parameters 변수값을 여기서 이용할 수 있습니다. 임의로 VPC 나 Subnet ID 를 설정해두었지만 그대로 업로드해도 문제가 없습니다. 생성 후 변수값만 변경이 가능합니다.

* 22 포트의 IP 주소는 본인의 IP 주소로 변경해야합니다.

 

VPC 생성과 마찬가지로 파일을 업로드 해서 진행 해 줍니다.

 

 

 

AMI, 인스턴스 타입, KEY 를 사용할 것으로 변경해주고

Subnet 과 VPC ID 는 본인이 사용할 ID 를 복사해와서 붙여넣어 줍니다.

 

 

EC2 가 생성된 것을 확인 할 수 있습니다.

 

 

 

생성된 EC2 의 퍼블릭 IP 주소를 복사해서 웹상에 넣으면 입력된 유저 데이터가 나오는 것도 확인 할 수 있습니다.

 

 

 

3. 스택 삭제하기

 

Cloudformation - stack 으로 가서 삭제 버튼만 눌러지면 그 스택에 포함되어있는 모든 구성요소는 자동으로 삭제 됩니다.

클라우드포메이션을 삭제하더라도 S3 에 yaml 파일이 남아있기 때문에 이 파일도 삭제해주시면 됩니다.