Otomatik ölçeklendirme ve App Service Ortamı v1

Önemli

Bu makale App Service Ortamı v1 hakkındadır. App Service Ortamı v1, 31 Ağustos 2024 tarihinde kullanımdan kaldırılacaktır. Kullanımı daha kolay olan ve daha güçlü bir altyapı üzerinde çalışan yeni bir App Service Ortamı sürümü vardır. Yeni sürüm hakkında daha fazla bilgi edinmek için App Service Ortamı giriş ile başlayın. Şu anda App Service Ortamı v1 kullanıyorsanız yeni sürüme geçmek için lütfen bu makaledeki adımları izleyin.

29 Ocak 2024 itibarıyla ARM/Bicep şablonları, Azure Portal, Azure CLI veya REST API gibi kullanılabilir yöntemlerden herhangi birini kullanarak yeni App Service Ortamı v1 kaynakları oluşturamıyabilirsiniz. Kaynak silme ve veri kaybını önlemek için 31 Ağustos 2024'e kadar App Service Ortamı v3'e geçmeniz gerekir.

Azure Uygulaması Hizmet ortamları otomatik ölçeklendirmeyi destekler. Ölçümlere veya zamanlamaya göre tek tek çalışan havuzlarını otomatik olarak ölçekleyebilirsiniz.

Autoscale options for a worker pool.

Otomatik ölçeklendirme, bir App Service ortamını bütçenize ve veya yük profilinize uyacak şekilde otomatik olarak büyütüp küçülterek kaynak kullanımınızı iyileştirir.

Çalışan havuzu otomatik ölçeklendirmeyi yapılandırma

Otomatik ölçeklendirme işlevine çalışan havuzunun Ayarlar sekmesinden erişebilirsiniz.

Settings tab of the worker pool.

Buradan, bir App Service planını ölçeklendirirken gördüğünüz deneyimle aynı olduğundan arabirimin oldukça tanıdık olması gerekir.

Manual scale settings.

Otomatik ölçeklendirme profilini de yapılandırabilirsiniz.

Autoscale settings.

Otomatik ölçeklendirme profilleri, ölçeğinizde sınırlar ayarlamak için kullanışlıdır. Bu şekilde, üst sınır (2) ayarlayarak daha düşük sınır ölçek değeri (1) ve tahmin edilebilir bir harcama üst sınırı ayarlayarak tutarlı bir performans deneyimi yaşayabilirsiniz.

Scale settings in profile.

Bir profil tanımladıktan sonra, profil tarafından tanımlanan sınırlar içinde çalışan havuzundaki örnek sayısını büyütmek veya küçültmek için otomatik ölçeklendirme kuralları ekleyebilirsiniz. Otomatik ölçeklendirme kuralları ölçümleri temel alır.

Scale rule.

Otomatik ölçeklendirme kurallarını tanımlamak için tüm çalışan havuzları veya ön uç ölçümleri kullanılabilir. Bu ölçümler, kaynak dikey penceresinde izleyebileceğiniz veya uyarı ayarlayabileceğiniz ölçümlerle aynıdır.

Otomatik ölçeklendirme örneği

App Service ortamının otomatik olarak ölçeklendirilme durumu en iyi senaryo boyunca izlenerek gösterilebilir.

Bu makalede, otomatik ölçeklendirmeyi ayarlarken dikkat edilmesi gereken tüm noktalar açıklanmaktadır. Makale, App Service Ortamı'de barındırılan App Service ortamlarını otomatik ölçeklendirmeyi hesaba kattığınızda ortaya çıkan etkileşimler konusunda size yol gösterir.

Senaryoya giriş

Frank, yönettiği iş yüklerinin bir bölümünü App Service ortamına geçiren bir kuruluşun sistem yöneticisidir.

App Service ortamı aşağıdaki gibi el ile ölçeklendirilecek şekilde yapılandırılır:

  • Ön uçlar: 3
  • Çalışan havuzu 1: 10
  • Çalışan havuzu 2: 5
  • Çalışan havuzu 3: 5

Çalışan havuzu 1, üretim iş yükleri için kullanılırken, kalite güvencesi (QA) ve geliştirme iş yükleri için çalışan havuzu 2 ve çalışan havuzu 3 kullanılır.

Soru-Cevap ve geliştirme için App Service planları el ile ölçeklendirilecek şekilde yapılandırılır. Üretim App Service planı, yük ve trafik değişimleriyle başa çıkmak için otomatik ölçeklendirmeye ayarlanır.

Frank uygulamaya çok aşinadır. Çalışanların ofisteyken kullandıkları bir iş kolu (LOB) uygulaması olduğundan yük için yoğun saatlerin 09:00 ile 18:00 arasında olduğunu biliyorlar. Kullanıcılar o gün için tamamlandığında kullanım bundan sonra düşer. Yoğun saatler dışında, kullanıcılar mobil cihazlarını veya ev bilgisayarlarını kullanarak uygulamaya uzaktan erişebildiğinden hala biraz yük vardır. Üretim App Service planı, aşağıdaki kurallarla CPU kullanımına göre otomatik ölçeklendirme için zaten yapılandırılmıştır:

Specific settings for LOB app.

Otomatik ölçeklendirme profili – Hafta içi – App Service planı Otomatik ölçeklendirme profili – Hafta sonları – App Service planı
Ad: Hafta içi profili Ad: Hafta sonu profili
Ölçeklendirme ölçütü: Zamanlama ve performans kuralları Ölçeklendirme ölçütü: Zamanlama ve performans kuralları
Profil: Hafta içi Profil: Hafta Sonu
Tür: Yinelenme Tür: Yinelenme
Hedef aralık: 5 ila 20 örnek Hedef aralık: 3 ila 10 örnek
Günler: Pazartesi, Salı, Çarşamba, Perşembe, Cuma Günler: Cumartesi, Pazar
Başlangıç saati: 09:00 Başlangıç saati: 09:00
Saat dilimi: UTC-08 Saat dilimi: UTC-08
Otomatik ölçeklendirme kuralı (Ölçeği Artırma) Otomatik ölçeklendirme kuralı (Ölçeği Artırma)
Kaynak: Üretim (App Service Ortamı) Kaynak: Üretim (App Service Ortamı)
Ölçüm: CPU % Ölçüm: CPU %
İşlem: %60'tan büyük İşlem: %80'den büyük
Süre: 5 Dakika Süre: 10 Dakika
Zaman toplama: Ortalama Zaman toplama: Ortalama
Eylem: Sayıyı 2 artırma Eylem: Sayıyı 1 artır
Seyrek erişim (dakika): 15 Seyrek erişim (dakika): 20
Otomatik ölçeklendirme kuralı (Ölçeği Azalt) Otomatik ölçeklendirme kuralı (Ölçeği Azalt)
Kaynak: Üretim (App Service Ortamı) Kaynak: Üretim (App Service Ortamı)
Ölçüm: CPU % Ölçüm: CPU %
İşlem: %30'dan az İşlem: %20'den az
Süre: 10 dakika Süre: 15 dakika
Zaman toplama: Ortalama Zaman toplama: Ortalama
Eylem: Sayıyı 1 azaltma Eylem: Sayıyı 1 azaltma
Seyrek erişim (dakika): 20 Seyrek erişim (dakika): 10

App Service planı enflasyon oranı

Otomatik ölçeklendirme için yapılandırılan App Service planları bunu saatte en yüksek hızda yapar. Bu oran, otomatik ölçeklendirme kuralında sağlanan değerlere göre hesaplanabilir.

Çalışan havuzundaki ölçek değişiklikleri anlık olmadığından App Service planının enflasyon oranını anlamak ve hesaplamak App Service ortamı otomatik ölçeklendirmesi için önemlidir.

App Service planı enflasyon oranı aşağıdaki gibi hesaplanır:

App Service plan inflation rate calculation.

Üretim App Service planının Weekday profili için Otomatik Ölçeklendirme – Ölçeği Artır kuralına göre:

App Service plan inflation rate for weekdays based on Autoscale – Scale Up rule.

Üretim App Service planının Hafta Sonu profili için Otomatik Ölçeklendirme – Ölçeği Artır kuralı söz konusu olduğunda formül şu şekilde çözümlenir:

App Service plan inflation rate for weekends based on Autoscale – Scale Up rule.

Bu değer ölçeği azaltma işlemleri için de hesaplanabilir.

Üretim App Service planının Hafta içi profili için Otomatik Ölçeklendirme – Ölçeği Azalt kuralına bağlı olarak, bu aşağıdaki gibi görünür:

App Service plan inflation rate for weekdays based on Autoscale – Scale Down rule.

Üretim App Service planının Hafta Sonu profili için Otomatik Ölçeklendirme – Ölçeği Azalt kuralı söz konusu olduğunda formül şu şekilde çözümlenir:

App Service plan inflation rate for weekends based on Autoscale – Scale Down rule.

Üretim App Service planı, hafta içinde en fazla sekiz örnek/saat ve hafta sonu boyunca dört örnek/saat oranında büyüyebilir. Örnekleri hafta içinde en fazla dört örnek/saat, hafta sonları ise altı örnek/saat olarak yayınlayabilir.

Bir çalışan havuzunda birden çok App Service planı barındırılıyorsa, toplam enflasyon oranını bu çalışan havuzunda barındırılmakta olan tüm App Service planlarının enflasyon oranının toplamı olarak hesaplamanız gerekir.

Total inflation rate calculation for multiple App Service plans hosted in a worker pool.

Çalışan havuzu otomatik ölçeklendirme kurallarını tanımlamak için App Service planı enflasyon oranını kullanma

Otomatik ölçeklendirme için yapılandırılan App Service planlarını barındıran çalışan havuzlarının bir kapasite arabelleği ayrılması gerekir. Arabellek, otomatik ölçeklendirme işlemlerinin gerektiğinde App Service planını büyütmesine ve küçültmesine olanak tanır. Minimum arabellek, hesaplanan Toplam App Service Planı Enflasyon Oranı olacaktır.

App Service ortamı ölçeklendirme işlemlerinin uygulanması biraz zaman alacağından, herhangi bir değişiklik bir ölçeklendirme işlemi devam ederken gerçekleşebilecek daha fazla talep değişikliğini dikkate almalıdır. Bu gecikme süresini karşılamak için, her otomatik ölçeklendirme işlemi için eklenen minimum örnek sayısı olarak hesaplanan Toplam App Service Planı Enflasyon Oranı'nı kullanmanızı öneririz.

Bu bilgilerle Frank aşağıdaki otomatik ölçeklendirme profilini ve kurallarını tanımlayabilir:

Autoscale profile rules for LOB example.

Otomatik ölçeklendirme profili – Hafta içi Otomatik ölçeklendirme profili – Hafta sonları
Ad: Hafta içi profili Ad: Hafta sonu profili
Ölçeklendirme ölçütü: Zamanlama ve performans kuralları Ölçeklendirme ölçütü: Zamanlama ve performans kuralları
Profil: Hafta içi Profil: Hafta Sonu
Tür: Yinelenme Tür: Yinelenme
Hedef aralık: 13 ila 25 örnek Hedef aralık: 6 ila 15 örnek
Günler: Pazartesi, Salı, Çarşamba, Perşembe, Cuma Günler: Cumartesi, Pazar
Başlangıç saati: 07:00 Başlangıç saati: 09:00
Saat dilimi: UTC-08 Saat dilimi: UTC-08
Otomatik ölçeklendirme kuralı (Ölçeği Artırma) Otomatik ölçeklendirme kuralı (Ölçeği Artırma)
Kaynak: Çalışan havuzu 1 Kaynak: Çalışan havuzu 1
Ölçüm: WorkerAvailable Ölçüm: WorkerAvailable
İşlem: 8'den küçük İşlem: 3'ten küçük
Süre: 20 dakika Süre: 30 dakika
Zaman toplama: Ortalama Zaman toplama: Ortalama
Eylem: Sayıyı 8 artırma Eylem: Sayıyı 3 artır
Seyrek erişim (dakika): 180 Seyrek erişim (dakika): 180
Otomatik ölçeklendirme kuralı (Ölçeği Azalt) Otomatik ölçeklendirme kuralı (Ölçeği Azalt)
Kaynak: Çalışan havuzu 1 Kaynak: Çalışan havuzu 1
Ölçüm: WorkerAvailable Ölçüm: WorkerAvailable
İşlem: 8'den büyük İşlem: 3'ten büyük
Süre: 20 dakika Süre: 15 dakika
Zaman toplama: Ortalama Zaman toplama: Ortalama
Eylem: Sayıyı 2 azaltma Eylem: Sayıyı 3 azaltma
Bekleme süresi (dakika): 120 Bekleme süresi (dakika): 120

Profilde tanımlanan Hedef aralığı, App Service planı + arabellek için profilde tanımlanan minimum örnekler tarafından hesaplanır.

Maksimum aralık, çalışan havuzunda barındırılan tüm App Service planları için tüm maksimum aralıkların toplamı olacaktır.

Ölçeği artırma kurallarının Artış sayısı, ölçeği artırmak için App Service Planı Enflasyon Oranı'nın en az 1 katını ayarlamalıdır.

Azaltma sayısı, ölçeği azaltmak için App Service Planı Enflasyon Oranı'nın 1/2x veya 1 kat arasında bir değere ayarlanabilir.

Ön uç havuzu için otomatik ölçeklendirme

Ön uç otomatik ölçeklendirme kuralları çalışan havuzlarından daha basittir. Öncelikle,
ölçümün süresinin ve bekleme süresi zamanlayıcılarının App Service planındaki ölçeklendirme işlemlerinin anlık olmadığını göz önünde bulundurdığından emin olun.

Bu senaryo için Frank, ön uçlar %80 CPU kullanımına ulaştıktan sonra hata oranının arttığını bilir ve örnekleri artırmak için otomatik ölçeklendirme kuralını aşağıdaki gibi ayarlar:

Autoscale settings for front-end pool.

Otomatik ölçeklendirme profili – Ön uçlar
Ad: Otomatik Ölçeklendirme – Ön uçlar
Ölçeklendirme ölçütü: Zamanlama ve performans kuralları
Profil: Her gün
Tür: Yinelenme
Hedef aralık: 3 ila 10 örnek
Gün: Her gün
Başlangıç saati: 09:00
Saat dilimi: UTC-08
Otomatik ölçeklendirme kuralı (Ölçeği Artırma)
Kaynak: Ön uç havuzu
Ölçüm: CPU %
İşlem: %60'tan büyük
Süre: 20 dakika
Zaman toplama: Ortalama
Eylem: Sayıyı 3 artır
Bekleme süresi (dakika): 120
Otomatik ölçeklendirme kuralı (Ölçeği Azalt)
Kaynak: Çalışan havuzu 1
Ölçüm: CPU %
İşlem: %30'dan az
Süre: 20 Dakika
Zaman toplama: Ortalama
Eylem: Sayıyı 3 azaltma
Bekleme süresi (dakika): 120