8개의 안내형 터미널 랩으로 Terraform의 핵심 Infrastructure as Code 워크플로를 배웁니다. Ubuntu 설치부터 HCL 작성, provider 초기화, 변경 계획 및 적용, 변수와 outputs, 로컬 module, state 점검, 통제된 destroy까지 실습합니다.
이 과정은 hashicorp/local provider로 랩 내부 파일을 관리합니다. 클라우드 플랫폼, 자격 증명, 유료 인프라 없이 Terraform 개념과 명령 동작에 집중할 수 있습니다.
학습 내용
과정을 마치면 다음을 할 수 있습니다.
- HashiCorp 공식 Ubuntu 저장소에서 Terraform을 설치하고 서명 키를 확인합니다.
- HCL로 provider를 선언하고
terraform init을 실행해 내려받은 plugin을 점검합니다. local_fileresource를 정의하고terraform plan으로 미리 본 뒤 적용하고 생성 파일을 검증합니다.- 형식이 지정된 입력 변수를 선언하고 값을 전달해 구성을 유연하게 만듭니다.
- resource 속성으로 outputs를 정의하고
terraform output으로 값을 가져옵니다. - inputs와 outputs가 있는 로컬 child module을 만들고 root 구성에서 호출합니다.
terraform show,terraform state list, state 파일로 로컬 상태를 점검하고 resource address를 이동하고 refresh합니다.terraform plan -destroy로 삭제를 검토하고terraform destroy를 실행해 결과를 확인합니다.
추천 대상
Terraform 초보자, 주니어 DevOps 학습자, 클라우드 provider 전에 선언형 IaC 방식을 이해하려는 개발자를 위한 과정입니다. 구성, provider plugin, plan, resource, outputs, modules, state의 관계를 익힙니다.
선수 지식: Terraform 경험은 필요하지 않습니다. Ubuntu 터미널 탐색, 텍스트 파일 생성 및 편집, 명령 출력 읽기가 가능해야 하며 구성 파일과 명령줄 패키지 설치 지식이 있으면 좋습니다.
학습 환경: 8개 랩 모두 제공된 Ubuntu 22.04 터미널에서 실행됩니다. 첫 랩에서 Terraform을 설치하고 이후에는 로컬 프로젝트와 hashicorp/local을 사용하며 브라우저 클라우드 콘솔은 쓰지 않습니다.
자주 묻는 질문
AWS, Azure, Google Cloud 등에 실제 리소스를 만드나요?
아닙니다. 모든 관리 resource는 hashicorp/local이 만드는 로컬 파일입니다. cloud provider와 같은 워크플로를 배우지만 자격 증명이나 비용은 발생하지 않습니다.
state 관리는 어느 수준까지 다루나요?
로컬 state 점검, 관리 address 목록, resource address 이동, refresh를 다룹니다. remote backend, locking, workspace, import, 팀 워크플로는 포함하지 않습니다.
module 랩에서 공개 Terraform Registry를 사용하나요?
아닙니다. 로컬 modules 디렉터리에 child module을 만들고 inputs와 outputs를 정의한 뒤 root에서 호출합니다. 게시, 버전 관리, Registry module 사용은 범위 밖입니다.
수강 전에 내 컴퓨터에 Terraform을 설치해야 하나요?
아닙니다. 설치와 실습은 제공된 Ubuntu 랩에서 진행되며 개인 컴퓨터를 변경하지 않습니다.





