Aracılığıyla paylaş


Azure Kubernetes Service'te (AKS) maliyet iyileştirme için en iyi yöntemler

Maliyet iyileştirmesi, bulut ortamınızdaki gereksiz harcamaları en aza indirirken kaynakların değerini en üst düzeye çıkarmaktır. Bu süreç, uygun maliyetli yapılandırma seçeneklerini belirlemeyi ve operasyonel verimliliği artırmak için en iyi yöntemleri uygulamayı içerir. AKS ortamı, performans ve güvenilirlik gereksinimlerini dikkate alarak maliyeti en aza indirmek için iyileştirilebilir.

Bu makalede şunları öğreneceksiniz:

  • Bütünsel izleme ve FinOps uygulamaları.
  • Stratejik altyapı seçimi.
  • Dinamik hak oluşturma ve otomatik ölçeklendirme.
  • Önemli tasarruflar için Azure indirimlerinden yararlanma.

Maliyet tasarrufu kültürü oluşturmak için FinOps'ı benimseme

Finansal operasyonlar (FinOps), finansal sorumluluğu bulut yönetimi ve iyileştirme ile birleştiren bir disiplindir. Bulut maliyetlerini anlamak ve denetlemek için finans, operasyon ve mühendislik ekipleri arasında hizalamayı yönlendirmeye odaklanır. FinOps temeli, FinOps Framework ve FOCUS Belirtimi gibi birçok önemli proje içerir.

Daha fazla bilgi için bkz. FinOps nedir?

Uygulama ortamını hazırlama

SKU ailesini değerlendirme

Dağıtımdan önce uygulamanızın kaynak gereksinimlerini değerlendirmek önemlidir. Küçük geliştirme iş yüklerinin büyük üretime hazır iş yüklerinden farklı altyapı gereksinimleri vardır. CPU, bellek ve ağ kapasitesi yapılandırmalarının birleşimi bir SKU'nun maliyet verimliliğini büyük ölçüde etkilese de aşağıdaki sanal makine (VM) türlerini göz önünde bulundurun:

SKU ailesi Açıklama Kullanım örneği
Azure Spot Sanal Makineleri Azure Spot Sanal makine ölçek, Spot düğüm havuzlarını geri ayarlar ve yüksek kullanılabilirlik veya hizmet düzeyi sözleşmesi (SLA) garantisi olmadan tek bir hata etki alanına dağıtılır. Spot VM'ler, önemli indirimlerle (kullandıkça öde fiyatlarına kıyasla en fazla 90%) unutilized Azure kapasitesinden yararlanmanızı sağlar. Azure'ın kapasiteye geri ihtiyacı varsa, Azure altyapısı Spot düğümlerini çıkartır. Geliştirme/test ortamları, toplu işleme işleri gibi kesintileri işleyebilen iş yükleri ve esnek yürütme süresine sahip iş yükleri için idealdir.
Arm tabanlı işlemciler (Arm64) Arm64 VM'leri güç açısından verimli ve uygun maliyetlidir ancak performans açısından ödün vermez. AKS'de Arm64 düğüm havuzu desteğiyle Arm64 Ubuntu aracı düğümleri oluşturabilir ve hatta küme içindeki Intel ve ARM mimari düğümlerini karıştırabilirsiniz. Bu ARM VM'leri dinamik, ölçeklenebilir iş yüklerini verimli bir şekilde çalıştıracak şekilde tasarlanmıştır ve ölçek genişletme iş yükleri için karşılaştırılabilir x86 tabanlı VM'lere göre 50% daha iyi fiyat performansı sunabilir. Web veya uygulama sunucuları, açık kaynak veritabanları, bulutta yerel uygulamalar, oyun sunucuları ve daha fazlası için idealdir.
GPU için iyileştirilmiş SKU'lar İş yükünüzün yapısına bağlı olarak işlem için iyileştirilmiş, bellek için iyileştirilmiş, depolama için iyileştirilmiş ve hatta grafik işleme birimi (GPU) için iyileştirilmiş VM SKU'larını kullanmayı göz önünde bulundurun. GPU VM boyutları tek, çoklu ve kesirli GPU'larla kullanılabilen özel VM'lerdir. AKS'deki GPU özellikli Linux düğüm havuzları , grafik işleme, büyük model eğitimi ve çıkarım gibi yoğun işlem gerektiren iş yükleri için en iyisidir.

Uyarı

İşlem maliyeti bölgeler arasında farklılık gösterir. İş yüklerini çalıştırmak için daha düşük maliyetli bir bölge seçerken gecikme süresinin yanı sıra veri aktarımı maliyetlerinin olası etkisinin farkında olun. VM SKU'ları ve özellikleri hakkında daha fazla bilgi edinmek için bkz. Azure'da sanal makineler için boyutlar.

Depolama seçeneklerini gözden geçirme

Depolama seçenekleri ve ilgili maliyet konuları hakkında daha fazla bilgi için aşağıdaki makalelere bakın:

Küme önceden ayarlanmış yapılandırmalarını kullanma

Doğru VM SKU'sunu, bölgeleri, düğüm sayısını ve diğer yapılandırma seçeneklerini seçmek zor olabilir. Azure portalındaki önceden ayarlanmış yapılandırmalar, maliyet bilincine sahip ve yüksek performanslı farklı uygulama ortamları için önerilen yapılandırmalar sağlayarak bu başlangıçtaki zorluğu hafifletir. Geliştirme/Test ön ayarı, yeni iş yükleri geliştirmek veya mevcut iş yüklerini test etme için en iyisidir. İş yükleriniz kesintilere dayanabiliyorsa Üretim Ekonomisi ön ayarı, üretim trafiğine maliyet açısından bilinçli bir şekilde hizmet etmek için en iyisidir. Kritik olmayan özellikler varsayılan olarak kapalıdır ve önceden ayarlanmış değerler istediğiniz zaman değiştirilebilir.

Çoklu kiracı modelini göz önünde bulundurun

AKS, çok kiracılı kümeleri çalıştırma ve kaynakları yalıtma konusunda esneklik sunar. Dostane çoklu kiracılık için, mantıksal yalıtım aracılığıyla kümeleri ve altyapıyı ekipler ve iş birimleri arasında paylaşabilirsiniz. Kubernetes Ad Alanları, iş yükleri ve kaynaklar için mantıksal yalıtım sınırını oluşturur. Altyapı paylaşımı, küme yönetimi ek yükünü azaltırken küme içindeki kaynak kullanımını ve pod yoğunluğunun da iyileştirilmesini sağlar. AKS'de çok kiracılılık hakkında daha fazla bilgi edinmek ve bunun kurumsal gereksinimlerinize uygun olup olmadığını belirlemek için bkz. Çok kiracılılık için AKS konuları ve Çok kiracılılık için kümeleri tasarlama.

Uyarı

Kubernetes ortamları zararlı çok kiracılı ortamlara karşı tamamen güvenli değildir. Paylaşılan altyapıdaki herhangi bir kiracıya güvenilemiyorsa, kiracıların diğer hizmetlerin güvenliğini etkilemesini önlemek için daha fazla planlama gerekir.

Fiziksel yalıtım sınırlarını göz önünde bulundurun. Bu modelde ekipler veya iş yükleri kendi kümelerine atanır. Eklenen yönetim ve finansal ek yük, bir dezavantaj olacaktır.

Buluta özel uygulamalar oluşturma

Konteynerinizi mümkün olduğunca yalın hale yapın.

Yalın kapsayıcı, kapsayıcılı uygulamanın boyutunu ve kaynak ayak izini iyileştirmeyi ifade eder. Temel görüntünüzün minimal olduğundan ve yalnızca gerekli bağımlılıkları içerdiğinden emin olun. Gereksiz kitaplıkları ve paketleri kaldırın. Daha küçük bir kapsayıcı görüntüsü dağıtım sürelerini hızlandırır ve ölçeklendirme işlemlerinin verimliliğini artırır. AKS'de Öge Akışı Azure Container Registry'den (ACR) kapsayıcı görüntülerini aktarmanıza olanak tanır. Yalnızca ilk pod başlatma için gerekli katmanı çeker ve dakikalardan saniyelere kadar daha büyük görüntüler için çekme süresini azaltır.

Kaynak kotalarını zorunlu kılma

Kaynak kotaları , geliştirme ekibi veya proje genelinde kaynakları ayırmak ve sınırlamak için bir yol sağlar. Kotalar bir ad alanında tanımlanır ve işlem kaynakları, depolama kaynakları ve nesne sayılarında ayarlanabilir. Kaynak kotaları tanımladığınızda, tek tek ad alanlarının ayrılandan daha fazla kaynak tüketmesini engeller. Kaynak kotaları, ekiplerin altyapıyı paylaştığı çok kiracılı kümeler için kullanışlıdır.

Küme başlat/durdur işlevini kullan

Denetimsiz bırakıldıklarında, küçük geliştirme/test kümeleri gereksiz maliyetler biriktirebilir. Küme başlatma ve durdurma özelliğini kullanarak her zaman çalıştırılması gerekmeyen kümeleri kapatabilirsiniz. Bu özellik tüm sistem ve kullanıcı düğümü havuzlarını kapatarak fazladan işlem için ödeme yapmanıza neden olmaz. Kümenizi ve nesnelerinizin durumu, kümeyi yeniden başlattığınızda korunur.

Kapasite rezervasyonlarını kullanma

Kapasite rezervasyonları, herhangi bir süre boyunca bir Azure bölgesinde veya kullanılabilirlik alanında işlem kapasitesi ayırmanıza olanak tanır. Ayrılmış kapasite, rezervasyon silinene kadar hemen kullanılabilir. Mevcut kapasite rezervasyon grubunu bir düğüm havuzuyla ilişkilendirmek, düğüm havuzunuz için ayrılmış kapasiteyi garanti eder ve yüksek işlem talebi dönemlerinde olası isteğe bağlı fiyatlandırma artışlarını önlemenize yardımcı olur.

Ortamınızı izleyin ve harcamalarınızı kontrol edin.

Microsoft Maliyet Yönetimi ile görünürlüğü artırma

Microsoft Maliyet Yönetimi , kümenin hem içindeki hem de dışındaki maliyetler için bulut bütçeleme, tahmin ve görünürlük konusunda yardımcı olacak geniş bir özellik kümesi sunar. Harcama eğilimlerini çözmek, iyileştirme fırsatlarını belirlemek ve uygulama geliştiricileri ile platform ekipleri arasında sorumluluğu artırmak için uygun görünürlük gereklidir. Azure İşlem, Ağ ve Depolama kategorilerinin yanı sıra Kubernetes yapılarının ayrıntılı küme maliyet dökümü için AKS Maliyet Analizi eklentisini etkinleştirin.

Azure Monitör

Ölçüm verilerini Kapsayıcı içgörüleri aracılığıyla alıyorsanız, maliyette önemli bir düşüş sunan yönetilen Prometheus'a geçmenizi öneririz. Veri toplama kuralını (DCR) kullanarak Kapsayıcı içgörüleri ölçümlerini devre dışı bırakabilir ve Azure Resource Manager, Azure CLI, Azure portalı ve Terraform aracılığıyla yapılandırmayı destekleyen yönetilen Prometheus eklentisini dağıtabilirsiniz.

Daha fazla bilgi için bkz. Azure Monitor en iyi uygulamaları ve Kapsayıcı içgörüler için maliyet yönetimi.

Log Analitiği

Denetim düzlemi günlükleri için ihtiyacınız olmayan kategorileri devre dışı bırakmayı ve/veya Log Analytics maliyetlerini azaltmak için uygun olduğunda Temel Günlükler API'sini kullanmayı göz önünde bulundurun. Daha fazla bilgi için bkz. Azure Kubernetes Service (AKS) denetim düzlemi/kaynak günlükleri. Veri düzlemi günlükleri veya uygulama günlükleri için maliyet iyileştirme ayarlarını yapmayı göz önünde bulundurun.

Denetim düzlemi ve veri düzlemi günlüklerini Log Analytics çalışma alanına gönderilmeden önce filtrelemek veya değiştirmek için Azure İzleyici'deki Dönüştürmeleri de kullanabilirsiniz. Dönüştürme oluşturma hakkında daha fazla bilgi için bkz. Azure İzleyici'de dönüştürme oluşturma.

Azure Danışmanı maliyet önerileri

Azure Danışmanı'ndaki AKS maliyet önerileri, güvenilirlikten ödün vermeden maliyet verimliliği elde etmeye yardımcı olacak öneriler sağlar. Danışman, kaynak yapılandırmalarınızı analiz eder ve iyileştirme çözümleri önerir. Daha fazla bilgi için bkz. Azure Danışmanı'nda Azure Kubernetes Service (AKS) maliyet önerilerini alma.

Otomatik ölçeklendirme ile iş yüklerini iyileştirme

Temel oluşturma

Otomatik ölçeklendirme ayarlarınızı yapılandırmadan önce Azure Yük Testi'ni kullanarak uygulamanız için bir temel oluşturabilirsiniz. Yük testi, uygulamanızın farklı trafik koşullarında nasıl davrandığını anlamanıza ve performans sorunlarını belirlemenize yardımcı olur. Temeli aldıktan sonra, uygulamanızın beklenen yükü işleyebilmesini sağlamak için otomatik ölçeklendirme ayarlarını yapılandırabilirsiniz.

Uygulama otomatik ölçeklendirmesini etkinleştirme

Dikey pod otomatik ölçeklendirme

Gerçek kullanımdan daha yüksek istekler ve sınırlar, fazla sağlanan iş yüklerine ve kaynakların boşa harcanmasıyla sonuçlanabilir. Buna karşılık, aşırı düşük istek ve sınırlar, bellek yetersizliği nedeniyle kısıtlama ve iş yükü sorunlarına yol açabilir. Dikey Pod Otomatik Ölçeklendiricisi (VPA), podlarınız için gereken CPU ve bellek kaynaklarına ince ayar yapmanızı sağlar. VPA, el ile ayarlayabileceğiniz veya otomatik olarak güncelleştirebileceğiniz geçmiş kapsayıcı kullanımına göre CPU ve bellek istekleri ve sınırları için önerilen değerler sağlar. Dalgalı kaynak talepleri olan uygulamalar için en iyi yöntemdir. VPA'nın sadece öneri alınabilen kapalı modu, ekiplerin kaynak önerilerini otomatik olarak zorlamadan gözden geçirmesine olanak tanır. Bu mod test sırasında etkinleştirilebilir ve ÜRETIM ortamları için CPU ve bellek isteğini ve sınırlarını ayarlamak için VPA önerileri kullanılabilir.

Yatay pod otomatik ölçeklendirme

Yatay Pod Otomatik Ölçeklendiricisi (HPA), CPU veya bellek kullanımı gibi gözlemlenen ölçümlere göre pod çoğaltmalarının sayısını dinamik olarak ölçeklendirir. Talebin yüksek olduğu dönemlerde, HPA ölçeklendirme yaparak iş yükünü dağıtmak için daha fazla pod kopyası ekler. Talebin düşük olduğu dönemlerde HPA ölçeği daraltarak kaynaklardan tasarruf etmek için çoğaltma sayısını azaltır. Tahmin edilebilir kaynak talepleri olan uygulamalar için en iyi yöntemdir.

Uyarı

VPA'yi HPA ile aynı CPU veya bellek ölçümlerinde kullanmamalısınız. Her iki otomatik ölçekleyici de aynı ölçümleri kullanarak talepteki değişikliklere yanıt vermeye çalıştığından bu birleşim çakışmalara yol açabilir. Ancak, çakışmayı önlemek ve her otomatik ölçeklendiricinin iş yükü ölçeklendirmesinin farklı yönlerine odaklanmasını sağlamak için özel ölçümler için HPA ile CPU veya bellek için VPA kullanabilirsiniz.

Kubernetes olay temelli otomatik ölçeklendirme

Kubernetes Event-driven Autoscaler (KEDA) eklentisi, uygulama davranışınızla uyumlu çeşitli olay temelli ölçümlere göre ölçeklendirmek için ek esneklik sağlar. Örneğin, bir web uygulaması için KEDA gelen HTTP isteği trafiğini izleyebilir ve uygulamanın yanıt vermeye devam etmesini sağlamak için pod çoğaltmalarının sayısını ayarlayabilir. İşleri işlemek için KEDA, uygulamayı ileti kuyruğu uzunluğuna göre ölçeklendirebilir. Tüm Azure Ölçeklendiricileri için yönetilen destek sağlanır. KEDA ayrıca ölçeği 0 kopyaya düşürmenize de olanak tanır; bu özellikle dağınık olay odaklı iş yükleri, dönemsel makine öğrenmesi (ML) veya GPU iş yükleri ve geliştirme/test veya düşük trafik ortamları için yararlıdır.

Altyapı otomatik ölçeklendirmesini etkinleştirme

Küme otomatik ölçeklendirme

Küme Otomatik Ölçeklendiricisi, uygulama talebine ayak uydurmak için kaynak kısıtlamaları nedeniyle zamanlamayan podları izler ve düğüm havuzundaki düğüm sayısını buna göre ölçeklendirir. Düğümlerde çalışan podlar olmadığında, Küme Otomatik Ölçeklendiricisi düğüm sayısını küçültür. Küme Otomatik Ölçeklendiricisi profil ayarları, bir kümedeki tüm otomatik ölçeklendirici etkin düğüm havuzlarına uygulanır. Daha fazla bilgi için bkz. Küme Otomatik Ölçeklendiricisi en iyi yöntemleri ve dikkat edilmesi gerekenler.

Düğüm otomatik kaynak sağlama

Karmaşık iş yükleri, CPU ve bellek gereksinimlerini karşılamak için farklı VM boyutu yapılandırmalarına sahip birkaç düğüm havuzu gerektirebilir. Birkaç düğüm havuzu yapılandırmasını doğru bir şekilde seçmek ve yönetmek karmaşıklık ve işlem yükü ekler. Düğüm Otomatik Sağlama (NAP), SKU seçim işlemini basitleştirir ve iş yüklerini en verimli ve uygun maliyetli şekilde çalıştırmak için bekleyen pod kaynağı gereksinimlerine göre en uygun VM yapılandırmasını belirler.

Azure indirimleriyle tasarruf edin

Azure Rezervasyonları

İş yükünüz tahmin edilebilirse ve uzun bir süre için mevcutsa, kaynak maliyetlerinizi daha da azaltmak için Azure Rezervasyonu satın almayı göz önünde bulundurun. Azure Rezervasyonları, işlem için kullandıkça öde fiyatlarına kıyasla en fazla 72% indirim sunan bir veya üç yıllık bir dönemde çalışır. Rezervasyonlar eşleşen kaynaklara otomatik olarak uygulanır. Uzun bir süre boyunca aynı SKU'larda ve bölgelerde çalışmaya kararlı iş yükleri için en iyi yöntemdir.

Azure Tasarruf Planı

Tutarlı harcamanız varsa, ancak SKU'lar ve bölgeler arasındaki farklı kaynak kullanımı Azure Rezervasyonları'nı uygulanamaz hale getiriyorsa, bir Azure Tasarruf Planı satın almayı göz önünde bulundurun. Azure Rezervasyonları gibi Azure Tasarruf Planları da bir yıllık veya üç yıllık bir dönemde çalışır ve avantaj kapsamındaki tüm kaynaklara otomatik olarak uygulanır. SKU veya bölgeden bağımsız olarak işlem kaynaklarına sabit saatlik bir miktar harcamayı taahhüt edersiniz. Farklı kaynaklar ve/veya farklı veri merkezi bölgeleri kullanan iş yükleri için idealdir.

Azure Hibrit Avantajı

Azure Kubernetes Service (AKS) için Azure Hibrit Avantajı , şirket içi lisanslarınızı ek ücret ödemeden en üst düzeye çıkarmanızı sağlar. Azure'da Windows VM'lerini daha düşük bir maliyetle almak için etkin bir Yazılım Güvencesi (SA) veya uygun aboneliğe sahip uygun şirket içi lisansları kullanın.

Sonraki Adımlar

Maliyet iyileştirme, sürekli ve yinelemeli bir çabadır. Aşağıdaki önerileri ve mimari kılavuzunu gözden geçirerek daha fazla bilgi edinin: