DevOps BootCamp/Iac

Terraform module 사용 방법

cloudmaster 2023. 7. 4. 11:46

테라폼 모듈 사용 방법

● 테라폼 디렉터리 하위에 module로 쓰기 위한 디렉터리 생성

 

 

● 테라폼 모듈이 위치한 경로를 상대 경로로 지정해서 이용할 수 있다.

module "mission_link_db" {
    source = "./modules/database"
}

 

 

 테라폼 각 모듈에 있는 자원을 output로 받아와서 다른 모듈에 사용할 수 있다.

# modules/vpc/outputs.tf
output "vpc_id" {
  value = aws_vpc.mission_link_vpc.id
}

 

 

 테라폼 outputs.tf 파일에 있는 자원을 사용하기 위해 variables.tf 작성

# modules/database/variables.tf
variable "vpc_id_db" {
  description = "Value of the Name tag for the vpc_id"
  type        = string
  default     = "default"
}

 

 

 테라폼 outputs.tf 파일에 있는 자원을 사용하기 위한 코드 작성

module "mission_link_db" {
    source = "./modules/database"
    
    # vpc 모듈의 outputs.tf 파일에 있는 vpc_id를 database 모듈의 variables.tf의 vpc_id_db에 적용
    vpc_id_db = module.mission_link_vpc.vpc_id
}
resource "aws_security_group" "mission_link_prvsg" {

# variables.tf에 있는 vpc_id_db를 vpc_id에 적용
    vpc_id = var.vpc_id_db
}