Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure App Service , web uygulamalarını, REST API'leri ve mobil arka uçları barındırmaya yönelik HTTP tabanlı bir hizmettir. App Service, uygulamalar için güvenlik, yük dengeleme, otomatik ölçeklendirme ve otomatik yönetim sağlamak üzere Microsoft Azure ile tümleşir. Bir Azure hizmeti olarak App Service, güvenilirlik gereksinimlerinizi desteklemek için çeşitli özellikler sunar.
Azure'ı kullandığınızda güvenilirlik paylaşılan bir sorumluluktır. Microsoft, dayanıklılık ve kurtarmayı desteklemek için çeşitli özellikler sunar. Bu özelliklerin kullandığınız tüm hizmetler içinde nasıl çalıştığını anlamak ve iş hedeflerinize ve çalışma süresi hedeflerinize ulaşmak için ihtiyacınız olan özellikleri seçmek sizin sorumluluğunuzdadır.
Bu makalede, App Service'in geçici hatalar, kullanılabilirlik alanı kesintileri, bölge kesintileri ve hizmet bakımı gibi çeşitli olası kesintilere ve sorunlara karşı nasıl dayanıklı hale getirilmeye başlandığı açıklanır. Ayrıca, diğer sorun türlerinden kurtarmak için yedeklemeleri nasıl kullanabileceğinizi açıklar ve App Service hizmet düzeyi sözleşmesi (SLA) hakkındaki bazı önemli bilgileri vurgular.
Uyarı
App Service Ortamında güvenilirlik desteği hakkında bilgi arıyorsanız bkz. App Service Ortamında Güvenilirlik.
Üretim dağıtımı önerileri
Azure Well-Architected Framework güvenilirlik, performans, güvenlik, maliyet ve operasyonlar hakkında öneriler sağlar. Bu alanların birbirini nasıl etkilediğini anlamak ve güvenilir bir App Service çözümüne katkıda bulunmak için bkz. Azure Well-Architected Framework'te App Service (Web Apps) için mimari en iyi yöntemleri.
Güvenilirlik mimarisine genel bakış
App Service web uygulaması oluşturduğunuzda, uygulamayı çalıştıran App Service planını belirtirsiniz.
App Service planı, web uygulamalarınızı çalıştıran bir dizi işlem kaynağını tanımlar. Tüm web uygulamaları bir plan içinde çalıştırılmalıdır. Bir planı, çalışanlar olarak da adlandırılan birden çok VM örneğinde çalışacak şekilde ölçeklendikleyebilirsiniz. Bu örnekler, uygulama kodunuzu çalıştıran işlem kaynaklarını sağlar. Tek bir App Service planı birden çok uygulama barındırabilir. Tüm uygulamalar aynı paylaşılan VM örneği kümesinde çalışır.
App Service aşağıdaki yedeklilik özelliklerini sağlar:
Hata etki alanları arasında dağıtım: Platform düzeyinde Azure, App Service planınızın VM örneklerini azure bölgesindeki hata etki alanları arasında otomatik olarak dağıtır. Bu dağıtım, ortak bir güç kaynağını ve ağ anahtarını paylaşan VM'leri gruplandırarak yerelleştirilmiş donanım hatası riskini en aza indirir.
Kullanılabilirlik alanları arasında dağıtım: Desteklenen bir App Service planında alanlar arası yedekliliği etkinleştirirseniz Azure, örneklerinizi bölgedeki kullanılabilirlik alanlarına dağıtır. Bu yapılandırma, bir bölge kesintisi oluşursa daha yüksek dayanıklılık sağlar. Alanlar arası yedeklilik hakkında daha fazla bilgi için bkz . Kullanılabilirlik alanı desteği.
Uygulama ölçeklendirme: App Service planınızı birden çok VM örneğini çalıştıracak şekilde yapılandırdığınızda, plandaki tüm uygulamalar varsayılan olarak tüm örneklerde çalışır. Planınızı otomatik ölçeklendirme için yapılandırıyorsanız, tüm uygulamalar otomatik ölçeklendirme ayarlarına göre birlikte ölçeklendirilir. Ancak, uygulama başına ölçeklendirmeyi kullanarak belirli bir uygulamayı kaç plan örneğinin çalıştırabileceğini özelleştirebilirsiniz.
Ölçek birimleri: App Service, dahili olarak ölçek birimleri adı verilen ve damgalar veya web alanları olarak da bilinen bir platform altyapısı üzerinde çalışır. Ölçek birimi işlem, depolama, ağ ve yük dengeleme dahil olmak üzere App Service'i barındırmak ve çalıştırmak için gereken tüm bileşenleri içerir. Azure, dengeli iş yükü dağıtımı sağlamak, rutin bakım gerçekleştirmek ve genel platform güvenilirliğini korumak için ölçek birimlerini yönetir.
Bazı özellikler yalnızca belirli ölçek birimlerine uygulanabilir. Örneğin, bazı App Service ölçek birimleri alanlar arası yedekliliği desteklese de aynı bölgedeki diğer ölçek birimleri desteklemez.
Geçici hatalara dayanıklılık
Geçici hatalar, bileşenlerde kısa ve aralıklı hatalardır. Bunlar genellikle bulut gibi dağıtılmış bir ortamda gerçekleşir ve işlemlerin normal bir parçasıdır. Geçici hatalar kısa bir süre sonra kendilerini düzeltmektedir. Uygulamalarınızın genellikle etkilenen istekleri yeniden deneyerek geçici hataları işleyebileceği önemlidir.
Bulutta barındırılan tüm uygulamalar, bulutta barındırılan API'ler, veritabanları ve diğer bileşenlerle iletişim kurarken Azure geçici hata işleme yönergelerini izlemelidir. Daha fazla bilgi için bkz Geçici hataları ele alma önerileri.
Microsoft tarafından sağlanan SDK'lar genellikle geçici hataları işler. App Service'te kendi uygulamalarınızı barındırdığınızdan, geçici hata olasılığını azaltmaya yönelik adımları izleyin:
Planınızda birden çok örnek dağıtın. App Service, planınızdaki örneklerde otomatik güncelleştirmeler ve diğer bakım biçimlerini gerçekleştirir. Bir örnek iyi durumda değilse, hizmet bu örneği otomatik olarak yeni bir iyi durumdaki örnekle değiştirebilir. Değiştirme işlemi sırasında, önceki örneğin kullanılamadığı ve yeni bir örneğin trafiğe hizmet etmeye hazır olmadığı kısa bir süre olabilir. Bu etkileri azaltmak için App Service planınızın birden çok örneğini dağıtın.
Dağıtım yuvalarını kullanın. App Service dağıtım yuvaları, uygulamalarınızın kesintisiz dağıtımlarını sağlar. Kullanıcılarınız için dağıtımların ve yapılandırma değişikliklerinin etkisini en aza indirmek için dağıtım yuvalarını kullanın. Dağıtım yuvaları, uygulamanızın yeniden başlatılması olasılığını da azaltır. Uygulamanın yeniden başlatılması geçici bir hataya neden olur.
Ölçeği artırmaktan veya küçültmekten kaçının. Bu işlemler her örneğe atanan CPU, bellek ve diğer kaynakları değiştirir ve uygulamanın yeniden başlatılmasını tetikleyebilir. Bunun yerine, tipik yük altında performans gereksinimlerinizi karşılayan bir katman ve örnek boyutu seçin. Ölçeği genişletmek ve ölçeği daraltmak için trafik hacmindeki değişiklikleri işlemek için örnekleri dinamik olarak ekleyin ve kaldırın.
Kullanılabilirlik alanı hatalarına dayanıklılık
Kullanılabilirlik alanları , bir Azure bölgesi içindeki veri merkezlerinin fiziksel olarak ayrı gruplarıdır. Bir bölge başarısız olduğunda, hizmetler kalan bölgelerden birine aktarılabilir.
Premium v2 ile v4 katmanları için App Service'i alanlar arası yedekli olarak yapılandırabilirsiniz; bu da kaynaklarınızın birden çok kullanılabilirlik alanına dağıtıldığı anlamına gelir. Birden çok bölgeye dağıtım, üretim iş yüklerinizin dayanıklılık ve güvenilirlik sağlamasına yardımcı olur. App Service planlarında alanlar arası yedekliliği yapılandırdığınızda, planı kullanan tüm uygulamalar alanlar arası yedekli hale gelir.
Gereksinimler
Alanlar arası yedekliliği etkinleştirmek için aşağıdaki gereksinimleri karşılamanız gerekir:
Bölge desteği: App Service Premium v2 ve v3 planları için, kullanılabilirlik alanlarını destekleyen tüm bölgelerde alanlar arası yedeklilik desteklenir.
Plan türü:Premium v2 ile v4 plan türlerini kullanın.
Önemli
App Service Premium v4 planlarının bölge yedekliliğini etkinleştirmek için, istediğiniz bölgenin v4 planlarını desteklediğini ve kullanılabilirlik alanlarını desteklediğini onaylamanız gerekir.
En az örnek sayısı: Planınızda en az iki örnek dağıtın.
Ölçek birimi: Uygulamanızın kullanılabilirlik alanlarını destekleyen bir ölçek birimine dağıtılması gerekir. Planınızın kullandığı ölçek birimini doğrudan denetlemezsiniz. Bunun yerine, bir App Service planı oluşturduğunuzda plan, planın kaynak grubuna göre bir ölçek birimine atanır. App Service planınızın ölçek biriminin alanlar arası yedekliliği destekleyip desteklemediğini belirlemek için bkz. App Service planı için alanlar arası yedeklilik desteğini denetleme.
App Service planınız bölge yedekliliğini desteklemeyen bir ölçek birimindeyse, planınızda bölge yedekliliğini etkinleştiremezsiniz. Bunun yerine , uygulamalarınızı farklı bir ölçek birimindeki yeni bir plana yeniden dağıtmanız gerekir.
Bölgeler arasında örnek dağıtımı
Alanlar arası yedekli bir App Service planı oluşturduğunuzda Azure, planın örneklerini bölgedeki kullanılabilirlik alanlarına dağıtır. Bu dağıtım, bir bölgede kesinti yaşansa bile uygulamalarınızın kullanılabilir durumda kalmasını sağlar.
Bölge yedekli dağıtımdaki örnek dağıtımı belirli kurallara göre yapılır. Bu kurallar, uygulama ölçeği daraltıp genişlettikçe de geçerlidir:
En düşük örnekler: App Service planınızda alanlar arası yedeklilik için en az iki örnek olmalıdır.
Planınız tarafından desteklenen maksimum kullanılabilirlik alanları: Azure, planınızın kullanabileceği kullanılabilirlik alanlarının sayısını belirler ve maximumNumberOfZones olarak adlandırılır. Belirli planınızın kullanabileceği kullanılabilirlik alanı sayısını görüntülemek için bkz. App Service planı için alanlar arası yedeklilik desteğini denetleme.
Örnek dağıtımı: Alanlar arası yedeklilik etkinleştirildiğinde Azure, plan örneklerini birden çok kullanılabilirlik alanına otomatik olarak dağıtır. Dağıtım aşağıdaki kuralları temel alır:
Örnek sayısı maximumNumberOfZones değerini aşar ve eşit olarak bölünürse, Azure örnekleri bölgeler arasında eşit olarak dağıtır.
Örnek sayısı eşit olarak bölünmezse Azure kalan örnekleri kalan bölgelere dağıtır.
App Service platformu alanlar arası yedekli bir App Service planı için örnekler ayırdığında, temel alınan Azure sanal makine ölçek kümelerinin sağladığı en iyi efor alanı dengelemesini kullanır. Her bölge aynı sayıda VM'ye sahipse veya diğer tüm bölgelerden bir örneğe göre farklılık gösteriyorsa bir plan dengelenmiş olur. Daha fazla bilgi için bkz . Bölge dengeleme.
Fiziksel bölge yerleşimi: App Service planı örneklerinizin her biri için kullanılan fiziksel kullanılabilirlik alanını görüntüleyebilirsiniz. Daha fazla bilgi için bkz. App Service planı için fiziksel bölgeleri görüntüleme.
Dikkat edilmesi gereken noktalar
Premium v2-v4 planları için, uygulama trafiğe hizmet etmeye devam etse bile kullanılabilirlik alanı kesintisi Azure App Service'in bazı yönlerini etkileyebilir. Bu davranışlar App Service planı ölçeklendirme, uygulama oluşturma, uygulama yapılandırması ve uygulama yayımlamayı içerir.
App Service Premium v2 ile v4 planınızda bölge yedekliliğini etkinleştirdiğinizde, platform güncelleştirmeleri sırasında dayanıklılığı da geliştirirsiniz. Daha fazla bilgi için bkz. Hizmet bakımına dayanıklılık.
Alanlar arası yedekli olarak yapılandırılmamış App Service planlarında, temel alınan sanal makine (VM) örnekleri kullanılabilirlik alanı hatalarına dayanıklı değildir. Bölgede herhangi bir bölgede kesinti sırasında kesinti süresi yaşayabilirler.
Maliyet
App Service Premium v2'yi v4 planlarına kullandığınızda, iki veya daha fazla örneğinize sahipseniz kullanılabilirlik alanlarının etkinleştirilmesi maliyet kazanmaz. Ücretler App Service planı SKU'nuzu, belirttiğiniz kapasiteyi ve otomatik ölçeklendirme ölçütlerinize göre ölçeklendirdiğiniz tüm örnekleri temel alır.
Kullanılabilirlik alanlarını etkinleştirip ikiden az kapasite belirtirseniz, platform en az iki örnek olmasını zorunlu kılar. Platform, bu iki örnek için sizden ücret alır.
Kullanılabilirlik alanı desteğini yapılandırma
Alanlar arası yedekli yeni bir App Service planı oluşturun. Daha fazla bilgi için bkz. Alanlar arası yedeklilik içeren yeni bir App Service planı oluşturma.
Mevcut bir App Service planında bölge yedekliliğini etkinleştirin veya devre dışı bırakın. Daha fazla bilgi için bkz. Mevcut bir App Service planı için bölge yedekliliğini ayarlama.
Kapasite planlaması ve yönetimi
Kullanılabilirlik alanı hatasına hazırlanmak için App Service planınızın kapasitesini fazla sağlamayı göz önünde bulundurun. Bu yaklaşım, çözümün bazı kapasite kayıplarını tolere etmesine ve performansı düşürmeden çalışmaya devam etmesine olanak tanır. Daha fazla bilgi için bkz. Aşırı sağlamayı kullanarak kapasiteyi yönetme.
Tüm bölgeler sağlıklı olduğunda davranış
Aşağıdaki listede, App Service planları alanlar arası yedeklilik için yapılandırıldığında ve tüm kullanılabilirlik alanları çalışır durumda olduğunda neler bekleyebileceğiniz açıklanmaktadır:
Bölgeler arasında trafik yönlendirme: Normal işlemler sırasında, tüm kullanılabilirlik alanlarındaki tüm kullanılabilir App Service planı örnekleri arasında trafik yönlendirilir.
Bölgeler arasında veri çoğaltma: Normal işlemler sırasında, uygulamanızın dosya sisteminde depolanan her durum alanlar arası yedekli depolamada depolanır ve kullanılabilirlik alanları arasında zaman uyumlu olarak çoğaltılır.
Bölge hatası sırasındaki davranış
Uygulama trafiğe hizmet etmeye devam etse bile kullanılabilirlik alanı kesintisi App Service'in bazı yönlerini etkileyebilir. Bu davranışlar App Service planı ölçeklendirme, uygulama oluşturma, uygulama yapılandırması ve uygulama yayımlamayı içerir.
Aşağıdaki listede, App Service planları alanlar arası yedeklilik için yapılandırıldığında ve bir veya daha fazla kullanılabilirlik alanı kullanılamadığında neler bekleyebileceğiniz açıklanmaktadır:
- Algılama ve yanıt: App Service platformu bir kullanılabilirlik alanındaki hataları otomatik olarak algılar ve bir yanıt başlatır. Bir bölge yük devretmesinin başlatılması için el ile müdahale gerekmez.
- Bildirim: Bir bölge kapatıldığında Microsoft sizi otomatik olarak bilgilendirmez. Ancak, tek bir kaynağın durumunu izlemek için Azure Kaynak Durumu'nı kullanabilir ve sorunları size bildirmek için Kaynak Durumu uyarıları ayarlayabilirsiniz. Azure Hizmet Durumu'nı , bölge hataları dahil olmak üzere hizmetin genel durumunu anlamak için de kullanabilir ve sorunları size bildirmek için Hizmet Durumu uyarıları ayarlayabilirsiniz.
Etkin istekler: Hatalı kullanılabilirlik alanındaki bir App Service planı örneğine bağlanan devam eden istekler sonlandırılır. Bu istekleri yeniden deneyin.
Trafik yeniden yönlendirme: App Service bu bölgeden kayıp örnekleri algılar ve yeni yeni örnekler bulmaya çalışır. App Service değiştirmeleri bulduklarından sonra trafiği gerektiğinde yeni örneklere dağıtır.
Otomatik ölçeklendirme yapılandırılırsa ve daha fazla örneğin gerekli olduğunu belirlerse, App Service'ten örnekler talep eder. Otomatik ölçeklendirme davranışı, App Service platform davranışından bağımsız olarak çalışır. Bu nedenle örnek sayısı belirtiminizin iki katı olması gerekmez. Daha fazla bilgi için bkz . App Service'te bir uygulamanın ölçeğini artırma ve Otomatik Ölçeklendirme'ye genel bakış.
Önemli
Azure, daha fazla örnek için yapılan isteklerin bir bölge aşağı senaryosunda başarılı olduğunu garanti etmez. Platform, kayıp örnekleri en iyi şekilde doldurmaya çalışır. Kullanılabilirlik alanı hatası sırasında garantili kapasiteye ihtiyacınız varsa, kapasiteyi aşırı sağlayarak App Service planlarınızı bölge kaybını hesaba eklemek üzere oluşturun ve yapılandırın.
Çalışma zamanı olmayan davranışlar: Alanlar arası yedekli App Service planındaki uygulamalar, kullanılabilirlik alanında kesinti yaşansa bile çalışmaya ve trafiğe hizmet etmeye devam eder. Ancak, kullanılabilirlik alanı kesintisi sırasında çalışma zamanı dışı davranışlar etkilenebilir. Bu davranışlar App Service planı ölçeklendirme, uygulama oluşturma, uygulama yapılandırması ve uygulama yayımlamayı içerir.
Bölge kurtarma
Kullanılabilirlik alanı kurtarıldığında, App Service kurtarılan kullanılabilirlik alanında otomatik olarak örnekler oluşturur, diğer kullanılabilirlik alanlarında oluşturulan geçici örnekleri kaldırır ve her zamanki gibi örnekleriniz arasındaki trafiği yönlendirir.
Bölge hataları için test
App Service platformu, bölge yedekli App Service planları için trafik yönlendirmeyi, yük devretmeyi ve geri yüklemeyi yönetir. Bu özellik tamamen yönetildiğinden kullanılabilirlik alanı hata işlemlerini başlatmanız veya doğrulamanız gerekmez.
Bölge genelindeki hatalara dayanıklılık
App Service tek bölgeli bir hizmettir. Bölge kullanılamaz duruma gelirse uygulamanız da kullanılamaz.
Dayanıklılık için özel çok bölgeli çözümler
Uygulamanızı etkileyen tek bölgeli hata riskini azaltmak için planları birden çok bölgeye dağıtabilirsiniz. Aşağıdaki adımlar dayanıklılığın güçlendirilmesine yardımcı olur:
- Uygulamanızı her bölgedeki planlara konumlandırın.
- Yük dengeleme ve yük devretme ilkelerini yapılandırın.
- Son uygulama durumunuzu kurtarabilmeniz için verilerinizi bölgeler arasında çoğaltın.
Aşağıdaki ilgili kaynakları göz önünde bulundurun:
- Başvuru mimarisi: Yüksek oranda kullanılabilir çok bölgeli web uygulaması
- Dikkate alınması gereken yaklaşımlar
- Öğretici: App Service'te yüksek oranda kullanılabilir bir çok bölgeli uygulama oluşturma
Yedekleme ve geri yükleme
Temel katmanı veya üzerini kullandığınızda, App Service yedekleme ve geri yükleme özelliklerini kullanarak App Service uygulamalarınızı bir dosyaya yedekleyebilirsiniz.
Bu özellikler, kodu yeniden dağıtmak zor olduğunda veya durumu diskte depoladığınızda yardımcı olur. Çoğu çözüm yalnızca yedeklemelere güvenmemelidir. Bunun yerine, dayanıklılık gereksinimlerinizi desteklemek için bu kılavuzdaki diğer özellikleri kullanın. Ancak yedeklemeler, diğer yaklaşımların koruma altına almayan bazı risklere karşı koruma sağlar.
Önemli
31 Mart 2028'den itibaren Azure App Service özel yedeklemeleri artık bağlı veritabanlarının yedeklenmesine destek olmayacaktır. Daha fazla bilgi için bkz. Bağlı veritabanı yedeklemelerinin kullanımdan kaldırılması .
Bunun yerine bağlı veritabanınızın yerel yedekleme ve geri yükleme araçlarını kullanın. Daha fazla bilgi için bkz. App Service'te uygulamanızı yedekleme ve geri yükleme.
Hizmet bakımına dayanıklılık
App Service düzenli hizmet yükseltmeleri ve diğer bakım görevlerini gerçekleştirir. Yükseltme sırasında beklenen kapasitenizi korumak için platform, yükseltme işlemi sırasında App Service planının ek örneklerini otomatik olarak ekler.
Alanlar arası yedekliliği etkinleştirin. App Service planınızda alanlar arası yedekliliği etkinleştirdiğinizde, platform güncelleştirmeleri sırasında dayanıklılığı da geliştirirsiniz. Güncelleştirme etki alanları , güncelleştirme sırasında çevrimdışı olan vm koleksiyonlarından oluşur ve kullanılabilirlik alanlarıyla eşler. App Service planınızda birden çok örnek dağıtmak ve planınız için bölge yedekliliğini etkinleştirmek, yükseltme sırasında bir örnek veya bölge iyi durumda değilse ek bir dayanıklılık katmanı ekler.
Daha fazla bilgi için bkz . App Service için rutin planlı bakım ve App Service için rutin bakım, yeniden başlatmalar ve kapalı kalma süresi.
Hizmet düzeyi sözleşmesi
Azure hizmetleri için hizmet düzeyi sözleşmesi (SLA), her hizmetin beklenen kullanılabilirliğini ve bu kullanılabilirlik beklentisini elde etmek için çözümünüzün karşılaması gereken koşulları açıklar. Daha fazla bilgi için çevrimiçi hizmetler için SLA'lar sayfasına bakın.
Alanlar arası yedekli bir App Service planı dağıttığınızda, SLA'da tanımlanan çalışma süresi yüzdesi artar.