Apa Itu Infrastructure as Code?
IaC adalah praktik mendefinisikan dan mengelola infrastruktur (server, jaringan, database) menggunakan file konfigurasi yang dapat di-version control, sama seperti kode aplikasi.
Mengapa Terraform?
Terraform dari HashiCorp adalah tool IaC yang provider-agnostic, mendukung AWS, GCP, Azure, dan ratusan provider lain dengan syntax HCL yang relatif mudah dipelajari.
Konsep Kunci Terraform
- Provider – plugin untuk berinteraksi dengan cloud/service
- Resource – unit infrastruktur yang dikelola
- Module – kumpulan resource yang reusable
- State – rekaman kondisi infrastruktur saat ini
- Plan/Apply – preview dan eksekusi perubahan
Best Practices
Simpan state di remote backend (S3 + DynamoDB untuk AWS), gunakan workspaces untuk multi-environment, modularisasi konfigurasi, dan code review untuk setiap perubahan infrastruktur.
Kesimpulan
IaC menghilangkan configuration drift, memungkinkan disaster recovery yang cepat, dan membuat infrastruktur reproducible.