Di lingkungan enterprise, kode Terraform tidak pernah ditaruh dalam satu file tunggal. Standar industri membagi arsitektur menjadi beberapa berkas:
main.tf: Berisi resource inti arsitektur.
variables.tf: Deklarasi tipe variabel input.
terraform.tfvars: Nilai konkret variabel lokal (berisi konfigurasi non-sensitif).
outputs.tf: Nilai output penting yang diekspos ke publik (seperti DNS Load Balancer).
1. Manajemen Variabel & Kunci Rahasia (Secrets)
Jangan pernah menulis kunci rahasia (secret variables) langsung di dalam kode main.tf!
Deklarasi Variabel (variables.tf)
Menyimpan Nilai Rahasia
Ada 3 cara aman menginjeksi variabel sensitif:
- Menggunakan berkas
terraform.tfvars lokal:
Tambahkan terraform.tfvars dan *.auto.tfvars ke dalam file .gitignore agar tidak pernah terunggah ke repositori GitHub!
- Menggunakan Environment Variable:
Awali variabel dengan prefix
TF_VAR_:
2. Arsitektur Proyek: VPC + 3 EC2 di Balik Application Load Balancer
Berikut topologi infrastruktur yang akan kita bangun secara otomatis:
3. Implementasi Berkas Konfigurasi
Berkas main.tf (Infrastruktur Utama)
Berkas outputs.tf (Mengekspos URL Domain ALB)
4. Eksekusi & Pengujian Nyata
Jalankan perintah berikut:
Ketika proses pembuatan selesai (sekitar 2-3 menit), terminal akan mencetak URL output:
Buka URL tersebut di peramban dan lakukan refresh beberapa kali. Kamu akan melihat tampilan bergantian secara dinamis antara:
- “Halo dari Web Server Instance ke-1”
- “Halo dari Web Server Instance ke-2”
- “Halo dari Web Server Instance ke-3”
Ini membuktikan bahwa seluruh jaringan VPC, perutean internet, 3 server EC2, dan Application Load Balancer telah berhasil dirakit secara 100% otomatis berbasis kode! Last modified on October 26, 2026