Güvenilir Azure uygulamaları tasarlama
Azure tarafından yönetilen hizmetler, genel uygulama güvenilirliğini desteklemek için yerel dayanıklılık özellikleri sağlar. Bu özelliklerden yararlanabilmek için hizmet olarak platform (PaaS) teklifleri kullanılmalıdır. PaaS seçeneklerini yapılandırmak ve yönetmek daha kolaydır. VM'leri sağlamanız, sanal ağlar ayarlamanız, düzeltme eklerini ve güncelleştirmeleri yönetmeniz, tüm yazılımı bir VM üzerinde çalıştırmayla ilgili diğer ek yüklerle ilgilenmeniz gerekmez. Daha fazla bilgi için bkz. Yönetilen hizmetleri kullanma.
Uygulamanın ölçeğini uzdirin mi?
Azure esnek ölçeklenebilirlik sağlar ve ölçeği genişletmeye göre tasarlamanız gerekir. Ancak, tek tek bileşenlerin ve bir bütün olarak uygulamanın yatay olarak ölçeklendirileyeceklerini sağlamak amacıyla hizmet ve abonelik sınırları arasında gezinmek için uygulamaların ölçek birimi yaklaşımını kullanması gerekir. Ölçeğin ölçeğini azaltarak maliyetleri düşüren bir ölçeğin nasıl azaltılamayacaklarını unutmayın. Örneğin, ölçek ölçeğini ve ölçeğini App Service kuralları aracılığıyla yapılır. Müşteriler genellikle ölçek ölçeğini dışarı ölçeklendirme kuralları yazar ve hiçbir zaman ölçek ölçeğinde kurallar yazmaz. Bu durum, App Service daha pahalı hale geliyor.
Uygulama birden çok Azure aboneliği arasında mı dağıtıldı?
uygulamanın abonelik ortamını ve ilgili abonelik sınırları veya kotalar arasında gezinebilir olup olamayabilecek analizler için bileşenlerin abonelik içinde veya abonelikler arasında nasıl düzenleniyor olduğunu anlamak önemlidir. Gerekli kapasitenin Azure hizmet ölçek sınırları ve kotaları içinde olduğunu doğrulamak için Azure aboneliği ve hizmet sınırlarını gözden geçirme. Daha fazla bilgi edinmek için bkz. Azure aboneliği ve hizmet sınırları.
Sonraki adım
İlgili bağlantılar
- Bağımlılıkları en aza indirme hakkında bilgi için bkz. Koordinasyonu en aza indirme.
- Hata noktaları ve hata modları hakkında daha fazla bilgi için bkz. Azure uygulamaları için Hata Modu Analizi.
- Yönetilen hizmetler hakkında bilgi için bkz. Hizmet olarak platform (PaaS) seçeneklerini kullanma.
Geri dön makaleye bakın: Tasarım
Bulutta güvenilir bir uygulama oluşturma, geleneksel uygulama geliştirme süreçlerinden farklıdır. Geçmişte bir uygulama platformunun tamamının başarısız olma ihtimalini en aza indirmek için yedekli üst düzey donanımlar satın aldıyabilirsiniz ancak bulutta hataların yaşanacak olduğunu kabul etmek istiyoruz. Hedef, hataları tamamen önlemeye çalışmak yerine hata veren bir bileşenin etkilerini en aza indirmektir. Burada beklenilen hatalar, Azure'ın bir özelliği değil, yüksek oranda dağıtılmış sistemlerden kaynak alır.
Önemli Noktalar
- Güvenilirliği Kullanılabilirlik Alanları ve maliyetleri iyileştirmek için uygun olduğunda uygun olan her alanı kullanın.
- Hatalardan etkilene uygulamalar tasarlar.
- Genel uygulama güvenilirliğini desteklemek için PaaS'nin yerel dayanıklılık özelliklerini kullanın.
- Ölçeğin ölçeğini dışarı doğru tasarla.
- Gerekli kapasitenin Azure hizmet ölçek sınırları ve kotaları içinde olduğunu doğrulama.
Bölge içinde Kullanılabilirlik Alanları kullanma
Gereksinimleriniz tek başına tek başına Kullanılabilirlik Alanları daha fazla hata yalıtımı talep ediyorsa, birden çok bölgeye dağıtmayı göz önünde bulundurarak. Olağanüstü durumda yük devretme amacıyla birden çok bölge kullanılmalıdır. Ek maliyetin dikkate alınması gerekir. Maliyet ihtiyaçlarına örnek olarak veri ve ağ ile veri kaynağı gibi hizmetler Azure Site Recovery.
Uygulama mimarinizi bir bölge içindeki Kullanılabilirlik Alanları şekilde tasarlar. Kullanılabilirlik Alanları veri merkezi düzeyinde hataya dayanıklılık sağlayarak bir bölge içindeki uygulama kullanılabilirliğini iyileştirmek için kullanılabilir. Ancak, uygulama mimarisinin bunları etkili bir şekilde kullanmak için bölgeler arasında bağımlılıkları paylaşması gerekir.
Not
Kullanılabilirlik Alanları alanlar arasındaki fiziksel ayrım ve bölgeler arası bant genişliği ücretleri göz önünde bulundurularak bölgeler arasında son derece "sohbet" olan uygulamalar için performans ve maliyetle ilgili önemli noktalara neden olabilir. Bu, daha düşük Kullanılabilirlik Alanları SLA elde etmek için daha yüksek bir SLA elde etmek için başka bir değerlendirmenin de düşünülebilir olduğu anlamına gelir.
Uygulama performansı nedenleriyle bileşen yakınlığı gerektirse de bunu göz önünde bulundurabilirsiniz. Uygulamanın hepsi veya bir bölümü gecikme süresine son derece duyarlı ise, bileşen ortak yerelliğini zorunlu bulundurarak çok bölgeli ve çok bölgeli stratejilerin uygulanabilirliğini sınırlayıcı olabilir.
Hataya yanıt verme
Genel bulutta hatalardan kaçınmak mümkün değildir ve sonuç olarak uygulamalar, kesintilere yanıt vermek ve güvenilirlik sunmak için dayanıklılık gerektirir. Bu nedenle uygulama, kritik uygulama senaryoları ve işlevleri genelinde bölgesel, bölgesel, hizmet veya bileşen hatalardan etkilenene kadar çalışacak şekilde tasarlanmalı. Uygulama işlemleri, kesinti sırasında daha az işlevsellik veya düşük performansla karşıdan çıkabilirsiniz.
Uygulamanın hata durumundayken nasıl kullanılabilir durumda olduğunu yakalamak için bir kullanılabilirlik stratejisi tanımlayın. Çoklu coğrafi ölçek birimi dağıtım yaklaşımı gibi bir bütün olarak tüm uygulama bileşenlerine ve uygulama dağıtım damgasına uygulanmalısınız. Maliyet üzerinde de etkileri vardır: Yüksek kullanılabilirlik sağlamak için daha fazla kaynağın önceden sağlanması gerekir. Etkin-etkin kurulum, tek dağıtımdan daha pahalıyken, tek bir damga üzerindeki yükü düşürerek ve gereken toplam kaynak miktarını azaltarak maliyeti dengeler.
Kullanılabilirlik stratejisine ek olarak, uygulama ve/veya temel senaryoları için bir İş Sürekliliği Olağanüstü Durum Kurtarma (BCDR) stratejisi tanımlayın. Olağanüstü durum kurtarma stratejisi, yeniden dağıtım, sıcak yedek aktif-pasif veya etkin yedek etkin-etkin yaklaşım kullanarak, uygulamanın bölgesel bir kesinti veya kritik bir platform hizmetinin kaybı gibi bir olağanüstü durum durumuna nasıl yanıt olduğunu yakalamalı.
Maliyeti düşürecek bir yol için uygulama bileşenlerini ve verilerini gruplara ayırmayı göz önünde bulundurabilirsiniz. Örnek:
- Korunması gerekir
- Korunması güzel
- Aynı ilkeyle tüm verileri korumak yerine kısa ömürlü/yeniden oluşturulmuş/kaybolabilir
Güvenilirliği artırma konusunda dikkat edilmesi gerekenler
Uygulama yönetilen hizmetleri kullanmak için tasarlanmış mı?