728x90
안녕하세요, 오늘은 테라폼에 대해서 정리한 내용을 가지고 포스팅합니다.
‘테라폼으로 시작하는 IaC’를 기준으로 내용 정리하였으며, Cloudnet의 테라폼 스터디 내용을 기반으로 하고 있습니다.
이번 포스팅에서는 vpc를 설정 / 배포하는데, 리소스 블록에 대해서 좀 더 알아보도록 하겠습니다.
사용될 코드는 다음과 같습니다.
리소스 블록은
resource "aws_vpc" "jflip" {
cidr_block = "10.10.0.0/16"
enable_dns_support = true
enable_dns_hostnames = true
tags = {
Name = "t101-study"
}
}
이렇게 작성되었는데, aws_vpc는 리소스 유형입니다. jflip이라 선언한 것은 리소스 이름입니다.
리소스 식별자로 쓰이며, tf 파일 내부에서 유일하게 사용되어야 합니다.
따라서 크게 리소스 블록은 리소스 유형, 리소스 이름, 속성으로 구분됩니다.
resource "리소스 유형" "리소스 이름" {
//속성
cidr_block = "10.10.0.0/16"
enable_dns_support = true
enable_dns_hostnames = true
tags = {
Name = "t101-study"
}
}
사용된 전체 소스코드는 다음과 같습니다.
provider "aws" {
region = "ap-northeast-2"
}
resource "aws_vpc" "xxx" {
cidr_block = "10.10.0.0/16"
enable_dns_support = true
enable_dns_hostnames = true
tags = {
Name = "new-study"
}
}
resource "aws_subnet" "xxx-subnet1" {
vpc_id = aws_vpc.xxx.id
cidr_block = "10.10.1.0/24"
availability_zone = "ap-northeast-2a"
tags = {
Name = "new-subnet1"
}
}
resource "aws_subnet" "xxx-subnet2" {
vpc_id = aws_vpc.xxx.id
cidr_block = "10.10.2.0/24"
availability_zone = "ap-northeast-2c"
tags = {
Name = "new-subnet2"
}
}
output "aws_vpc_id" {
value = aws_vpc.xxx.id
}
terraform apply를 적용하면 다음과 같이 출력되는 것을 확인하실 수 있습니다.
728x90
반응형
'DevOps > Terraform' 카테고리의 다른 글
[Terraform] 로컬 변수 사용하기 (0) | 2024.06.23 |
---|---|
[Terraform] 입력 변수 사용하기 (0) | 2024.06.23 |
[Terraform] 테라폼으로 서브넷 생성하기 (0) | 2024.06.23 |
[Terraform] 테라폼 lifecycle의 precondition (0) | 2024.06.16 |
[Terraform] 테라폼을 활용한 EC2 웹 서버 배포 (0) | 2024.06.16 |