Masalah yang IaC selesaikan
Tanpa IaC, lu provisioning resource cloud pake tangan: buka portal, klik-klik form buat order VPS, nunggu, terus ulang buat tiap server, tiap disk, tiap keypair. Bisa jalan, tapi:- Gak ada catatan. Gak ada yang nyimpen apa yang lu klik kemarin, jadi bikin ulang environment artinya ngulang semua dari ingatan.
- Gak ada review. Typo dan setting yang salah gampang kelewat, gak ada yang ngecek sebelum live.
- Gak konsisten. Dua environment beda-beda karena dibangun manual di waktu yang beda.
- Gak bisa diautomasi. Tiap perubahan butuh orang yang duduk di depan browser.
Anggep aja kayak resep masakan, bukan masak pake feeling. File resepnya masuk git, siapa aja bisa baca, dan semua yang ngikutin dapet masakan yang sama.
Ide intinya
Semua tools IaC share beberapa konsep dasar:
Workflow-nya selalu tiga langkah yang sama:
- Tulis file konfigurasi yang ngejelasin apa yang lu mau.
- Plan (Terraform) atau preview (Pulumi): tools bandingin file lu sama kenyataan, terus nunjukin apa yang bakal berubah.
- Apply: tools manggil API cloud biar kenyataan match sama file lu, terus nyimpen hasilnya di state.
Terraform tuh apa?
Terraform itu tools IaC dari HashiCorp yang pake bahasa konfigurasi sendiri, namanya HCL. Lu nulis file.tf, jalanin terraform plan buat liat perubahan, terus terraform apply buat benerin.
- Bahasa: HCL, bahasa declarative yang memang dibikin buat ini (bukan general purpose)
- State: disimpen di state file, sering dishare sama tim lewat remote backend
- Ekosistem: Terraform Registry host ribuan provider, termasuk yang ini
- Cocok buat: tim yang mau satu tools standar dengan workflow yang sama di mana-mana
Pulumi tuh apa?
Pulumi itu tools IaC yang ngebiarin lu nulis infrastruktur pake bahasa programming umum: TypeScript, Python, Go, C#, dan Java.- Bahasa: bahasa lu sendiri, udah dapet loop, function, dan typing dari hari pertama
- State: disimpen di Pulumi Cloud (atau backend self-hosted)
- Ekosistem: Pulumi Registry ngeindeks package, termasuk yang ini
- Cocok buat: tim yang mau share code, pake abstraksi, dan nulis unit test buat infrastrukturnya
Terraform vs Pulumi
Cara milihnya: kalau tim lu udah banyak nulis Python, Go, atau TypeScript, Pulumi kerasa natural. Kalau lu lebih suka bahasa minimalis yang khusus buat infrastruktur, atau perusahaan standarnya HCL, pilih Terraform. Dua-duanya nge-expose resource Biznet GIO yang sama, jadi bisa ganti tools tanpa ganti apa yang bisa lu kelola.
Posisi provider Biznet GIO di sini
Dua-duanya wrap Biznet GIO Portal API yang sama. Artinya:- Lu order layanan beneran (VPS, bare metal, GPU, storage) lewat API yang sama kayak web portal.
- Lu authenticate pake API token dari portal. Liat Authentication.
- Create dan upgrade bikin order berbayar beneran. Baca panduan billing dulu sebelum apply pertama.
Glosarium
Langkah berikutnya
- Quickstart (Terraform) - order VM pertama dalam kurleb lima menit
- Quickstart (Pulumi) - sama, pake Pulumi
- Authentication - dapetin API token
- Package registries - semua tempat provider ini dipublish