📖 Konsep Utama IaC
- Deklaratif: kita mendefinisikan "apa yang diinginkan", bukan "bagaimana caranya".
- Idempotensi: menjalankan kode berulang kali menghasilkan kondisi akhir yang sama.
- Versioning: infrastruktur bisa dikelola dengan Git seperti kode aplikasi.
- Portabilitas: bisa digunakan lintas cloud provider.
⚙️ Workflow Terraform
- Tulis file konfigurasi (
.tf). - Inisialisasi project:
terraform init. - Preview perubahan:
terraform plan. - Terapkan perubahan:
terraform apply. - 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.