İçeriğe atla
Şimdi yükleniyor
AKAşkın KILIÇ
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Konteyner & Kubernetes
  • Kubernetes v1.37 HPA ile İş Yüklerini Sıfıra İndiriyor
Konteyner & Kubernetes Harici metrikler, HPA, Kubernetes, Prometheus Adapter, Sıfıra ölçeklendirme Aşkın KILIÇ 03/09/2026 0 Yorumlar

Kubernetes v1.37 HPA ile İş Yüklerini Sıfıra İndiriyor

Kubernetes v1.37 HPA ile İş Yüklerini Sıfıra İndiriyor
📑 İçindekiler
  1. HPA ile sıfıra ölçeklendirme nasıl çalışıyor?
  2. Harici metrik nasıl hazırlanır?
  3. HPA yapılandırmasında minReplicas: 0
  4. HPA otomatik sıfırlamayı manuel duraklatmadan ayırıyor
  5. Yükseltme ve geri alma öncesinde dikkat edilmesi gerekenler
  6. Alpha’dan Beta’ya geçiş
  7. İlgili İçerikler
  8. Kaynaklar ve İleri Okuma
⏱️ 4 dk okuma📅 3 Eylül 2026

Kubernetes v1.37, HorizontalPodAutoscaler (HPA) için iş yüklerini sıfır replika seviyesine kadar ölçeklendirme desteğini Beta aşamasına taşıyor. Varsayılan olarak etkin olan bu özellik, uygun bir nesne metriği veya harici metrik kullanan HPA’ların iş yükünü sıfıra indirmesine, metrik yeniden değiştiğinde de iş yükünü başlatmasına olanak tanıyor.

Bu yetenek, özellikle sürekli çalışması gerekmeyen kuyruk tüketicileri ve toplu iş işlemcileri gibi iş yüklerinde kullanılabilir. Son boş Pod’un da kaldırılması, Pod’ların pahalı CPU veya GPU kaynakları ayırdığı ortamlarda kaynak tüketimini azaltabilir. Bunun karşılığında, iş yükünün yeniden başlaması için metriğin gözlemlenmesi, yeni bir Pod’un planlanması ve uygulamanın başlatılması gerektiğinden soğuk başlatma süresi oluşur.

HPA ile sıfıra ölçeklendirme nasıl çalışıyor?

HPA çoğunlukla CPU veya bellek kullanımını temel alır. Ancak bu metrikler çalışan Pod’lardan elde edilir. Replika sayısı sıfıra düştüğünde ölçülecek Pod kalmaz; dolayısıyla HPA’nın iş yükünü yeniden artırmasını sağlayacak bir sinyal de bulunmaz.

Nesne metrikleri ve harici metriklerde bu sınırlama yoktur. Örneğin bir kuyruğun uzunluğu, kuyruğu tüketen çalışanlar olmasa da varlığını sürdürür. HPA, çalışan Pod bulunmadığında da kuyruktaki görev sayısını okuyabilir ve buna göre yeni replika sayısını hesaplayabilir.

Bu model, işin dayanıklı bir kuyrukta bekleyebildiği senaryolara daha uygundur. Kubernetes Service nesneleri, hazır Pod bulunmadığında gelen istekleri kendiliğinden tamponlamaz. Bu nedenle HTTP ve diğer doğrudan istek temelli iş yüklerinde ayrıca bir tamponlama katmanı gerekir.

Harici metrik nasıl hazırlanır?

Örnekte, kuyruk tüketicisindeki gecikmeyi temsil eden queue_consumer_lag adlı bir Prometheus metriği kullanılıyor. Prometheus’un aşağıdakine benzer bir seri topladığı varsayılıyor:

queue_consumer_lag{
namespace="default",
name="worker_tasks"
}

Kubernetes’in bu metriği okuyabilmesi için değerin External Metrics API üzerinden sunulması gerekir. Prometheus Adapter bu amaçla kullanılabilecek uygulamalardan biridir. Adapter yapılandırmasında seriyi harici metrik olarak sunmak için aşağıdaki gibi bir externalRules girdisi kullanılabilir:

externalRules:
- seriesQuery: '{__name__="queue_consumer_lag",name!=""}'
metricsQuery: sum(<<.Series>>{<<.LabelMatchers>>}) by (name)
resources:
overrides:
namespace:
resource: namespace

Adapter kurulumu ve keşif kuralları, kullanılan izleme düzenine göre değişir. HPA oluşturulmadan önce Kubernetes’in metriği okuyabildiği doğrulanabilir:

kubectl get --raw \
'/apis/external.metrics.k8s.io/v1beta1/namespaces/default/queue_consumer_lag?labelSelector=name%3Dworker_tasks'

İstek, worker_tasks için güncel değeri döndürmelidir. Metrik alınamıyorsa önce izleme hattındaki sorun giderilmelidir. Metrik kullanılamaz durumdayken HPA iş yükünü sıfırdan yeniden ölçeklendiremez.

HPA yapılandırmasında minReplicas: 0

Aşağıdaki HPA, queue-worker adlı Deployment’ı hedefler. Kuyrukta her 30 görev için bir replika talep eder, replika sayısını da sıfır ile on arasında tutar:

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: queue-worker
annotations:
kubernetes.io/description: "Scales queue-worker based on the number of queued tasks"
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: queue-worker
minReplicas: 0
maxReplicas: 10
metrics:
- type: External
external:
metric:
name: queue_consumer_lag
selector:
matchLabels:
name: worker_tasks
target:
type: Value
value: "30"

Kuyruk boşaldığında HPA, Deployment’ı sıfır replikaya indirebilir. Yeni görevler geldiğinde harici metrik alınmaya devam eder ve HPA gerekli replika sayısını hesaplar. Bu sayı, maxReplicas değeri olan on ile sınırlandırılır.

Deployment başlangıçta en az bir replika ile çalıştırılmalıdır. Bir Deployment’ı manuel olarak sıfıra ayarlamak, Kubernetes’te daha önce olduğu gibi otomatik ölçeklendirmeyi duraklatır. HPA, kendisinin sıfıra indirmediği bir iş yükünü yeniden uyandırmaz.

HPA’nın normal davranışları bu özellikte de geçerlidir. Varsayılan küçültme kararlılığı penceresi beş dakikadır. Bu pencere, kuyruk uzunluğundaki kısa süreli düşüşün tüm çalışanların hemen kaldırılmasına yol açmasını engeller. Farklı bir davranış gerekirse spec.behavior.scaleDown üzerinden yapılandırma yapılabilir.

HPA otomatik sıfırlamayı manuel duraklatmadan ayırıyor

Replika sayısının sıfır olması iki farklı anlama gelebilir: HPA iş yükünü otomatik olarak sıfıra indirmiş olabilir veya bir operatör iş yükünü manuel olarak duraklatmış olabilir.

Kubernetes v1.37’de bu ayrım ScaledToZero durum koşuluyla yapılıyor. HPA, iş yükünü bir veya daha fazla replikadan sıfıra indirdiğinde ScaledToZero=True koşulunu kaydediyor. Bu bilgi, sonraki denetim döngülerine sıfır durumunun HPA tarafından yönetildiğini ve nesne ya da harici metriklerin izlenmeye devam etmesi gerektiğini bildiriyor.

İş yükü yeniden ölçeklendirildiğinde koşul ScaledToZero=False değerine, neden ise NotScaledToZero değerine dönüyor. Sıfır replikada bulunan ancak ScaledToZero=True koşuluna sahip olmayan iş yükü manuel olarak duraklatılmış kabul ediliyor.

Durum koşulları şu komutla incelenebilir:

kubectl describe hpa queue-worker

Adapter yapılandırılmış metriği döndüremezse HPA, ScalingActive=False durumunu ve FailedGetExternalMetric benzeri bir nedeni raporlar. Bu durumda metriğin yeniden kullanılabilir hale getirilmesi veya kapasitenin geri kazanılması için iş yükünün manuel olarak ölçeklendirilmesi gerekir.

Yükseltme ve geri alma öncesinde dikkat edilmesi gerekenler

Kubernetes v1.37’de HPAScaleToZero özellik kapısı hem kube-apiserver hem de kube-controller-manager üzerinde varsayılan olarak etkin. API sunucusu minReplicas: 0 değerini kabul ederken controller manager koşul tabanlı ölçeklendirmeyi yürütür.

Kontrol düzlemi bileşenlerinin farklı sürümlerde bulunduğu yükseltme sürecinde, minReplicas: 0 kullanan HPA’lar oluşturulmadan önce her iki bileşenin de bu özelliği desteklediğinden ve özelliğin etkin olduğundan emin olunmalıdır. Özellik kapalı bir controller manager, replicas: 0 durumunu manuel duraklatma olarak değerlendirebilir ve iş yükünü sıfırda bırakabilir.

Özellik kapısı kapatılmadan veya koşul tabanlı uygulamayı içermeyen bir sürüme geri dönülmeden önce, etkilenen HPA nesnelerinde minReplicas değeri en az bir olacak şekilde değiştirilmelidir. Sıfırda bulunan iş yükleri de en az bir replikaya çıkarılmalıdır.

Ayrıca minReplicas: 0 kullanımı için en az bir nesne metriği veya harici metrik gerekir. Yalnızca CPU ya da bellek gibi kaynak metriklerini içeren bir HPA, API sunucusu tarafından reddedilir.

Alpha’dan Beta’ya geçiş

HPA’nın sıfıra ve sıfırdan ölçeklendirilmesine yönelik ilk Alpha uygulaması Kubernetes v1.16’da yayımlandı. Kubernetes v1.36’da, otomatik ölçeklendirmeyle manuel duraklatma arasındaki farkı belirlemek için ScaledToZero koşulu ve ilgili controller davranışı eklendi.

Kubernetes v1.37’de harici metrik üzerinden sıfıra ve yeniden yukarı ölçeklendirmeye yönelik entegrasyon ve uçtan uca test kapsamı eklendi, ardından özellik varsayılan olarak etkinleştirildi. Bir sonraki aşama, özellik GA seviyesine taşınmadan önce operasyonel geri bildirimleri toplamak.

Gelişmeyle ilgili geri bildirimler Kubernetes SIG Autoscaling topluluğu üzerinden paylaşılabilir. Topluluk, Kubernetes Slack içindeki #sig-autoscaling kanalında bu Beta özelliğinin kullanımını tartışıyor.

İlgili İçerikler

  • Kubernetes v1.37: etcd RangeStream ile Bellek Dostu Liste
  • Kubernetes v1.37: Pod Sertifikaları ve Cluster Trust Bundle
  • Kubernetes v1.37: Metrics API Artık Stable

Kaynaklar ve İleri Okuma

  • kubernetes.io
  • github.com
  • slack.k8s.io
  • kubernetes.slack.com
  • github.com
  • github.com
  • Kubernetes v1.37: HPA ile iş yüklerini sıfıra ölçeklendirme
  • Kubernetes HorizontalPodAutoscaler belgeleri
  • KEP-2021: HPA ile sıfıra ve sıfırdan ölçeklendirme
  • Prometheus Adapter harici metrik belgeleri
  • Kubernetes SIG Autoscaling topluluğu
🤖Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

Ingress-NGINX Göçü: 5 Şaşırtıcı Davranış ve Çözümü
Ingress-NGINX Göçü: 5 Şaşırtıcı Davranış ve Çözümü24 Nis 2026
cgroup v1 CPU Shares'ten v2 CPU Weight'e Yeni Dönüşüm
cgroup v1 CPU Shares'ten v2 CPU Weight'e Yeni Dönüşüm27 Tem 2026
Kubernetes v1.36: CCM Route Sync Metriği Neyi Ele Veriyor?
Kubernetes v1.36: CCM Route Sync Metriği Neyi Ele Veriyor?20 May 2026
Kubernetes 1.36 Ön İzleme: Neler Geliyor, Neler Gidiyor?
Kubernetes 1.36 Ön İzleme: Neler Geliyor, Neler Gidiyor?14 Nis 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket Harici metrikler HPA Kubernetes Prometheus Adapter Sıfıra ölçeklendirme
Önceki yazı

Microsoft SQL’de Hibrit Arama: Metin ve Vektörün Gücü

Sonraki yazı

Gemini 3.8 Flash GitHub Copilot’ta Kullanıma Sunuldu

İlginizi Çekebilir

Kubernetes v1.37: etcd RangeStream ile Bellek Dostu Liste
Aşkın KILIÇ 3

Kubernetes v1.37: etcd RangeStream ile Bellek Dostu Liste

02/09/2026
Kubernetes v1.37: Pod Sertifikaları ve Cluster Trust Bundle
Aşkın KILIÇ 2

Kubernetes v1.37: Pod Sertifikaları ve Cluster Trust Bundle

30/08/2026
KYAML Nedir ve Kubernetes YAML'ı Nasıl Biçimlendirir?
Aşkın KILIÇ 2

KYAML Nedir ve Kubernetes YAML’ı Nasıl Biçimlendirir?

15/08/2026

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Gemini 3.8 Flash GitHub Copilot'ta Kullanıma Sunuldu
    03/09/2026 Gemini 3.8 Flash GitHub Copilot’ta Kullanıma Sunuldu
  • Kubernetes v1.37 HPA ile İş Yüklerini Sıfıra İndiriyor
    03/09/2026 Kubernetes v1.37 HPA ile İş Yüklerini Sıfıra İndiriyor
  • Microsoft SQL’de Hibrit Arama: Metin ve Vektörün Gücü
    03/09/2026 Microsoft SQL’de Hibrit Arama: Metin ve Vektörün Gücü
  • GitHub Copilot AI Kodlamada Maliyeti Nasıl Düşürüyor
    03/09/2026 GitHub Copilot AI Kodlamada Maliyeti Nasıl Düşürüyor
  • Ajanik Yapay Zekâ Terimleri: Loop, Harness ve Squad
    03/09/2026 Ajanik Yapay Zekâ Terimleri: Loop, Harness ve Squad
  • Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
    11/04/2026 Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
    07/04/2026 GitHub Code Scanning’de Toplu Düzeltme: PR’lar Hızlandı
  • GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
    03/04/2026 GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

Gemini 3.8 Flash GitHub Copilot'ta Kullanıma Sunuldu
Microsoft Azure Yapay Zeka

Gemini 3.8 Flash GitHub Copilot’ta Kullanıma Sunuldu

03/09/2026 Aşkın KILIÇ
Microsoft SQL’de Hibrit Arama: Metin ve Vektörün Gücü
Bulut Altyapı Geliştirici Araçları Veri & Analitik

Microsoft SQL’de Hibrit Arama: Metin ve Vektörün Gücü

03/09/2026 Aşkın KILIÇ
GitHub Copilot AI Kodlamada Maliyeti Nasıl Düşürüyor
Bulut Altyapı Geliştirici Araçları Yapay Zeka

GitHub Copilot AI Kodlamada Maliyeti Nasıl Düşürüyor

03/09/2026 Aşkın KILIÇ
Ajanik Yapay Zekâ Terimleri: Loop, Harness ve Squad
Kurumsal Teknoloji Yapay Zeka

Ajanik Yapay Zekâ Terimleri: Loop, Harness ve Squad

03/09/2026 Aşkın KILIÇ
Visual Studio'da Çözüm Bazlı Renk Teması Nasıl Ayarlanır
Geliştirici Araçları Microsoft Azure

Visual Studio’da Çözüm Bazlı Renk Teması Nasıl Ayarlanır

02/09/2026 Aşkın KILIÇ
SPFx Dev Skills: Ajanların Bildiği ve Kaçırdığı Detaylar
DevOps Geliştirici Araçları Yapay Zeka

SPFx Dev Skills: Ajanların Bildiği ve Kaçırdığı Detaylar

02/09/2026 Aşkın KILIÇ
Microsoft Entra ID için Bicep Şablonları Genel Kullanıma
DevOps Güvenlik & Kimlik Microsoft Azure

Microsoft Entra ID için Bicep Şablonları Genel Kullanıma

02/09/2026 Aşkın KILIÇ
Kubernetes v1.37: etcd RangeStream ile Bellek Dostu Liste
Bulut Altyapı Konteyner & Kubernetes

Kubernetes v1.37: etcd RangeStream ile Bellek Dostu Liste

02/09/2026 Aşkın KILIÇ
Visual Studio'da GitHub Pull Request İnceleme Rehberi
DevOps Geliştirici Araçları Yapay Zeka

Visual Studio’da GitHub Pull Request İnceleme Rehberi

01/09/2026 Aşkın KILIÇ
Python in Visual Studio Code – November 2025 Release
Bulut Altyapı Geliştirici Araçları

Python in Visual Studio Code – November 2025 Release

01/09/2026 Aşkın KILIÇ
Azure SRE Agent'ı Connector Namespace ile Güçlendirmek
Bulut Altyapı Microsoft Azure Yapay Zeka

Azure SRE Agent’ı Connector Namespace ile Güçlendirmek

01/09/2026 Aşkın KILIÇ
Enterprise Live Migrations is now in public preview
Bulut Altyapı DevOps

Enterprise Live Migrations is now in public preview

01/09/2026 Aşkın KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları ASP.NET Core Azure azure app service Azure Cosmos DB Azure Developer CLI Azure DevOps azure sdk Azure SQL bulut bilişim C++ CI/CD CodeQL code review copilot Copilot CLI DevOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu MCP Microsoft Agent Framework Microsoft Azure Microsoft Foundry otomasyon performans Pull Request RAG SEO uyumlu verimlilik veri yönetimi Visual Studio Visual Studio 2026 VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 432 yazı 🏗️ Bulut Altyapı 345 yazı 🤖 Yapay Zeka 289 yazı 🔧 DevOps 242 yazı ☁️ Microsoft Azure 231 yazı 🔒 Güvenlik & Kimlik 199 yazı 🏢 Kurumsal Teknoloji 83 yazı 📊 Veri & Analitik 62 yazı 🐳 Konteyner & Kubernetes 53 yazı 📧 Microsoft 365 22 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← Microsoft SQL’de Hibrit Arama:...
    Gemini 3.8 Flash GitHub Copilo... →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS