Terraform (6) - 기존 리소스 import와 drift 확인하기
1. 개요 지금까지는 Terraform 코드로 새 리소스를 만들었다. 실제 환경에는 콘솔이나 다른 도구로 이미 만든 리소스도 있다. 이를 Terraform에서 관리하려면 코드의 리소스 주소와 기존 객체를 연결 해야 한다. 그 과정이 import 다. 또 Terrafor…
TAG
8개의 글
1. 개요 지금까지는 Terraform 코드로 새 리소스를 만들었다. 실제 환경에는 콘솔이나 다른 도구로 이미 만든 리소스도 있다. 이를 Terraform에서 관리하려면 코드의 리소스 주소와 기존 객체를 연결 해야 한다. 그 과정이 import 다. 또 Terrafor…
1. 개요 2편에서는 for each 로 같은 종류의 파일을 여러 개 만들었다. 그런데 파일 생성과 출력값을 하나의 묶음으로 다른 프로젝트에서도 쓰려면 관련 코드를 함께 복사해야 한다. module 은 여러 Terraform 블록을 한 디렉터리에 모아 입력과 출력을 정…
1. 개요 이전 글에서는 S3 버킷을 만들었다. 그 작업 기록인 terraform.tfstate 는 실행한 컴퓨터에 저장됐다. 다른 사람이 같은 코드를 받아 실행해도 그 기록이 없으면 기존 버킷을 Terraform이 관리 중인지 알 수 없다. 여러 사람이 작업하려면 s…
1. 개요 이전 글까지는 내 컴퓨터의 파일을 만들었다. 이번에는 같은 init → plan → apply 흐름으로 AWS의 S3 버킷을 만든다. 리소스 는 Terraform이 만들고 관리하는 대상이고, AWS 계정 정보처럼 이미 존재하는 값을 읽을 때는 data sou…
1. 개요 이전 글에서는 파일 하나를 만드는 코드로 init , plan , apply , destroy 흐름을 익혔다. 그런데 그 코드는 파일 이름과 내용이 코드에 고정돼 있어서, 파일을 10개 만들려면 resource 블록을 10번 복사해야 한다. 이 글에서는 같은…
1. 개요 서버, 네트워크, 디스크 같은 인프라를 만들 때 웹 콘솔에서 버튼을 눌러 만들 수도 있다. 하지만 그렇게 만들면 "무엇을 어떻게 만들었는지"가 기록에 남지 않아서, 같은 환경을 다시 만들거나 다른 사람에게 설명하기 어렵다. Terraform 은 만들고 싶은…
1. 개요 Terraform은 "어떤 인프라가 있어야 하는가"를 코드로 적어 두면, 그 상태가 되도록 API를 호출해 리소스를 만들어 주는 도구다. 이 글은 Terraform 코드를 읽는 데 필요한 문법을 정리한다. 2. 블록 구조 읽기 Terraform 코드는 HCL…
1. 개요 홈서버 한 대(Ubuntu 24.04, 12스레드, 32GB RAM) 위에 가상 머신(VM) 3대를 만들고, 그 VM들로 kubeadm 쿠버네티스 클러스터를 구성한다. 손으로 VM을 만들고 노드마다 SSH로 들어가 명령을 입력해도 되지만, 그렇게 하면 같은…