Share via


Azure Kubernetes Service'te (AKS) maliyetleri iyileştirme

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:

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

Uygulama ortamını hazırlama

SKU ailesini değerlendirme

Dağıtım öncesinde 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 VM türlerini göz önünde bulundurun:

  • Azure Spot Sanal Makineler - Spot düğüm havuzları, Azure Spot Sanal makine ölçek kümeleri tarafından desteklenir ve yüksek kullanılabilirlik veya 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 %90'a kadar) 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.
  • Ampere Altra 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 AMR64 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'ye kadar 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şlem 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.

Not

İş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.

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 küme önceden ayarlanmış yapılandırmaları , maliyet bilincine sahip ve yüksek performanslı farklı uygulama ortamları için önerilen yapılandırmalar sağlayarak bu ilk sınamayı boşaltır. 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.

Çok kiracılılığı göz önünde bulundurun

AKS, çok kiracılı kümeleri çalıştırma ve kaynakları yalıtma konusunda esneklik sunar. Kolay çoklu kiracı için kümeler ve altyapı, mantıksal yalıtım aracılığıyla ekipler ve iş birimleri arasında paylaşılabilir. 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ı düşman çok kiracılılığı için 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 ek 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.

Bulutta yerel uygulamalar oluşturma

Kapsayıcınızı mümkün olduğunca yalın hale getirme

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 çok az olduğundan ve yalnızca gerekli bağımlılıkları içerdiğinden denetleyin. 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şlemi verimliliğini artırır. Bir adım daha ileri giderek AKS'de Yapıt Akışı, Azure Container Registry'den (ACR) kapsayıcı görüntülerini akışla 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üketmesi engellenir. Bu, ekiplerin altyapıyı paylaştığı çok kiracılı kümeler için özellikle önemlidir.

Küme başlangıç durağını kullanma

Küçük geliştirme ve test kümeleri, katılımsız bırakıldığında büyük miktarda gereksiz harcama gerçekleştirebilir. Küme başlatma ve durdurma özelliğini kullanarak her zaman çalıştırılması gerekmeyen kümeleri kapatın. Bunu yaptığınızda tüm sistem ve kullanıcı düğümü havuzları kapatılır, böylece fazladan işlem için ödeme yapmanız gerekmez. Kümeyi yeniden başlattığınızda tüm nesneler ve küme durumu korunur.

Kapasite rezervasyonlarını kullanma

Kapasite rezervasyonları, bir Azure bölgesinde veya Kullanılabilirlik Alanı'nda herhangi bir süre için 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ı izleme ve harcama

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 ve platform ekipleri arasında sorumluluk düzeyini artırmak için uygun görünürlük gereklidir. Azure İşlem, Ağ ve Depolama kategorileri ile birlikte Kubernetes yapılarının ayrıntılı küme maliyet dökümü için AKS Maliyet Analizi eklentisini etkinleştirin.

Azure İzleyici

Kapsayıcı içgörüleri aracılığıyla ölçüm verilerini alırsanız, maliyette önemli bir düşüş sağlayan yönetilen Prometheus ölçümlerine geçiş yapmanızı ö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.

Günlük alımını kullanıyorsanız Log Analytics maliyetlerini azaltmak için Temel Günlükler API'sini kullanmanızı da öneririz. Daha fazla bilgi edinmek için bkz . Azure İzleyici en iyi yöntemleri ve Kapsayıcı içgörüleri için maliyetleri yönetme.

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

Uygulama Otomatik Ölçeklendirmesini Etkinleştirme

Dikey Pod Otomatik Ölçeklendirme

Gerçek kullanımdan önemli ölçüde daha yüksek istekler ve sınırlar, fazla sağlanan iş yüklerine ve kaynakların boşa harcanmalarına neden olabilir. Buna karşılık, çok düşük istekler ve sınırlar bellek yetersizliğinden dolayı azaltma ve iş yükü sorunlarına neden olabilir. 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.

Yatay Pod Otomatik Ölçeklendirme

Yatay Pod Otomatik Ölçeklendiricisi (HPA), CPU veya bellek kullanımı gibi gözlemlenen ölçüme göre pod çoğaltmalarının sayısını dinamik olarak ölçeklendirir. Talebin yüksek olduğu dönemlerde HPA ölçeği genişleterek iş yükünü dağıtmak için daha fazla pod çoğaltması 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'nın HPA ile aynı CPU veya bellek ölçümlerinde birlikte kullanılmaması gerekir. 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. Bununla birlikte, ç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 birlikte CPU veya bellek için VPA'yı kullanabilirsiniz.

Kubernetes Olay Odaklı 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.

Altyapı Otomatik Ölçeklendirmeyi 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ı azaltacaktır. Küme Otomatik Ölçeklendiricisi profil ayarlarının kümedeki tüm otomatik ölçeklendirici etkin düğüm havuzlarına uygulandığını unutmayın. Daha fazla bilgi edinmek için bkz . Küme Otomatik Ölçeklendiricisi en iyi yöntemleri ve dikkat edilmesi gerekenler.

Düğüm Otomatik 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 bekleyen pod kaynak gereksinimlerine göre iş yüklerini en verimli ve uygun maliyetli şekilde çalıştırmak için en uygun VM yapılandırmasına karar verir.

Not

Ek ölçeklendirme en iyi yöntemleri için Azure Kubernetes Service'te (AKS) küçük ve orta ölçekli iş yükleri için Performans ve ölçeklendirme ile Azure Kubernetes Service'teki (AKS) büyük iş yükleri için en iyi performans ve ölçeklendirme yöntemlerine bakın.

Azure indirimleriyle kaydetme

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ı bir yıllık veya üç yıllık bir dönemde çalışır ve işlem için kullandıkça öde fiyatlarına kıyasla %72'ye kadar indirim sunar. 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ında farklı kaynaklar kullanmanız Azure Rezervasyonlarını uygulanabilir hale getiriyorsa 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ölgelerini 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.

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 vakfı birçok önemli proje yayınladı:

  • FinOps Framework - FinOps'un nasıl uygulanıp uygulanamaya yönelik bir işletim modelidir.
  • FOCUS Belirtimi : Tüm büyük bulut sağlayıcısı hizmetlerinde bulut kullanımı, maliyeti ve faturalama verileri için teknik belirtim ve açık standart.

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: