terraform module
module 은 wrapper function 같은 느낌이다. terraform 에서 제공하는 hashicorp aws 로도 해결이 되지만, module 을 사용해서 좀 더 간단한 설정을 가능하게 해준다.
개인적인 생각은 같은 pattern 이 많아지면 사용하면 좋을 듯 하다. 그
전에 사용하는 것은 terraform 의 이해를 떨어뜨리는 듯 하다.
registry
terraform module 들은 다음 링크에서 확인할 수 있다.
module input, output
module 은 argument 들을 가지고 있는데, required 만 채워넣으면 된다.
- ec2_instance module 의 input :
- ec2_instance module 의 output :
custom module
- Build and use a local module | Terraform | HashiCorp Developer
- 간단한 sample: https://github.com/jwendl/terraform-modules-example/tree/main/with
아래처럼 source
를 적어주는데, directory 를 적어준다.
module "db_parameter_group_2" {
source = "../../modules/server/db/db_parameter_group/"
}
module 인식
아래처럼 module 이 있는데, 이렇게 만들고 나서
terraform init
을 다시 해줘야 module 을 인식한다.
├───environments
│ └───dev
│ ├───.terraform
│ └─── main.tf
|
├───generated
│ └───aws
│ ├───auto_scaling
│ ├───ec2_instance
│ ├───ec2_instance00
│ └───rds
└───modules
└───db
├─── main.tf
├─── variable.tf
└─── output.tf
See Also
- ec2-instance : aws ec2, vpc module 을 사용하는 글
- 쿠...sal: [컴] Terraformer 사용법
- terraform-aws-rds/modules/db_instance/main.tf at master · terraform-aws-modules/terraform-aws-rds · GitHub : terraform module 코드이다. 어떤식으로 좋은 예시로 사용할 수 있다.
댓글 없음:
댓글 쓰기