본문 바로가기

IT/Devops14

[Terraform] User Data, Provisioner 우선 순위 AWS에서 Terraform을 사용 User Data와 File Provisioner를 통해 EC2 생성 시에 command 실행 테스트 결과, User Data가 먼저 실행된 후에 File Provisioner가 실행되는 것으로 보임 User Data는 처음 EC2 생성 시에 한 번만 스크립트 실행 Provisioner File, remote-exec 등은 EC2가 생성된 후에 EC2에 접속하여 명령 실행 2022. 5. 8.
[Terraform] for_each - terraform에서 비슷한 resource를 여러개 생성하는 경우 필요함 - for_each 로 선택할 수 있는 자료구조: set, map resource "azurerm_resource_group" "rg" { for_each = { a_group = "eastus" another_group = "westus2" } name = each.key location = each.value } // map // 위의 resource를 변수로 활용할 경우 // azurerm_resource_group.rg["a_group"], azurerm_resource_group.rg["another_group"] resource "aws_iam_user" "the-accounts" { for_each = toset(.. 2022. 4. 12.
[Terraform] Block type "" "" { # Block body = # Argument } //example resource "aws_vpc" "main" { cidr_block = var.base_cidr_block } - Terraform : Terraform의 version과 쓰려는 Terraform Registry에 있는 provider의 version 등을 선언 - Provider : provider에서의 설정값 등을 선언 - Local : local 변수를 가져오거나 선언 - Variable : Terraform module에 쓰일 parameter 값들을 가져옴 - Module : 함께 사용되는 여러 자원(resource)들의 묶음(container) - Resource : 각 Resource는 하나 이상의 infra.. 2022. 4. 6.