Nedir Kod Olarak Altyapı
Kod aracılığıyla altyapı yönetimi
Infrastructure as Code (IaC), manuel yapılandırma yerine makine tarafından okunabilir yapılandırma dosyaları kullanarak altyapıyı yönetme ve dağıtma yaklaşımıdır.
Faydaları
- Sürüm kontrolü — Git'te altyapı, değişiklik geçmişi
- Tekrarlanabilirlik — her yerde aynı ortam
- Otomasyon — manuel eylem olmadan hızlı dağıtım
- Dokümantasyon — kod dokümantasyon görevi görür
IaC Araçları
- Terraform — bulut bağımsız, bildirimsel
- AWS CloudFormation — AWS için
- Pulumi — normal dillerde IaC (Python, TypeScript)
- Ansible — yapılandırma yönetimi
Bildirimsel vs Zorunlu
- Bildirimsel (Terraform): istenen durumu tanımlar
- Zorunlu (scriptler): ulaşma adımlarını tanımlar
Uygulamalar
- Uzak depolamada durum saklama
- Kod yeniden kullanımı için modüller
- Otomatik uygulama için CI/CD
- Politikalar ve kontroller (OPA, Sentinel)
Terraform Örneği
resource "aws_instance" "web" {
ami = "ami-0c55b159cbfafe1f0"
instance_type = "t2.micro"
}