Migrasyon bir güven sorunudur
Sunucular, veritabanları, yedekler, bir sağlayıcı değişikliği. En zor kısım taşımak değil, hiçbir şeyin unutulmadığından emin olmaktı. Migrasyonların her şeyden önce birer güven sorunu olduğuna dair alınmış bir ders. Bir kahramanlık hikâyesi değil.
Bu nedir? · Mühendislik Hikâyesi
Edinilmiş bir tecrübe — bir hata, oluşma sebebi ve kazandırdığı ders. Gizli, müşteri bilgisi olmadan, dramasız. Hata bir kahraman değil, bir öğretmendir. Genel bakışa git
- Yazar
- Batunet Engineering
- Okuma süresi
- 3 dk
- Seviye
- İleri düzey
- Durum
- Onaylandı
Bu sayfada
Bir migrasyonda neredeyse her şeyi ölçebilirsiniz — sonunda önemli olan tek şey hariç: gerçekten her şeyi düşünüp düşünmediğiniz. Bu hikâye o boşluğu anlatıyor. Hikâye bilinçli olarak genel tutuldu — müşteri, sağlayıcı ve tarih belirtilmeden.
Durum
Büyük bir altyapının taşınması gerekiyordu: birden fazla sunucu, veritabanları, yedekler ve buna ek olarak bir sağlayıcı değişikliği. Parçaların her biri tek başına anlaşılmış ve yönetilebilir durumdaydı. Görev yeni bir şey icat etmek değil, var olanı eksiksiz ve zarar görmeden yeni bir yere taşımaktı.
Başlangıç varsayımları
Akla ilk gelen varsayım, migrasyonun teknik bir görev olduğuydu: Kopyalarsınız, geçişi yaparsınız, çalıştığını kontrol edersiniz. Her adım biliniyordu, hiçbiri özellikle zor değildi. Bu varsayıma göre başarı, özenli bir uygulamadan ibaret görünüyordu.
Sorun
Asıl zorluk başka yerdeydi. Bir sunucuyu taşımak zor değildi — zor olan, tüm sunucuları, tüm veritabanlarını, tüm yedekleri ve tüm sessiz bağımlılıkları kapsadığınızdan emin olmaktı. Zamanla büyümüş bir altyapıda, artık kimsenin tamamını aklında tutmadığı şeyler birikir: nadiren kullanılan bir servis, beklenmedik bir yerdeki bir yedek, ayda yalnızca bir kez görünür hâle gelen bir bağımlılık. Soru "yeni yerde çalışıyor mu?" değil, "gerçekten her şey taşındı mı?" idi — ve bu soru yalnızca taşıma yaparak cevaplanamaz.
Neden
Bu zorluğun nedeni, eksiksizliğin var olana bakarak kanıtlanamamasıydı — yalnızca bildiğinizi görürsünüz, unuttuğunuzu değil. Bu yüzden migrasyon, özü itibarıyla teknik değil, bir güven sorunudur: Başarı, "her şey yerinde" ifadesine gerçekten inanıp inanamayacağınıza bağlıdır. Ve kanıtsız inanç, umuttan ibarettir.
Karar
Karar, güveni ummak değil, inşa etmekti — migrasyonu, eksiksizliğini iddia etmek yerine kanıtlayabilecek şekilde kurgulamak. Odakta geçişin kendisi değil, sonunda kesin olarak şunu söyleyebilme yetisi vardı: Hiçbir şey eksik değil.
Uygulama
Bu, eski ve yeni durumu karşılaştırılabilir kılmak ve taşımayı geri alınabilir tutmak anlamına geliyordu. Herhangi bir şey kapatılmadan önce yeninin eskiye karşılık geldiği kontrol edildi — envantere karşı envanter, his karşısında rastgele örnekleme değil. Yeni sistem yükü kanıtlanmış şekilde taşıyana kadar eski erişilebilir kaldı; böylece bir hata, kesinti yerine geri dönüşe imkân tanıdı. Her adım, başarısı yalnızca muhtemel değil, kanıtlanabilir olacak şekilde tasarlandı.
Ödünleşimler
Bu titizlik zaman ve sabır ister: Kanıtlamak taşımaktan yavaştır ve eski durumu paralel olarak tutmak, görünüşte artık gerekmeyen kaynakları bağlar. Bedel, eski sistem çoktan kapatıldıktan haftalar sonra ortaya çıkan o tek unutulmuş parçaya karşı sigortadır. Bunu farklı ele alacağımız tek durum, eksiksizliğini bir insanın hâlâ güvenle gözden geçirebileceği küçük ve sınırlı bir ortamdır — orada tam kanıt çabası abartılı olur.
Öğrendiklerimiz
Migrasyon, teknik bir sorun olmadan önce bir güven sorunudur. Taşımayı zaten bilirsiniz; hiçbir şeyin unutulmadığından emin olmayı ise aktif olarak hak etmeniz gerekir. Bu yüzden asıl iş taşımak değil, kanıtlamaktır — yeni durumu eskisine karşı doğrulanabilir kılmak ve kanıt ortaya konana kadar geri dönüş yolunu açık tutmak. Yalnızca taşıyıp uman kişi, asıl görevi yerine getirmemiş olur.
Bu deneyim Batunet'i nasıl değiştirdi
O günden beri migrasyonları öncelikle bir güven meselesi olarak ele alıyoruz: Her şeyin taşındığını nasıl kanıtlarız? Sona gelip buna güvenmek yerine eksiksizliğin kanıtını sürecin içine yerleştiriyoruz ve yeni durum kanıtlanmış şekilde yükü taşıyana kadar eski durumu erişilebilir tutuyoruz. "Her şey yerinde olmalı" yerine artık "her şeyin yerinde olduğunu gösterebiliriz" diyoruz.
İleri okuma
- Rehber: Kesintisiz (zero-downtime) veritabanı migrasyonları — geri alınabilirlik ve doğrulamanın aynı disiplini, veritabanlarına uygulanmış hâli.
- Rehber: Observability bir mimari meselesidir — neden yalnızca ölçülebilir kıldığınız şeyi değerlendirebilirsiniz.
- Rehber: On yıl sonra hâlâ çalışan yazılım — işletilebilirlik neden yazılımın ömrü boyunca belirleyicidir.
- Hizmet: Bulut yazılımı ve yazılım bakımı — altyapıyı kurmak ve güvenilir şekilde işletmek.
Temelini Batunet Engineering Method oluşturur: hata durumuna göre tasarlamak, geri alınabilir adımlarla çalışmak, eksiksizliği ummak yerine kanıtlamak.
Bir migrasyonda en zor soru yeni sistemin çalışıp çalışmadığı değil, "her şey yerinde" cümlesine inanıp inanamayacağınızdır. Güven umuttan değil, kanıttan doğar.
Referans verilen bileşenler
İlgili konular.
Bu sayfayla bağlantılı rehberler, kararlar, hizmetler ve projeler.
Bu alanda somut bir projeniz mi var?
Referans rehberleri düşünce yapımızı yansıtır. Kendi sisteminizi doğrudan yönetimle konuşabilirsiniz.
