🛠️ Infrastructure as Code (Terraform)

Level: Advanced

Infrastructure as Code (IaC) adalah pendekatan mengelola infrastruktur dengan kode, bukan konfigurasi manual. Terraform adalah salah satu tool populer untuk IaC, memungkinkan kita mendefinisikan infrastruktur dalam file deklaratif. Bayangkan IaC seperti arsitek yang menggambar blueprint rumah: sekali desain dibuat, rumah bisa dibangun ulang dengan hasil konsisten.

📖 Konsep Utama IaC

⚙️ Workflow Terraform

  1. Tulis file konfigurasi (.tf).
  2. Inisialisasi project: terraform init.
  3. Preview perubahan: terraform plan.
  4. Terapkan perubahan: terraform apply.
  5. Hapus resource: terraform destroy.

🔹 Contoh Konfigurasi Terraform (AWS EC2)

# main.tf
provider "aws" {
  region = "us-east-1"
}

resource "aws_instance" "example" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t2.micro"

  tags = {
    Name = "MyFirstInstance"
  }
}

👉 Kode di atas akan membuat sebuah instance EC2 di AWS.

🛠️ Praktik Kecil

Coba buat file main.tf untuk membuat resource sederhana:

🎮 Mini Challenge

Buat infrastruktur sederhana dengan Terraform:

Tugas tambahan: Gunakan variables.tf untuk parameter (misalnya nama instance, region) dan outputs.tf untuk menampilkan informasi penting (misalnya IP publik VM).