Azure Chaos Studio Workspaces ile Dayanıklılık Testi
Bir uygulamanın gerçekten dayanıklı olduğunu, yalnızca o dayanıklılık sınandığında bilebilirsiniz. Bu sınamayı üretim ortamında bir arıza yaparken öğrenmek yerine, kontrollü bir test ortamında bilinçli olarak yapmak çok daha akıllıcadır. Microsoft’un yönetilen kaos mühendisliği hizmeti Azure Chaos Studio tam olarak bunu güvenli ve amaçlı bir şekilde yapmanızı sağlar. Bu yazıda, hizmetin yeni parçası Azure Chaos Studio Workspaces ile birlikte gelen senaryo odaklı yaklaşımı ve Azure iş yükleri için dayanıklılık doğrulamasının nasıl kolaylaştığını inceleyeceğiz.
Dayanıklı tasarım neden yeterli değil?
Azure müşterileri dayanıklılık için ciddi yatırımlar yapıyor: birden fazla erişilebilirlik bölgesine yayılan dağıtımlar, coğrafi olarak yedekli depolama, otomatik veritabanı yük devretmesi, yeniden deneme mantığı ve yük dengeli ön yüzler. Ancak olay başladığında asıl soru şudur: Kurgulanan bu mekanizmalar, varsaydığınız süre içinde uygulamayı gerçekten kurtarıyor mu?
Gerçek kesintiler mimari şemaya bakmaz. Yıllar önce yanlış yapılandırılmış bir sağlık probu yüzünden bölge-yedekli bir dağıtım devre dışı kalabilir. Otomatik yük devretmeli bir veritabanı, bağlantı dizesi tek bölgeye sabitlendiği için uygulamayı çalışamaz hale getirebilir. Coğrafi olarak yedekli depolama, uygulama kodunun beklemediği eski okumalar üretebilir. Bunlar yaygın hatalardır ve yalnızca arıza yaşandığında görünür olurlar.
Microsoft’un vurguladığı gibi, Azure üzerinde güvenilirlik ve dayanıklılık paylaşılan bir sorumluluktur. Microsoft platformdan ve Azure hizmetlerine gömülü dayanıklılıktan sorumluyken, müşteri bu dayanıklılığı yapılandırmaktan ve onu kullanan koddan sorumludur. Hiçbir katman, diğerindeki boşluğu telafi etmez.
Chaos Studio Workspaces nedir?
Chaos Studio, altyapı, ağ, veritabanı ve uygulama bağımlılıkları genelinde kontrollü kesintiler benzeterek uygulamanın arıza altındaki davranışını doğrulamak için kullanılan yönetilen bir kaos mühendisliği hizmetidir. Chaos Studio Workspaces ise bugün genel önizlemede sunulan yeni bir yaklaşım getiriyor: Tek tek hataları bir araya getirmek yerine, üretimde gerçekten görülen kesinti örüntülerine karşılık gelen adlandırılmış senaryolarla başlıyorsunuz.
Bir Workspace, yeni üst düzey kaynaktır. Bir aboneliğe ya da kaynak grubuna yönlendirdiğinizde, yönetilen kimliği kapsamdaki kaynakları keşfediyor ve uygulanabilir senaryoları öneriyor. Altyapınız değiştikçe yenileme yapmak, önerileri güncel tutuyor.
Gerçek kesinti örüntülerinden oluşan senaryo kataloğu
Çoğu kesinti aynı anda iki katmanı zorlar. Platform katmanında hizmetin dönüp dönmediği, yük devretmenin Kurtarma Süresi Hedefi (RTO) içinde tamamlanıp tamamlanmadığı ve trafiğin doğru şekilde yönlendirilip yönlendirilmediği sorgulanır. Uygulama katmanında ise kodun veri bütünlüğünü koruyup korumadığı, aktif işlemleri sürdürüp sürdüremediği, doğru şeyleri yeniden deneyip denemediği ve zarif bir şekilde bozulup bozulmadığı test edilir. Yalnızca bir sanal makineyi durduran bir test size yalnızca platform katmanı hakkında bilgi verir; Workspaces senaryoları ise yığının tamamını doğrulamak için tasarlanmıştır.
Bugün itibarıyla mevcut olan senaryolardan bazıları şunlar:
- Availability Zone Down: Bölge bazlı hedeflemeyle Sanal Makine Ölçek Kümesi (VMSS) kapatılarak bölgeler arası yönlendirme ve kurtarma doğrulanır.
- Availability Zone Down + Database Failover: Hesaplama katmanında bölge kapatılırken Azure Database for PostgreSQL (Flexible Server) yük devretmesi birlikte tetiklenir. Yapılandırılan kurtarma hedeflerine karşı davranış ve uygulama tarafındaki bağlantı yönetimi gözlemlenir.
- DNS Outage: NSG kurallarıyla çözümleyici trafiği engellenerek tam bir DNS çözümleme kesintisi oluşturulur; ad çözümlemesi başarısız olduğunda uygulamanın davranışı incelenir.
- Microsoft Entra ID Outage: Kimlik sağlayıcı arızası ile kimlik doğrulama yeniden deneme, token önbelleği ve alternatif yollar sınanır.
- Cache Stampede: Redis flush işlemi, veritabanı yeniden başlatma ve App Service süreç çökmesi bir arada çalıştırılarak önbellek ıskası fırtınası ve ardından oluşan veritabanı yükü test edilir. Kaynağa göre App Service süreç çökmesi varyantı şu an Windows App Service planlarını destekliyor.
- Event-Driven Messaging Disruption:Azure Service Bus ve Event Hubs devre dışı bırakılarak ölü mektup (dead-letter) işleme ve geri basınç davranışı doğrulanır.
Bu senaryoların arkasında Workspaces için özel olarak yapılmış ayrıntılı API düzeyinde işlemler yer alıyor: Bölgesel VMSS kapatma, App Service süreç sonlandırma, Azure Database for PostgreSQL Flexible Server için zorla yük devretme, Azure Managed Redis flush ve NSG tabanlı ağ kontrolleri bunlardan bazıları. Her senaryo doğru hataları otomatik olarak birleştiriyor; böylece “1. bölgedeki VMSS örneklerini kapat, sonra veritabanı birincilini yük devret” gibi düşünmeniz gerekmiyor.
Kendi senaryonuzu tasarlamak
Hazır senaryolar iş yükünüze tam uymadığında, aynı hata kütüphanesinden yararlanarak kendinizinkini kurgulayabilirsiniz. Scenario Designer, Azure portalı içinde sürükle-bırak yaklaşımıyla adımları, dalları ve hataları düzenlemenize olanak tanıyor. Klasik Chaos Studio deneylerinin esnekliği artık Workspaces içinde de kullanılabilir durumda. Hazır bir şablonla başlayabilir ya da sıfırdan tam hata kütüphanesiyle tasarım yapabilirsiniz.
CPU ve bellek baskısı gibi VM aracı hataları da Workspaces içinde çalışıyor. Katalog, genel önizleme ve genel kullanılabilirlik sürecinde büyümeye devam edecek. Kaynakta belirtilen keşif başlıkları arasında depolama hesabı yük devretmesi, Azure SQL Managed Instance yük devretmesi, Azure Front Door ve Application Gateway senaryoları, kısmi bölge bozulması, AKS için pod kaosu ve müşteri tarafından gözlemlenen bölge kesintisi yer alıyor.
Yapay zekâ iş yükleri için de aynı temel
Copilot’lar, ajanlar, RAG (getirme destekli üretim) hatları ve çıkarım uç noktaları yeni türde arızalar getirebilir; ancak bunlar hâlâ diğer dağıtık uygulamalarla aynı Azure yapı taşlarına dayanır: hesaplama, veritabanları, önbellek, arama dizinleri, kimlik, ağ, mesajlaşma ve depolama. Chaos Studio Workspaces bugün Zone Down, Database Failover, DNS Outage, Cache Stampede ve Event-Driven Messaging Disruption gibi senaryolarla bu temeli doğrulayabilir. Katalog, ileride getirme kaymasi, token kısıtlaması ve yük altında model davranış değişimleri gibi yapay zekâya özgü davranışlara doğru genişleyecek.
Senaryo raporları
Bir çalıştırma bittiğinde Chaos Studio Workspaces yapılandırılmış bir tatbikat raporu üretir. Rapor; senaryonun neyi enjekte ettiğini, hangi kaynakları etkilediğini, kurtarma zaman çizgisinin nasıl seyrettiğini, hangi sinyallerin tatbikata ait olduğunu ve normalden farklı olan noktaları özetler. Rapor, iç olay sonrası inceleme (post-incident review) belgesi gibi okunur; değişiklik biletlerine, denetim kanıtlarına ya da servis sağlığı incelemelerine ek olarak dışa aktarılabilir.
Geliştiricinin araçlarına entegre kaos mühendisliği
Chaos Studio ile birlikte, mühendislerin zaten kullandığı araçlardan hizmeti sürmenin iki yolu duyurulmuş durumda. Bunlardan ilki GitHub Copilot için Chaos Studio Skill: Bir Workspace’i abonelik üzerine yönlendirmek, önerilen senaryoları görmek, tatbikat yapmak ve Azure Monitor sinyalleriyle ilişkilendirilmiş raporları almak konuşma akışı içinde yapılabiliyor.
İkincisi ise aynı Chaos Studio işlemlerini tiplendirilmiş araçlar olarak açığa çıkaran bir MCP (Model Context Protocol) sunucusu. Böylece Claude, Cursor, Codex gibi başka asistanlar veya kendi geliştirdiğiniz otonom ajanlar; bir Workspace oluşturabilir, senaryo çalıştırabilir ve etrafındaki sinyalleri sorgulayabilir. Her ikisi de aynı Chaos Studio API’lerine ve sizin Azure oturum açma bilgilerinize karşı çalışıyor.
Başlangıç için öneriler
Kaynağa göre Azure Chaos Studio Workspaces bugün genel önizlemede. Genel kullanılabilirlik hedefi şu anda 2026 sonu olarak belirtilmiş; ancak değişebileceği not düşülmüş. Başlamak için:
- Test etmek istediğiniz aboneliğe veya kaynak grubuna kapsamlı bir Workspace oluşturun.
- Keşfin önerilen senaryoları doldurmasına izin verin. Kendi kurgunuzu tercih ediyorsanız Scenario Designer’ı açıp hata kütüphanesinden özel bir senaryo tasarlayabilirsiniz; kod yazmanız gerekmez.
- İlk tatbikatı çalıştırın. Daha önce hiç kaos deneyi yapmadıysanız Zone Down ile başlayabilirsiniz. Tam bir erişilebilirlik bölgesi arızası; hesaplama yerleşimi, veritabanı yük devretmesi, DNS çözümlemesi ve uygulama katmanı yeniden deneme mantığının stres altında nasıl davrandığını açığa çıkarır.
Dayanıklılık, tek bir özellik ya da tek bir mimari karar ile elde edilebilecek bir sonuç değil; bir mühendislik disiplini ve bu disiplin doğrulama gerektiriyor. Azure ekosisteminizde senaryo temelli kaos testlerini düzenli hale getirmek, gerçek bir kesinti yaşanmadan önce mimarinizin, yapılandırmanızın ve uygulama mantığınızın gerçekten dayandığını kanıtlamanın en somut yolu.







Yorum gönder