본문 바로가기

♻ Terraform(테라폼)/Terraform Network 구성

테라폼을 활용한 Network Elemtents 생성하기

728x90
반응형

# 생성전 주의할점

terraform 리소스 생성 시 vpc를 별도로 지정하지 않으면 default vpc와 subnet을 참조하여 생성한다.

# terraform은 3개의 주요 명령어만 알면 구성이 가능하다.

terraform init
terraform plan
terraform apply

- VPC가 생성되고 정상적인 역할?을 수행하기 위해서는 다양한 요소들이 필요하다.

 1.VPC
2.서브넷
3.인터넷 게이트웨이
4.라우트 테이블

- 필요한 요소들을 terraform을 통해 생성해보고 devops 및 iaac를 구현하기위해 알아보자.

- VPC 생성 (172.16.0.0/24)

provider "aws" {

region = "ap-northeast-2"

}

- 위의 사진의 내용을 입력하여 provider.tf 파일을 생성합니다.

- 그 후 vim vpc.tf 명령어를 입력하여, vpc 파일을 생성해 줍니다.

resource "aws_vpc" "main" {
        cidr_block = "172.16.0.0/24"

        tags = {
        Name = "practice-01"
        }
}

- 위의 내용은 실제 VPC를 코드를 통해 작성한 상태 입니다.

- CIDR 블록의 IP는 172.16.0.0/24 로 설정되어 있으며, VPC의 이름은 practice-01 입니다.

- terraform init을 입력하여 싱크를 맞춥니다.

- 왜 그런지 모르겠으나, 빌드 폴더를 변경하거나, 경로를 변경하면 위와같이 init을 수행하라는 오류 메세지가 뜹니다.

큰 문제가 아니니, init을 수행 후 싱크를 맞춰줍니다.

- 추가로 terraform 은 문법이 매우 간단하고 (JSON형식의 구성) 로그의 가시성또한 매우좋아 잘 만들어진 프로그램? 이라고 생각이 됩니다. 

- terraform plan 을 입력하면, 앞으로 어떤것들이 생성되고 삭제 및 변경되는지 실행 계획을 보여줍니다.

- 위 플램 내용을 잠시 보면 CIDR 블록이 생성될 것이고, 이름은 pratice-01이며, 1 to add, 즉 1개의 추가작업이 있을것이다. 라는 내용입니다.

- 그렇다면, terraform apply를 입력하여 실제 VPC를 생성해 봅시다.

- terraform apply를 입력하면 위와같은 화면이 나오고 이전에 plan에서 봤던 내용들이 들어 있습니다.

- 그리고 마지막에 확인을 위해 yes를 입력하라는 문구가 있습니다.

- 인프라 변경은 매우 중요한 사안이므로, 다시한번 확인차 물어보는거 같습니다.

- yes를 입력 후 실제 AWS 콘솔에서 생성이 되었는지 확인해 봅시다.

- 정상적으로 생성되었다는 문구를 확인 할 수 있습니다.

- 그렇다면 실제 AWS 콘솔에서는 VPC가 생성이 되었는지 확인해 봅시다.

- 생성이 정상적으로 완료된것을 확인 하실수 있습니다.

- 다음에는 terraform을 활용하여 subnet을 구축하는 연습을 해봅시다.

728x90
반응형