0Pricing
Azure Fundamentals · Ders

Doğru Boyutlandırma ve Otomatik Ölçeklendirme

VM performans verilerini analiz ederek örnekleri doğru boyutlandırın, öngörülebilir iş yükleri için zamanlanmış otomatik ölçeklendirmeyi uygulayın ve toplu iş yükleri için VMSS spot örneklerini kullanın.

Doğru Boyutlandırma ve Otomatik Ölçeklendirme, CoddyKit'te ücretsiz bir Azure Fundamentals dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Azure Fundamentals öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Azure Fundamentals kursu toplamda 4 dersten oluşur.

Uygun Boyutlandırma Nedir?

Uygun boyutlandırma, Azure VM veya hizmet SKU'larını iş yükünüzün gerçek kaynak gereksinimleriyle eşleştirme sürecidir; amaç ne gereğinden fazla kaynak ayırarak para harcamak ne de yetersiz kaynak ayırarak performans düşüşü riski oluşturmaktır. Kuruluşların çoğu, şirket içi ortamdan geçiş yaparken temkinli davranıp başlangıçta %30–50 oranında fazla kaynak ayırır. Genellikle aylık yapılan düzenli uygun boyutlandırma analizleri, uygulama performansını etkilemeden bu fazla harcamanın önemli bir bölümünü geri kazandırabilir.

VM Performans Verilerini Analiz Etme

En az 30 günlük CPU, bellek, disk IOPS ve ağ aktarım hızı verilerini toplamak için Azure Monitor metrics ve VM Insights kullanın. Uygun boyutlandırılmış VM'nin trafik artışlarını karşılayabilmesi için ortalama yerine tepe (P95 veya P99) kullanım değerine bakın. Azure Advisor'ın uygun boyutlandırma önerisi varsayılan olarak 7 günlük geçmişi kullanır; ancak daha temsilî veriler elde etmek için Advisor configuration üzerinden bu süreyi 30 veya 60 güne çıkarabilirsiniz.

# Get P95 CPU utilisation for a VM over 30 days
az monitor metrics list \
  --resource /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Compute/virtualMachines/myVM \
  --metric 'Percentage CPU' \
  --aggregation Percentile \
  --interval P1D \
  --start-time 2024-05-01T00:00:00Z \
  --end-time 2024-06-01T00:00:00Z

VM SKU Aileleri ve Yeniden Boyutlandırma

Azure VM'leri, farklı iş yükleri için optimize edilmiş SKU aileleri hâlinde düzenlenir: D-series (genel amaçlı), E-series (bellek için optimize edilmiş), F-series (işlem için optimize edilmiş), N-series (GPU) ve L-series (depolama için optimize edilmiş). Bir VM'nin CPU kullanımı düşük, ancak bellek kullanımı yüksekse aynı vCPU sayısında D-series'ten E-series'e geçmek benzer maliyetle daha fazla RAM sağlar. Azure'da bir VM'yi yeniden boyutlandırmak genellikle birkaç dakikalık kısa bir yeniden başlatma gerektirir.

# Resize a VM to a smaller SKU
az vm resize \
  --resource-group myRG \
  --name myVM \
  --size Standard_D2s_v5

Öngörülebilir İş Yükleri için Zamanlanmış Otomatik Ölçeklendirme

Zamanlanmış otomatik ölçeklendirme, iş yükü modelleri öngörülebilir olduğunda doğru seçimdir. Mesai saatlerinde yoğun, gece ise neredeyse sıfır trafik alan bir perakende uygulaması, 07.00'de ölçeği artırma ve 22.00'de ölçeği azaltma zamanlamasıyla yapılandırılabilir. Virtual Machine Scale Sets (VMSS) ve App Service, zamanlanmış otomatik ölçeklendirme kurallarını destekler. Bilinen yük modellerinde bu yaklaşım, ölçüm tabanlı otomatik ölçeklendirmeye göre daha basit ve maliyeti daha öngörülebilirdir.

# Add a scheduled autoscale rule to a VMSS (scale out at 07:00, in at 22:00 UTC)
az monitor autoscale create \
  --resource-group myRG \
  --resource myVMSS \
  --resource-type Microsoft.Compute/virtualMachineScaleSets \
  --name myAutoscale \
  --min-count 2 --max-count 10 --count 2

Ölçüm Tabanlı Otomatik Ölçeklendirme

Ölçüm tabanlı otomatik ölçeklendirme, CPU yüzdesi, HTTP istek kuyruğu uzunluğu veya Azure Monitor aracılığıyla yayımlanan özel ölçümler gibi gerçek zamanlı ölçümlere yanıt olarak örnekleri dinamik biçimde ekler ya da kaldırır. Hızlı ve sürekli ölçek değişikliklerini önlemek için bekleme süreleriyle birlikte ölçeği artırma kurallarını (örneklerin ne zaman ekleneceği) ve ölçeği azaltma kurallarını (örneklerin ne zaman kaldırılacağı) tanımlarsınız. En iyi uygulama, ölçeği artırma eşiğini ölçeği azaltma eşiğinden düşük belirlemektir; örneğin %70'in üzerindeki CPU kullanımında ölçeği artırın, %30'un altındaki CPU kullanımında ölçeği azaltın ve 5 dakikalık bir bekleme süresi kullanın.

# Add a metric-based scale-out rule (CPU > 70% for 5 minutes)
az monitor autoscale rule create \
  --autoscale-name myAutoscale \
  --resource-group myRG \
  --scale out 1 \
  --condition 'Percentage CPU > 70 avg 5m'

Toplu İş Yükleri için VMSS Spot Örnekleri

Azure Spot VM'leri, kullandıkça öde fiyatlarına kıyasla %90'a varan indirimlerle kullanılmayan Azure kapasitesinden yararlanmanıza olanak tanır. Bunun karşılığında Azure, kapasiteye yeniden ihtiyaç duyduğunda spot VM'leri 30 saniye önceden bildirimde bulunarak tahliye edebilir. Bu nedenle spot örnekleri; işleme, bilimsel hesaplama ve veri işleme işlem hatları gibi kesintiye uğrayabilen toplu iş yükleri için idealdir. VMSS, bir öncelik karması ilkesi kullanarak aynı ölçek kümesinde normal VM'leri (temel kapasite için) spot VM'lerle (ani kapasite artışı için) birlikte kullanmayı destekler.

# Create a VMSS with spot instances for batch workloads
az vmss create \
  --resource-group myRG \
  --name myBatchVMSS \
  --image UbuntuLTS \
  --priority Spot \
  --eviction-policy Deallocate \
  --max-price -1 \
  --instance-count 5

App Service Otomatik Ölçeklendirme

Azure App Service otomatik ölçeklendirmesi, yapılandırdığınız kurallara göre çalışan örnekleri ekleyip kaldırarak App Service Plan düzeyinde çalışır. Kullanılabilen ölçüm tetikleyicileri arasında HTTP kuyruğu uzunluğu, CPU yüzdesi ve bellek yüzdesi bulunur. Standard katmanı ve üzeri, el ile ölçeklendirmeyi ve otomatik ölçeklendirmeyi destekler; Basic katmanı yalnızca el ile ölçeklendirmeyi destekler. Sunucusuz iş yükleri için, sıfıra kadar ölçeklenen ve yalnızca yürütme başına ücret alan Consumption Plan üzerinde Azure Functions kullanmayı değerlendirin; böylece boşta kalan örnek maliyeti tamamen ortadan kalkar.

# Enable autoscale on an App Service plan
az monitor autoscale create \
  --resource-group myRG \
  --resource myAppServicePlan \
  --resource-type Microsoft.Web/serverfarms \
  --name webAppAutoscale \
  --min-count 1 --max-count 5 --count 1

Kaçınılması Gereken Otomatik Ölçeklendirme Tuzakları

Yaygın otomatik ölçeklendirme tuzakları şunlardır: oturum benzeşimi — uygulamanız oturum durumunu VM belleğinde depoluyorsa, içeri doğru ölçeklendirme oturumları kaybettirir; bunun yerine Redis Cache veya veritabanı destekli oturumlar kullanın. Yavaş başlatma süreleri — VM'lerin veya kapsayıcıların hazır duruma gelmesi 10 dakika sürüyorsa, ölçüm tabanlı otomatik ölçeklendirme yeterince hızlı yanıt veremez; öngörülen yoğunluklardan önce zamanlanmış dışa doğru ölçeklendirmeyle önceden hazır duruma getirin. İçeri doğru ölçeklendirmenin fazla agresif olması — devam eden istekler işlenirken örneklerin sonlandırılması hatalara neden olur; bağlantıların güvenli biçimde kapatılmasını ve cömert bir soğuma süresi yapılandırın.

Veritabanı ve PaaS için Doğru Boyutlandırma

Doğru boyutlandırma PaaS hizmetleri için de geçerlidir. DTU modeli kullanan Azure SQL Database, DTU yüzdesi sürekli olarak %50'nin altındaysa daha düşük bir boyuta geçirilebilir. vCore modeli, CPU ve depolamanın bağımsız olarak ölçeklendirilmesine olanak tanır. Kalıcılık ve coğrafi çoğaltma gerekmiyorsa Azure Cache for Redis, Premium katmanından Standard katmanına geçirilebilir. Azure Kubernetes Service düğüm havuzları, düğümleri pod'ların beklemede ve boşta olma durumlarına göre içeri ve dışarı doğru ölçeklendirmek için Cluster Autoscaler kullanabilir.

# Change Azure SQL Database service objective (tier)
az sql db update \
  --resource-group myRG \
  --server mySQLServer \
  --name myDatabase \
  --service-objective S2

Sürekli Doğru Boyutlandırma Uygulaması

Doğru boyutlandırma tek seferlik bir etkinlik değildir. İş yükleri zaman içinde değişir; trafik düzenleri değişir, özellikler eklenir ve kullanıcı tabanları büyür veya küçülür. FinOps sürecinize bir aylık doğru boyutlandırma incelemesi ekleyin: Advisor önerilerini alın, en az kullanılan ilk 10 VM'yi ve gereğinden fazla kaynak sağlanan PaaS hizmetlerini inceleyin ve bunlardan sorumlu ekiplere iş öğeleri oluşturun. Liderliğe FinOps ROI'sini göstermek için gerçekleşen tasarrufları oluşturulan önerilere kıyasla izleyin.

Doğru Boyutlandırmayı Rezervasyonlarla Birleştirme

En uygun maliyet stratejisi önce doğru boyutlandırmak, ardından rezerve etmektir. Gereğinden fazla kaynak sağlanmış bir VM için Reserved VM Instance satın almak, yanlış SKU'ya bağlı kalmanıza neden olur. Önce VM'yi doğru boyutuna getirin, kararlılığı doğrulamak için yeni kullanım oranını 30 gün gözlemleyin, ardından doğru boyutlandırılmış bu SKU için rezervasyon satın alın. Bu iki aşamalı yaklaşım, kullanılmayan rezerve kapasiteden kaçınırken indirimi en üst düzeye çıkarır.

Kısa Kontrol

Bu dersteki Microsoft Azure Fundamentals (AZ-900) kavramlarını anlayıp anlamadığınızı sınayın.

Ders Özeti

Bu derste şunları öğrendiniz: doğru boyutlandırma, performans ölçümlerini kullanarak VM SKU'larını gerçek iş yükü gereksinimleriyle eşleştirir; zamanlanmış ve ölçüm tabanlı otomatik ölçeklendirme, kapasiteyi talebe uyacak şekilde dinamik olarak ayarlar; Spot VM'ler, kesintiye uğrayabilen toplu iş yükleri için %90'a varan indirimler sunar. Sırada, taahhütlü iş yükleri için Azure Savings Plans ve Reservations konusunu inceleyeceğiz.

Sıkça Sorulan Sorular

“Doğru Boyutlandırma ve Otomatik Ölçeklendirme” dersi ücretsiz mi?

Evet — “Doğru Boyutlandırma ve Otomatik Ölçeklendirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Azure Fundamentals kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Azure Fundamentals kursu toplamda 4 dersten oluşur.

“Doğru Boyutlandırma ve Otomatik Ölçeklendirme” dersinde ne öğreneceğim?

VM performans verilerini analiz ederek örnekleri doğru boyutlandırın, öngörülebilir iş yükleri için zamanlanmış otomatik ölçeklendirmeyi uygulayın ve toplu iş yükleri için VMSS spot örneklerini kulla… Azure Fundamentals ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Azure Fundamentals öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Azure Fundamentals, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Doğru Boyutlandırma ve Otomatik Ölçeklendirme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Azure Fundamentals dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Azure Fundamentals dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. İsrafı Belirleme ve Ortadan Kaldırma
  2. Doğru Boyutlandırma ve Otomatik Ölçeklendirme
  3. Azure Tasarruf Planları ve Rezervasyonlar
  4. FinOps ve Geri Ödeme Modelleri
← Azure Fundamentals Sayfasına Dön