terraform 50

테라폼 시리즈 32편. 조건문 - 3항 연산자

사용방법 테라폼은 3항 연산자를 지원합니다. 3항 연산자는 간단한 조건문(타입 검사 등)을 구현할 때 적합합니다. ? : 예제1 - string타입 검사 아래 테라폼 코드는 instance_type을 검사하여 aws EC2 Instance를 생성하는 예제입니다. instance_type은 3항 연산자 조건문 결과로 설정됩니다. 3항 연산자는 variable ec2_type이 빈값이면 t2_nano로 설정합니다. 코드링크: https://github.com/sungwook-practice/terraform-study/tree/main/week5/condition/condition-basic provider "aws" { region = "ap-northeast-2" } variable ec2_type { ..

연재 시리즈 2022.11.19

테라폼 시리즈 31편. for_each를 활용한 반복문

영상: https://youtu.be/fhgGcC7wJoc for_each란? for-each는 반복(for)을 할 때 타입 값에 대해 하나하나 each object로 접근한다는 의미입니다. each object는 key, value 2개의 속성을 가지고 있습니다. each object로 접근한다는 의미가 이해하기 어려운데요. each object를 json과 비교해서 이해하면 쉽습니다. json은 key, value들의 집합입니다. value에 접근하기 위해 key를 사용합니다. 아래 world라는 값에 접근하기 위해 a[”hello”]로 접근합니다. json에서 key를 이용하여 value를 접근한 것처럼 테라폼 each object도 key로 value를 얻을 수 있습니다. 하지만 for_each는..

연재 시리즈 2022.11.18

테라폼 시리즈 30편. count를 이용한 반복문

영상: https://youtu.be/xOSshyyJoZk 사용방법 meta-argument 중 count는 block을 count 값 만큼 반복합니다. 아래 예제에서 EC2 instace가 2대 생성됩니다. count가 2개로 설정되어서 2대 생성됩니다. resource "aws_instance" "server" { count = 2 ... } 예제 아래 예제에서 EC2 instace가 2대 생성됩니다. count가 2개로 설정되어서 2대 생성됩니다. 예제코드 링크: https://github.com/sungwook-practice/terraform-study/tree/main/week5/for-loop/count-meta-argument provider "aws" { region = "ap-north..

연재 시리즈 2022.11.14

테라폼 시리즈 28편. Terraform console

테라폼 console은 대화형(interactive command-line) 콘솔입니다. 테라폼 특정 문법을 실시간으로 테스트할 때 사용합니다. 실행방법 terraform console 명령어를 입력하면 콘솔로 진입합니다. terraform console 변수선언 테라폼 콘솔은 python, nodejs 등 다른 프로그래밍 언어 콘솔과 다르게 콘솔에서 변수 선언이 안됩니다. 변수를 사용하려면 local/var block 사용해야 합니다. var/local block은 테스트하고 싶은 변수를 tf파일에 작성하면 됩니다. locals { map = { a = 1 b = 2 c = 3 } } variable "test" { type = map(any) default = { a = 1 b = 2 c = 3 } ..

연재 시리즈 2022.11.14

테라폼 시리즈 27편. HCL 언어 구조

테라폼 코드는 HCL라는 언어로 작성합니다. HCL은 Block이라는 기본단위를 사용합니다. 테라폼 코드는 Block단위의 집합입니다. Block의 설정(Body)은 Argument로 구성됩니다. Argument는 IDENTIFIER과 EXPRESSION으로 표현할 수 있습니다. 공식문서는 어렵게 설명되어 있는데, 단순하게 “필드이름”=”필드값”이라고 생각하면 됩니다. Argument 중에 특수한 기능을 담당하는 Argument는 Meta-Argument라고 부릅니다. Meta-arguments는 공식문서(https://developer.hashicorp.com/terraform/language)에서 찾을 수 있습니다.

연재 시리즈 2022.11.14