Kaynak kodu ihraç etme vs yönetilen bulut dağıtımı: bir kontrol listesi
Bu kaynak kodu ihraç etme vs yönetilen bulut dağıtımı kontrol listesini kullanarak uyumluluk, ekip yetenekleri ve güncellemeler temelinde kendi barındırma ile yönetilen çalışma zamanı arasında karar verin.

Gerçekte hangi kararı veriyorsunuz
Kaynak kodu ihraç etme ile yönetilen bulut dağıtımı arasında seçim yapmak yalnızca uygulamanızın nerede çalışacağıyla ilgili değildir. Günlük olarak onu sağlıklı tutma işini kimin üstleneceğiyle ilgilidir.
Yönetilen bir çalışma zamanında platform uygulamayı sizin için barındırır. Siz dağıtırsınız ve sağlayıcı çalışma zamanını, temel izlemeyi ve uygulamanızın ihtiyaç duyduğu ortamı yönetir.
Kaynak kodu ihraç edip kendi barındırmayı seçtiğinizde, üretilen kodu alır ve kendi altyapınızda (veya kendi bulut hesabınız içinde) çalıştırırsınız. Sunucular, ağlar ve politikalar üzerinde kontrol sahibi olursunuz, ancak bu kontrole bağlı işleri de üstlenmiş olursunuz.
Bu seçim anında üç şeyi etkiler: hız (ne kadar hızlı teslim edebilirsiniz), risk (neler bozulabilir ve kim düzeltir) ve maliyet (sadece barındırma faturaları değil, personel zamanı da).
Uygulamada en büyük farklar genellikle altyapı sahipliği, izleme ve yedeklemeler, olay müdahalesi, güncelleme akışı (tek tıklamayla dağıtım vs DevOps tarzı sürüm süreci), loglar ve veritabanlarına erişim kontrolü ve uyumluluk kanıtı üretme biçiminde görülür.
AppMaster gibi bir platform kullanıyorsanız fark çok pratik olur: gereksinimler değiştiğinde uygulama yeniden üretilip ihraç edilebilir. Yönetilen bir kurulumda çalışma zamanı tarafı büyük ölçüde sizin yerinize ele alınır. Kendi barındırdığınızda ise yeniden üretim, test ve dağıtımı kendi ortamınızda nasıl yapacağınızı siz kararlaştırırsınız.
Tek bir doğru cevap yok. Hızla ürün çıkaran bir startup operasyon işini azaltmak için yönetilen barındırmayı seçebilir. Düzenlemeye tabi bir ekip sıkı kontroller için kodu ihraç edebilir. Daha iyi olan, kısıtlarınızla ve sistemi her hafta (sadece bir kez başlatmak değil) işletme kabiliyetinizle uyumlu olan seçenektir.
Tercihlerle değil, kısıtlarla başlayın
Karar vermenin en hızlı yolu vazgeçemeyeceklerinizi yazmakla başlamaktır. Tercihler değişir; kısıtlar genellikle sabittir.
Elinizde tutmanız gereken kontrolleri yazın. Bunlar genellikle müşteri sözleşmeleri, düzenleyiciler veya kendi risk toleransınız tarafından belirlenir. Bu maddeler gerçekten pazarlık dışıysa genellikle ihraç edip kendi barındırma yönüne işaret eder.
Yaygın "kesin kontrol" kısıtları arasında verinin nerede tutulacağı (ülke, bölge veya belirli bir bulut hesabı), kimlerin şifreleme anahtarlarını tuttuğu ve bunların nasıl döndürüldüğü, ağ sınırları (özel alt ağlar, VPN'ler, izin listeleri), log erişimi ve saklama kuralları (denetim, SIEM, değiştirilemez depolama) ve değişiklik onayı gereksinimleri (incelemeler, imzalar, kanıt) bulunur.
Sonra hangi işleri dış kaynak kullanmaya istekli olduğunuz konusunda dürüst olun. Birçok ekip her operasyonel detayı elinde tutmak zorunda değildir ve yönetilen çalışma zamanları kesintisiz iş için gerekli günlük işleri ortadan kaldırabilir: çalışma süresi izleme, temel olay müdahalesi, işletim sistemi ve bağımlılık yamaları, yedeklemeler ve rutin geri yükleme testleri, trafik dalgalanmalarını karşılama gibi.
Bir soru birçok tartışmayı çözer: sabaha karşı 2'de olayların sahibi kim? Ekibiniz mesai dışı desteği güvenilir şekilde karşılayamıyorsa kendi barındırma çabukça stres kaynağı olabilir. Kendi barındırıyorsanız bir sahip belirleyin, yükseltme yollarını tanımlayın ve "servis geri geldi"nin ne anlama geldiğini kararlaştırın.
Örnek: küçük bir operasyon ekibi dahili bir portal inşa ediyor. "Tam kontrol" istiyorlar ama yamalama ve on-call olmaya taahhüt veremiyorlar. Uyumluluk kuralı kendiliğinden kendi barındırmayı zorunlu kılmadıkça, yönetilen barındırma genellikle kısıt temelli daha güvenli bir seçimdir. AppMaster ile opsiyonu açık tutabilirsiniz: şimdi yönetilen buluta dağıtın ve yeni bir müşteri veya denetim gerektiğinde kaynak kodunu daha sonra ihraç edin.
Önce sormanız gereken uyumluluk ve güvenlik soruları
Uygulamanız düzenlemeye tabi veya hassas verilerle uğraşıyorsa buradan başlayın. Uyumluluk gereksinimleri çoğu zaman ihraç-vs-yönetilen kararını belirler çünkü verinin nerede bulunacağı ve hangi kanıtları saklamanız gerektiği gibi katı kurallar koyarlar.
Hangi verileri sakladığınız ve hangi kuralların uygulandığını netleştirin. "Müşteri e-postaları" ile "sağlık verisi" çok farklı gereksinimler doğurur. Kayıtları ne kadar süre saklamanız gerektiğini ve kimlerin bunları silebileceğini de belirleyin. Saklama kuralları veritabanı ayarlarını, yedekleri ve hatta yönetici ekranı tasarımınızı etkileyebilir.
Genellikle kararı veren dört alan
Bu sorular pazarlık dışı noktaları ortaya çıkarmanıza yardımcı olur:
- Düzenlenen veriler: Ödeme verileri, sağlık verileri, çocuk verisi veya devlet verisi tutuyor musunuz? Erişim ve değişiklik yönetimi için resmi politikalar gerekli mi?
- Yerleşim: Veri belirli bir ülkede veya bulut hesabında mı kalmalı? Kesin bölgeyi, ağı ve şifreleme anahtarlarını kontrol etmeniz gerekiyor mu?
- Kimlik: SSO, her kullanıcı için MFA ve belirli işlemlere kadar rol tabanlı erişim kontrolü gerekli mi?
- Kanıt: Kim ne yapmış ve ne zaman gösteren denetim izlerini, güvenlik incelemeleri ve olay yanıtı için logları üretebiliyor musunuz?
Kanıt sorusuna net yanıt veremiyorsanız durun. Birçok ekip bu boşluğu ancak bir denetçi erişim, değişiklik ve silme kanıtı istediğinde fark eder.
Loglama ve kanıt güvenliğin parçasıdır
Güvenlik sadece önleme değildir; aynı zamanda ne olduğunu kanıtlayabilmektir.
Hangi loglara ihtiyaç duyduğunuzu (giriş denemeleri, izin değişiklikleri, veri ihracı, yönetici işlemleri) ve bunların nerede saklanması gerektiğini belirleyin. Bazı kuruluşlar logların değiştirilemez olmasını ve sabit bir süre saklanmasını şart koşar.
Örnek: bir İK iç aracı çalışan kayıtlarını tutuyor olabilir. Şirketiniz SSO, sıkı erişim rolleri ve yıllık denetim istiyorsa güvenlik ekibinizin ağ kontrollerini ve log saklama politikalarını yönetebilmesi için üretim ortamını ihraç edip kendi barındırmayı tercih edebilirsiniz. İhtiyaçlar daha hafifse, yönetilen çalışma zamanı yaygın kontrolleri desteklerken operasyon yükünü azaltabilir.
Ekip yetenekleri ve operasyonel kapasite
Bu kararın en zor kısmı teknoloji değil. Ekibinizin uygulamayı her gün, geceleri, haftasonları ve tatillerde güvenle çalıştırıp çalıştıramayacağıdır.
"7/24 operasyon"un sizin için ne anlama geldiği konusunda gerçekçi olun. Uygulama müşterileri, ödemeleri veya kritik iç işleri destekliyorsa, kesinti bir insan meselesine dönüşür: birinin fark etmesi, yanıt vermesi ve düzeltmesi gerekir.
Kendi barındırma genellikle en azından temel bulut operasyonları bilgisi (sunucular, ağ, güvenlik duvarları, yük dengeleyiciler), veritabanı operasyonları (yedekler, geri yüklemeler, yükseltmeler, performans), güvenlik operasyonları (secret yönetimi, erişim kontrolü, olay müdahalesi), güvenilirlik çalışmaları (izleme, uyarılar, loglar, kapasite planlama) ve bir on-call sahibi gerektirir.
Sonra zaman içinde biriken "küçük ama sürekli" görevleri listeleyin: işletim sistemi ve bağımlılık yamaları, TLS sertifikaları, secret döndürme ve denetim logları. Bunlar basit geliyorsa, bir üretim kesintisi sırasında bunları yapmayı hayal edin.
Yönetilen çalışma zamanları bu yükü azaltır, ama sahipliği tamamen ortadan kaldırmaz. Birileri ortamları yönetir, değişiklikleri gözden geçirir ve ne zaman yayınlanacağına karar verir. AppMaster gibi platformlar gereksinimler değiştiğinde uygulamanın temizce yeniden üretilip dağıtılmasını kolaylaştırabilir; ancak kaynak kodunu ihraç edip kendi barındırırsanız operasyonel iş ortadan kaybolmaz.
Son olarak, kilit kişi riskine dikkat edin. Dağıtım adımlarını, veritabanı kurtarma sürecini ve secretlerin nerede olduğunu sadece bir kişi biliyorsa, bir ekibiniz yok; tek bir hata noktası var.
Karar vermeden önce şu soruları sorun:
- Baş mühendisimiz bir hafta çevrimdışıysa kim dağıtım yapıp geri alır?
- Test edilmiş yedeklerimiz ve yazılı bir geri yükleme prosedürümüz var mı?
- Uyarıları kim alıyor ve beklenen yanıt süreleri nedir?
- Güvenlik yama takvimimizi zamanında uygulayabilir miyiz?
- On-call rotasyonu üstlenmeye istekli miyiz?
Güncelleme iş akışı ve sürüm yönetimi
Sürüm iş akışı bu seçimin gerçek olduğu yerdir. Genellikle daha iyi seçenek, değişiklikleri güvenli şekilde yayınlayıp sorunları hızla düzeltebilmenizi sağlayandır; her sürümü küçük bir projeye dönüştürmeyen.
Ne sıklıkta yayın yapacağınız konusunda dürüst olun. Haftalık geliştirme ve aynı gün acil düzeltmeler bekliyorsanız, yayın ve geri alma işlemlerini rutin hale getiren bir yol gerekir. Yönetilen çalışma zamanları bunu genellikle basitleştirir çünkü dağıtım yüzeyi daha küçüktür. Kaynak ihraç edip kendi barındırıyorsanız da hızlı olabilirsiniz, ama yalnızca güçlü bir süreciniz ve baskı altında uygulayabilecek biri varsa.
Onaylar, geri almalar ve kim düğmeye basar
Dağıtımların nasıl onaylanacağını ve bir şeyler bozulduğunda ne olacağını yazın. Basit bir politika, hiç uygulanmayan mükemmel bir politikadan iyidir.
- Üretime kim dağıtabilir (tek kişi, ekip veya otomatik pipeline)
- "Tamamlandı" ne demek (testler geçti, paydaş onayı, değişiklik kaydı)
- Geri alma nasıl çalışır (önceki build, veritabanı değişiklikleri, özellik bayrakları)
- Kötü bir dağıtımdan sonra hedef servis toparlanma süresi
- Sürüm notları ve kararların nerede kaydedildiği
Kaynak ihraç edip kendi barındırıyorsanız geri almaların veri değişikliklerini de kapsadığından emin olun. Kod geri almak kolaydır; uyumsuz veritabanı değişikliklerini geri almak değildir.
Konfigürasyon değişikliklerini koddankinden farklı ele alın
Birçok "acil sürüm" gerçekte API anahtarları, bağlantı dizeleri, e-posta/SMS ayarları veya ödeme ayarları gibi konfigürasyon güncellemeleridir. Bunları koddan ayrı tutun ki her şeyi yeniden derleyip dağıtmak zorunda kalmayın.
Nerede olursa olsun, konfigürasyon için tek bir yer tanımlayın (ve kim düzenleyebilir), sırların nasıl saklanıp döndürüleceğini ve değişikliklerin nasıl denetlenip kaydedileceğini belirleyin (kim ne zaman neyi değiştirdi). Geliştirme, staging ve üretimi tutarlı tutun. Ortam ayarlarındaki küçük farklılıklar sadece üretimde görünen sorunlara yol açabilir. AppMaster gibi bir platform kullanıyorsanız, ortam değişkenlerini ve dış entegrasyonları ilk sürümden önce nasıl eşleyeceğinize karar verin.
Örnek: müşteri destek portalı için giriş sorununu aynı gün düzeltmeniz gerekebilir. Yönetilen barındırmada düzeltmeyi yayınlayıp gerekirse hızlıca geri alabilirsiniz. Kendi barındırmada da aynı şey mümkün, ama yalnızca build, deploy ve rollback adımları zaten betiklenmiş ve test edilmişse.
Maliyet, ölçek ve destek takasları
Para hikayenin yalnızca yarısıdır. Gerçek maliyet genellikle zaman olarak ortaya çıkar: 2:00'de bir şey bozulduğunda kimin sorumlu olduğu ve ne kadar hızlı toparlanabildiğiniz.
Kendi barındırma kağıt üzerinde daha ucuz görünebilir çünkü altyapı faturaları görülebilir ve kolay karşılaştırılır. Ancak sorumluluğu da üstleniyorsunuz. Yönetilen barındırma aylık daha pahalı olabilir, ancak yama, temel güvenilirlik ve rutin operasyonlar için birçok insan-saatini kurtarabilir.
Ekiplerin genellikle gözden kaçırdığı maliyet kalemleri:
- İzleme ve uyarılar (panolar, loglar, on-call kurulumu)
- Yedeklemeler ve geri yüklemeler (geri yüklemeyi test etmek, sadece yedek almak değil)
- Olay müdahalesi (triage, acil düzeltmeler, postmortemler)
- Güvenlik bakımı (OS güncellemeleri, bağımlılık taramaları, secret döndürme)
- Uyumluluk kanıtı (raporlar, değişiklik kayıtları, erişim incelemeleri)
Ölçekleme benzer şekilde ele alınır. Yükünüz öngörülebilirse kendi barındırma verimli ve stabil olabilir. Ani artışlar bekliyorsanız (pazarlama kampanyası, mevsimsel pikler veya "herkes 9'da giriş yapıyor"), yönetilen ortamlar sürprizleri daha az planlamayla karşılar. Kendi barındırıyorsanız dalgalanmalar için önceden tasarlamanız, test etmeniz ve kapasite için ödeme yapmanız veya riski kabul etmeniz gerekir.
Destek ve sözleşmeler uygulama iş açısından kritik hale geldiğinde en çok önem kazanır. İçeride veya müşterilere ne taahhüt etmeniz gerektiğini sorun: çalışma süresi hedefleri, yanıt süreleri ve net sahiplik. Yönetilen bir kurulumda (örneğin AppMaster Cloud veya büyük bir bulut sağlayıcısına dağıtım) altyapı sorunları için daha net sınırlar elde edebilirsiniz. Kendi barındırmada sahiplik kağıt üzerinde daha nettir (size aittir), ancak kanıt yükü ve iş yükü de size aittir.
Kullanışlı bir kural: kesinti maliyeti yönetilen ücretten fazlaysa, sadece sunucu almıyorsunuz; uykuyu da satın alıyorsunuz.
Adım adım: bir saatin altında nasıl seçersiniz
Bunu hızlı bir atölye çalışması gibi ele alın. Gündelik operasyonların sahibini seçiyorsunuz.
60 dakikalık karar akışı
- Kesin gereksinimlerinizi yazın (10 dakika). Kendinizi 10 maddeyle sınırlayın: veri lokasyonu, denetim logları, SSO, çalışma süresi hedefi, yedek kuralları, şifreleme ihtiyaçları ve zor tarihleri.
- İki seçeneği puanlayın (15 dakika). Her favoriyi uyumluluk/güvenlik, ekip yetenekleri/operasyon kapasitesi, gönderme hızı ve toplam maliyet (on-call zamanı dahil) olmak üzere dört alanda 1-5 arası puanlayın.
- En büyük riskleri adlandırın (10 dakika). Her seçenek için en fazla 3 başarısızlık yolu yazın (ör. "kimse sunucuları hızlıca yamalayamaz" veya "yönetilen çalışma zamanı belirli veri yerleşimi gereksinimini karşılayamaz") ve bir pratik azaltma yöntemi.
- Küçük bir pilot çalıştırın (15 dakika şimdi, gerçek zamanda 2-4 hafta). Gerçek bir iş akışını seçin ve ince bir sürümünü yayınlayın. Yayın süresini, olay yönetimini ve güncelleme dağıtımını ölçün.
- Bir varsayılan seçin ve gözden geçirme tetikleyicisi belirleyin (10 dakika). Hangi seçeneği varsayılan yapacağınızı kararlaştırın ve ne zaman tekrar değerlendireceğinizi yazın (yeni uyumluluk gereksinimi, trafik artışı veya yeni işe alım).
Dürüst kalmak için kısa yol: yamalama, izleme, yedekler ve geri alma planınızı açıkça tarif edemiyorsanız, kendi barındırma muhtemelen başlangıç gününde değil, daha sonraki bir adımdır.
Örnek: küçük bir operasyon ekibi haftalık güncellemeleri güvenle yayınlamak için genellikle yönetilen barındırmayla başlar. Daha sonra bir denetim tam kontrol gerektirirse, kaynak kodunu ihraç edip kendi barındırmaya geçerler.
Kodsuz bir platformla (no-code) inşa ediyorsanız AppMaster için bir pilot kontrolü ekleyin: ihracın sürüm sürecinize nasıl uyduğunu (kim kurar, kim dağıtır ve değişiklikleri ne kadar hızlı yeniden üretebileceğiniz) test edin.
Sonradan acı veren geçişlere yol açan yaygın hatalar
En büyük pişmanlık, dağıtımı bir tercih olarak görmek yerine bir işletme modeli olarak ele almamaktır. Ekipler genellikle tanıdık olanı seçer, sonra kullanıcılar uygulamaya bağımlı hale gelince gizli işleri keşfeder.
Yaygın bir hata, kendi barındırmanın otomatik olarak daha ucuz olduğunu varsaymaktır. Bulut faturaları kolayca görülebilir, ama emek görünmez: sunucu yamaları, secret döndürme, log izleme, olay müdahalesi ve güvenlik sorularına cevap verme. Ekibiniz ışıkları açık tutmak için ürün işini bırakmak zorunda kalırsa "daha ucuz" hızla pahalı hale gelir.
Tersi de olur: yönetilen çalışma zamanını seçip daha sonra derin altyapı kontrolü gerektiğinde (özel ağ kuralları, özel kimlik sağlayıcıları, alışılmadık izleme ajanları veya sıkı yerleşim kuralları) zorluk yaşamak. Bu ihtiyaçlar muhtemelse, bunları erken doğrulayın veya baştan ihraç ve kendi barındırma planı yapın.
Yedekleme ve felaket kurtarma birçok kendi barındırma projesinin sessizce başarısız olduğu alandır. Hiç geri yüklenmeyen yedekler sadece umuttur. Geri yükleme testleri planlayın ve kim ne yapar belgelendirin.
Sürüm iş akışı sorunları da kesintilere neden olur. Takımlar değişiklik günlüğü ve geri alma planı olmadan dağıtım yapar veya izlenmeyen acil düzeltmeler uygular. Yönetilen veya kendi barındırılmış olsun, insanların yoğun olduğu haftalarda bile uygulanacak basit bir sürüm rutininiz olmalı.
En sık zorunlu geçişe yol açan problemler:
- Operasyonel iş gücü tahmini yok (on-call, yamalama, izleme)
- Yedekleme, geri yükleme ve felaket kurtarma test planı eksik
- Kötü sürümler için geri alma yolu yok ve yazılı değişiklik günlüğü yok
- Erişim yönetimi, offboarding ve denetim izleri hafife alınmış
- Derin altyapı kontrolü gerektiren ihtiyaçlar varken yönetilen barındırma seçilmiş
Örnek: küçük bir ekip dahili bir portalı hızla başlatır, sonra bir yüklenici ayrılır ve yönetici paneline erişimi olduğu için erişimi kapatılmamıştır çünkü offboarding formalize edilmemiştir. Bu tek boşluk bir uyumluluk olayına dönüşebilir.
AppMaster ile inşa ediyorsanız, runtime operasyonlarının sahibini erken belirleyin ve gerçek kullanıcılar gelmeden önce günlük görevleri (erişim incelemeleri, yedek testleri, yayın adımları) yazın.
Hızlı karar kontrol listesi
Her satırı Evet, Hayır veya Emin Değilim olarak işaretleyin. İki veya daha fazla "Emin Değilim" cevabınız varsa, taahhüt etmeden önce eksikleri doldurun.
Uyumluluk ve risk
- Verinin tam olarak nerede olması gerektiğini (ülke veya bölge) biliyor musunuz ve bunu loglar, raporlar veya denetçiye uygun bir izle kanıtlayabiliyor musunuz?
- Erişim, değişiklikler ve olaylara dair kanıt üretebilir misiniz (kim ne yaptı, ne zaman ve neden)?
- Sırlar ve erişim kontrolü için açık bir planınız var mı (kim anahtarları görebilir, nasıl döner ve biri ayrıldığında ne olur)?
Bu maddelerin çoğu katı gereksinimlerse ve zaten uyumlu altyapı işletiyorsanız, ihraç edip kendi barındırma genellikle uygundur. Sadece iyi güvenlik istiyorsanız ve ağır kanıt gerekmiyorsa yönetilen barındırma genellikle daha basittir.
Operasyonlar ve güncellemeler
- Hafta sonları dahil güvenlik yamaları, olay müdahalesi ve on-call kararları için isimlendirilmiş bir sahibi var mı?
- Yayın süreciniz yazılı mı, onaylar, geri alma planı ve düzeltmeyi doğrulama adımı dahil mi?
- Yedekler tanımlı mı (ne, ne sıklıkta, nerede) ve gerçek bir geri yükleme testi yaptınız mı?
Kendi barındırma yalnızca bu sorular sağlamsa iyi işler. Yönetilen dağıtım, sürekli operasyonel işi platformun halletmesini istediğinizde en iyi sonuç verir.
Geleceğe hazırlık
Daha sonra taşınma planınızı yapın:
- Başka bir buluta veya tekrar on-premise'e nasıl geçeceğinizi bir sayfada anlatabiliyor musunuz (veritabanı taşıma ve DNS kesmesi dahil)?
- Hangi izlemeye ihtiyacınız olduğunu (çalışma süresi, hatalar, performans) ve kimin uyarılacağını biliyor musunuz?
Örnek: AppMaster ile dahili bir araç inşa edip gelecek yıl denetimler bekliyorsanız, üretimi şirket bulut hesabında çalıştırmak üzere kaynak kodunu ihraç etmeyi planlayabilirsiniz. Ana riskiniz yavaş sürümlerse, rollback rutini net olan yönetilen barındırma daha güvenli olabilir.
Örnek durum: uyumluluk endişesi olan dahili araç
Küçük bir operasyon ekibi müşteri araması, şifre sıfırlama, iade işlemleri ve denetim geçmişi görüntüleme gibi işlevleri olan dahili bir admin aracı istiyor. Kodsuz bir araçla (no-code) UI ve mantığı hızlıca oluşturabilirler, ama üretim için kaynak ihraç mı yoksa yönetilen çalışma zamanı mı kullanacaklarına karar vermeleri gerekiyor.
Kısıtları nettir. Müşteri verileri hassastır ve uyumluluk incelemesi açık yerleşim, erişim kontrolü ve denetim izleri talep etmektedir. Aynı zamanda sınırlı operasyon zamanı var. Kimse veritabanı ayarlama, sunucu yamalama veya sabaha karşı 2'de uyanmak istemiyor.
Kontrol listesini uyguladıktan sonra pratik bir ayrım yaparlar:
- Eğer uyumluluk onaylanan bir bölgede yönetilen çalışma zamanına izin veriyorsa ve logging ile erişim gereksinimlerini karşılayabiliyorsa operasyon yükünü azaltmak için yönetilen dağıtımla başlayabilirler.
- İnceleyen kişi özel ağ, belirli bulut hesabı veya sıkı IAM gerektiriyorsa üretimi şirketin AWS/Azure/GCP hesabında çalıştırmak üzere kaynak kodunu ihraç ederler.
Bu durumda uyumluluk görevlisi üretimin şirket bulut hesabında, özel veritabanı erişimi ve sıkı IAM politikalarıyla çalışmasını şart koşar. Bu yüzden üretim için kaynak kodunu ihraç ederler, ama kaotik olmaması için staging ortamını yönetilen çalışma zamanı olarak bırakırlar; böylece ürün değişiklikleri iç altyapı beklemeden test edilebilir.
Kaosa izin vermemek için baştan dört şeyi belgelemeye karar verirler: hedef bölge ve veri depoları, gerekli loglar ve denetim olayları, yayın adımları (kim onaylar, kim dağıtır, geri alma kuralları) ve konfigürasyonun koddan ne zaman ayrı olduğu. Ayrıca entegrasyonların envanterini (Stripe, e-posta/SMS, Telegram) ve sırların nerede saklandığını tutarlar, böylece ileride yapılacak bir geçiş (kendi barındırmadan yönetilene veya tersi) kontrollü bir göç olur, yeniden inşa değil.
Sonraki adımlar: kararı kalıcı kılın
Dağıtım kararı baskı altında tekrar edilebiliyorsa işe yarar. Yeni özellikler geliştirmeden önce kararı tek bir sayfaya yazın: ne seçtiniz, neden, ne yapmıyorsunuz ve ne zaman yeniden değerlendireceksiniz.
Pratik tutun: en önemli 3 nedeniniz (ör. uyumluluk ihtiyaçları, mevcut operasyon kapasitesi veya güncelleme hızı) ve en önemli 3 riskiniz (ör. on-call yükü, yavaş yamalar veya sağlayıcı kısıtları). Bu sayfa fikir ayrılıkları ortaya çıktığında karar vericidir.
Sonra yeni bir ekip üyesinin tahmin etmeden takip edebileceği küçük bir runbook oluşturun:
- Nasıl dağıtılır (kim basar, nerede çalışır, ne kadar sürer)
- Nasıl geri alınır (hangi düğme veya komut, ve "iyi" ne demek)
- Nasıl geri yüklenir (yedekler nerede, geri yükleme nasıl test edilir)
- Hangi uyarılar önemlidir (çalışma süresi, hatalar, veritabanı disk durumu, sertifikalar)
- Sürüm notları nerede durur (ne değişti, ne zaman ve kim onayladı)
İlk gerçek sürüm döngünüzden sonra bir gözden geçirme tarihi seçin; iyi bir zaman kullanıcılara güvenilir şekilde hizmet verilmeye başlandıktan 2-4 hafta sonra olabilir. Şunu sorun: güncellemeler güvenli hissedildi mi, olaylar düzgün müdahale edildi mi ve ekip daha çok yayın mı yaptı yoksa bakım mı yaptı?
AppMaster kullanıyorsanız, kaynak ihraç ile yönetilen çalışma zamanına dağıtımı aynı kontrol listesiyle doğrudan karşılaştırın, özellikle uyumluluk kanıtı, yamaların kim tarafından yapıldığı ve ne kadar hızlı yayın yapmanız gerektiği konularında. Hem yolu pilotlamak için hızlı bir yöntem isterseniz, AppMaster (appmaster.io) tam bir uygulama oluşturup yönetilen dağıtıma veya kaynak ihraçına ihtiyaçlarınıza göre karar vermenizi sağlayacak şekilde tasarlanmıştır.
Son olarak, uçtan uca küçük bir pilot çalıştırın: basit bir uygulama oluşturun, dağıtın, bir kez geri alın ve bir kez yedekten geri yükleyin. Bu süreç zor geliyorsa dağıtım seçiminiz muhtemelen yeniden gözden geçirilmeli.
SSS
Yönetilen bulut dağıtımı, hızlı başlamak ve yama, izleme ve çağrı başı destek gibi işlerle ayrılmak istemiyorsanız genellikle en iyi varsayılan seçenektir. İlk aylarda operasyonel riski azaltır çünkü üstlenmeniz gereken hareketli parçaların sayısını düşük tutar.
Kendi barındırma, çalışma zamanını ve çevresindeki işleri sahiplenmeniz demektir: sunucular, ağlar, güvenlik güncellemeleri, izleme, yedeklemeler, geri dönüşler ve olay müdahalesi. Yönetilen dağıtım ise bu günlük altyapı işlerinin büyük kısmını sağlayıcıya devreder; siz uygulamanın davranışı ve sürüm kararlarını elinizde tutarsınız.
Veri yerleşimini belirli bir ülke veya belirli bir bulut hesabında tutma, kendi şifreleme anahtarlarınızı yönetme, özel ağ kuralları uygulama veya sıkı denetim kanıtı gereksinimleri varsa genellikle kaynak ihraç edip kendi barındırmayı tercih etmek daha güvenlidir. Bu kısıtlar gerçekten vazgeçilmezse, baştan oradan başlamak ve operasyonel sahipliği planlamak gerekir.
Olay sırasında neler olduğunu kanıtlayabilmek için yakalamanız gereken olayları listeleyin: giriş denemeleri, izin değişiklikleri, yönetici işlemleri, veri ihracı ve silmeler gibi. Ardından saklama süresini, kimin erişebileceğini ve logların değiştirilemez (immutable) olup olmadığını belirleyin; bunlar depolama, erişim kontrolleri ve denetim yanıtı için kritiktir.
En basit test: 2:00'deki bir kesintiye kim yanıt veriyor ve hizmet nasıl geri geliyor? Uyarıları, yamaları ve veri kurtarmayı güvenilir şekilde karşılayamıyorsanız yönetilen dağıtım genellikle daha sağlıklıdır; kendi barındırma içinse net sahiplik ve yazılı bir çalıştırma kılavuzu gerekir.
Genellikle yönetilen dağıtımlar, altyapur işini azaltıp dağıtımları ve geri almaları daha rutin hale getirir. Kendi barındırma da aynı hızda olabilir, ancak bunun için zaten betiklenmiş, test edilmiş ve baskı altında tekrarlanabilir bir build/deploy/rollback sürecinizin olması gerekir.
Konfigürasyonu koddan ayrı tutun ki anahtarları ve ayarları her değişiklikte yeniden derlemeden değiştirebilin. Ortam değişkenleri ve sırlar için tek bir kaynak tanımlayın, kimlerin düzenleyebileceğini kısıtlayın ve geliştirme/staging/production ortamlarını tutarlı tutun.
Yönetilen hosting aylık ücret olarak daha pahalı olabilir, ancak yama, izleme, yedeklemeler ve olay müdahalesi için insan saatlerini kurtarır. Kendi barındırma kağıt üzerinde daha ucuz görünebilir; gizli maliyet ise emek ve bir şey bozulduğunda toparlanma süresidir.
En büyük operasyonel hata: yedeklerin hiç geri yüklenmemesi. Geri yükleme testleri planlayın ve kısa bir kurtarma çalıştırma kılavuzu yazın. Ayrıca geri alma kurallarını veritabanı değişikliklerini kapsayacak şekilde tanımlayın; kodu geri almak kolaydır, uyumsuz veri değişikliklerini geri almak zor olabilir.
Küçük bir pilot çalışması yapın ve dağıtım, geri alma ve yedekten geri yüklemenin bir kerede ne kadar sürdüğünü ölçün. AppMaster ile kodsuz araçla uygulama geliştirip önce yönetilen çalışma zamanına dağıtabilir, sonra yeni uyumluluk ihtiyaçları çıktığında kaynak kodunu ihraç edebilirsiniz.


