Immutable Infrastructure: Değişmez Altyapı Kavramı ve Avantajları

  • Konbuyu başlatan Konbuyu başlatan irfo
  • Başlangıç tarihi Başlangıç tarihi

irfo

Moderatör
Katılım
7 Ocak 2026
Mesajlar
290
Tepkime puanı
2
Puanları
18
Geleneksel sunucu yönetiminde, bir sunucu kurulur ve ömrü boyunca üzerinde güncellemeler, yama işlemleri ve konfigürasyon değişiklikleri yapılır. Ancak bu yaklaşım zamanla "Configuration Drift" (Konfigürasyon Kayması) dediğimiz, sunucuların birbirinden farklılaşması sorununa yol açar. Immutable Infrastructure (Değişmez Altyapı), bu sorunu kökten çözer: Sunucular asla güncellenmez, sadece yenileriyle değiştirilir.

1. Değişken (Mutable) vs. Değişmez (Immutable) Altyapı​


Bu iki kavramı anlamak için "Evcil Hayvanlar vs. Büyükbaş Hayvanlar" (Pets vs. Cattle) benzetmesi sıkça kullanılır:

  • [] Mutable (Evcil Hayvan): Sunucunuza bir isim verirsiniz, hastalandığında (hata verdiğinde) onu iyileştirmeye çalışırsınız. Her sunucu eşsizdir ve üzerinde manuel değişiklikler yapılır. [] Immutable (Büyükbaş Hayvan): Sunucular birbirinin aynısıdır. Bir hata oluştuğunda veya güncelleme gerektiğinde sunucuyu tamir etmezsiniz; onu siler ve koddaki güncel tanıma göre yenisini oluşturursunuz.

ÖzellikMutable (Değişken)Immutable (Değişmez)
GüncellemeYerinde (In-place) güncelleme yapılır.Yeni imaj/sunucu oluşturulur.
Hata AyıklamaCanlı sunucuda SSH ile müdahale.Log analizi ve yeni dağıtım.
TutarlılıkZamanla sunucular birbirinden farklılaşır.Tüm sunucular her zaman birebir aynıdır.
Geri Dönüş (Rollback)Zor ve riskli.Eski imaja dönmek kadar kolay.

2. Immutable Infrastructure'ın Avantajları​


Konfigürasyon Kaymasının Önlenmesi​
"Benim makinemde çalışıyordu ama sunucuda çalışmıyor" cümlesi tarih olur. Geliştirme, test ve üretim ortamları aynı imajdan (Docker veya AMI) türetildiği için beklenmedik farklar oluşmaz.

Basit ve Güvenli Rollback​
Yeni bir sürüm dağıttınız ve hata mı çıktı? Eski çalışan imajı tekrar yayına alarak saniyeler içinde eski sürüme dönebilirsiniz. Karmaşık "undo" komutlarına gerek kalmaz.

Daha Yüksek Güvenlik​
Değişmez sunucularda manuel müdahale (SSH) genellikle kapalıdır. Bu, saldırganların sisteme sızıp kalıcı değişiklikler yapmasını veya "arka kapılar" bırakmasını imkansız hale getirir.

3. Bu Yaklaşımı Sağlayan Teknolojiler​


Immutable altyapıyı hayata geçirmek için şu araçlar kritik rol oynar:

  • [] Konteynerlar (Docker): Uygulamayı ve bağımlılıklarını paketleyerek her yerde aynı şekilde çalışmasını sağlar. [] Infrastructure as Code (Terraform/Pulumi): Sunucuların silinip yeniden oluşturulmasını otomatikleştirir. [] Imaj Oluşturucular (Packer): Bulut sağlayıcılar için önceden yapılandırılmış sanal makine imajları (AMI vb.) hazırlar. [] Blue-Green Deployment:** Eski ve yeni sürümlerin yan yana çalıştırılıp trafiğin kaydırılmasını sağlar.


Örnek Senaryo: Bir Güncelleme Nasıl Yapılır?​
  1. [] Eski Yöntem: Sunucuya SSH ile bağlan -> apt-get update çalıştır -> Servisi yeniden başlat -> Hata çıkarsa elle düzeltmeye çalış. [] Yeni Yöntem (Immutable): Dockerfile'ı güncelle -> CI/CD üzerinde yeni bir imaj build et -> Mevcut sunucuları/podları kapat -> Yeni imajdan üretilen sunucuları aç.

Sonuç​


Immutable Infrastructure, modern bulut yerlisi (cloud-native) sistemlerin temel taşıdır. Başlangıçta "sürekli yeni sunucu kurmak" zahmetli görünse de, sağladığı ölçeklenebilirlik, güvenlik ve tahmin edilebilirlik uzun vadede operasyonel yükü %80 oranında azaltır.
 
Geri
Üst