Azure Chaos Studio nedir?
Azure Chaos Studio , bulut uygulamanızın ve hizmet dayanıklılığınızı ölçmenize, anlamanıza ve geliştirmenize yardımcı olmak için kaos mühendisliğini kullanan yönetilen bir hizmettir. Kaos mühendisliği , kontrollü hata ekleme denemelerini çalıştırmak için uygulamanıza gerçek dünya hataları eklediğiniz bir metodolojidir.
Dayanıklılık, sistemin kesintileri ele alıp kurtarma özelliğidir. Uygulama kesintileri, işinizi veya misyonunuzu olumsuz yönde etkileyebilecek hatalara ve hatalara neden olabilir. Azure uygulamalarını geliştirirken, geçirirken veya çalıştırırken uygulamanızın dayanıklılığını doğrulamak ve geliştirmek önemlidir.
Chaos Studio, uygulamanızın kesintilere ve hatalara etkili bir şekilde yanıt verdiğini doğrulayarak olumsuz sonuçlardan kaçınmanıza yardımcı olur. Kesintiler veya sanal makinelerde (VM) yüksek CPU kullanımı gibi gerçek dünya olaylarına karşı dayanıklılığı test etmek için Chaos Studio'yu kullanabilirsiniz.
Aşağıdaki video Chaos Studio hakkında daha fazla arka plan sağlar:
Chaos Studio senaryoları
Hizmet geliştirme ve operasyon yaşam döngüsünü kapsayan çeşitli dayanıklılık doğrulama senaryoları için kaos mühendisliğini kullanabilirsiniz. İki tür senaryo vardır:
- Sağa kaydırma: Bu senaryolarda üretim veya üretim öncesi ortam kullanılır. Genellikle gerçek müşteri trafiği veya sanal yük ile sağa kaydırma senaryoları yaparsınız.
- Sola kaydırma: Bu senaryolar bir geliştirme veya paylaşılan test ortamı kullanabilir. Herhangi bir gerçek müşteri trafiği olmadan sola kaydırma senaryoları yapabilirsiniz.
Chaos Studio'yu aşağıdaki yaygın kaos mühendisliği senaryoları için kullanabilirsiniz:
- Hatayı daha iyi anlamak için uygulamanızı etkileyen bir olayı yeniden oluşturun. Olay sonrası onarımların olayın yinelenmesini engellediğinden emin olun.
- "Oyun günü" yükü, ölçek, performans ve dayanıklılık doğrulaması ile önemli bir etkinliğe veya sezona hazırlanın.
- Uygulamanızın olağanüstü durumdaki kritik verileri hızla kurtarabilmesini ve korumasını sağlamak için iş sürekliliği ve olağanüstü durum kurtarma tatbikatları yapın.
- Uygulama dayanıklılığını bölge kesintilerine, ağ yapılandırma hatalarına, yüksek stres olaylarına veya gürültülü komşu sorunlarına karşı test etmek için yüksek kullanılabilirlik tatbikatları çalıştırın.
- Uygulama performansı karşılaştırmaları geliştirme.
- Üretim ortamları için kapasite gereksinimlerini planlama.
- Stres testleri veya yük testleri çalıştırma.
- Şirket içi veya başka bir bulut ortamından geçirilen hizmetlerin bilinen hatalara karşı dayanıklı kaldığından emin olun.
- Bulutta yerel mimariler üzerine kurulu hizmetlerde güven oluşturun.
- Canlı site araçlarının, gözlemlenebilirlik verilerinin ve arama işlemlerinin beklenmeyen koşullarda çalışmaya devam ettiğini doğrulayın.
Bu senaryoların çoğu için öncelikle geçici kaos denemelerini kullanarak dayanıklılık oluşturursunuz. Ardından, yeni dağıtımların dayanıklılığı gerilemeyeceğini sürekli olarak doğrularsınız. Denetlemek için, sürekli tümleştirme/sürekli dağıtım işlem hatlarınızda dağıtım kapıları olarak kaos denemeleri çalıştırırsınız.
Chaos Studio nasıl çalışır?
Chaos Studio ile Azure kaynaklarınızda güvenli, denetimli hata ekleme işlemini düzenleyebilirsiniz. Kaos deneyleri Chaos Studio'nun temelidir. Bir kaos denemesi, çalıştırılacak hataları ve çalıştırılacak kaynakları açıklar. Gereksinimlerinize bağlı olarak hataları paralel veya sıralı olarak çalışacak şekilde düzenleyebilirsiniz.
Chaos Studio iki hata türünü destekler:
- Doğrudan hizmet: Bu hatalar herhangi bir yükleme veya izleme olmadan doğrudan bir Azure kaynağında çalışır. Örnek olarak bir Redis için Azure Cache kümesini yeniden başlatma veya Azure Kubernetes Service podlarına ağ gecikme süresi ekleme verilebilir.
- Aracı tabanlı: Bu hatalar konuk içi hatalar yapmak için VM'lerde veya sanal makine ölçek kümelerinde çalışır. Sanal bellek baskısı uygulama veya bir işlemi öldürme örnekleri verilebilir.
Her hata, hangi işlemin sonlandırıldığı veya ne kadar bellek baskısı oluşturulacağı gibi yapılandırabileceğiniz belirli parametrelere sahiptir.
Bir kaos denemesi oluşturduğunuzda, sırayla yürütülen bir veya daha fazla adım tanımlarsınız. Her adım, adım içinde paralel olarak çalışan bir veya daha fazla dal içerir. Her dal, hata ekleme veya belirli bir süre bekleme gibi bir veya daha fazla eylem içerir.
Her eylemde bir kaynak grubuna kolayca başvurabilmek için kaynak hedeflerini, hataların seçici adı verilen gruplar halinde çalıştırılması için düzenlersiniz.
Aşağıdaki diyagramda Chaos Studio'daki bir kaos denemesinin düzeni gösterilmektedir:
Kaos denemesi, abonelik ve kaynak grubundaki bir Azure kaynağıdır. Denemelerin durumunu oluşturmak, güncelleştirmek, başlatmak, iptal etmek ve görüntülemek için Azure portalını veya Chaos Studio REST API'sini kullanabilirsiniz.
Sonraki adımlar
Artık kaos mühendisliğini nasıl kullanacağınızı anladığınıza göre şunları yapmaya hazırsınız: