İç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ıç
  • Geliştirici Araçları
  • Kubernetes v1.37’de Native Histogramlar Beta Oldu
Bulut Altyapı Geliştirici Araçları Kubernetes, metrikler, Native Histogramlar, Prometheus, Scrape Ayarları Aşkın KILIÇ 12/09/2026 3 Yorumlar

Kubernetes v1.37’de Native Histogramlar Beta Oldu

Kubernetes v1.37’de Native Histogramlar Beta Oldu
📑 İçindekiler
  1. Klasik histogramların sınırları
  2. Native histogram nedir?
  3. Kubernetes’te native histogramların çalışma modeli
  4. Prometheus ile native histogramları kazıma
  5. PromQL sorguları nasıl değişiyor?
  6. Geçiş ve geri alma seçenekleri
  7. İlgili İçerikler
  8. Kaynaklar ve İleri Okuma

⏱️ 4 dk okuma📅 12 Eylül 2026

Kubernetes v1.37 ile native histogram desteği Beta aşamasına yükseldi ve varsayılan olarak etkinleştirildi. Prometheus Native Histograms standardını kullanan özellik, Kubernetes metriklerinde daha yüksek çözünürlüklü gözlemlenebilirlik sağlıyor; klasik histogramlara kıyasla zaman serisi ve depolama yükünü azaltmayı amaçlıyor.

Klasik histogramların sınırları

Kubernetes’te istek gecikmeleri ve işlem süreleri gibi metrikler uzun süredir klasik Prometheus histogramlarıyla izleniyor. Bu modelde metrik yazarı, le etiketleriyle statik kova sınırları tanımlıyor. Örneğin bir histogramda 0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5 ve 10 gibi değerler kullanılabiliyor.

Bu yaklaşımın üç temel sorunu var:

  • Kova sınırlarını önceden tahmin etme zorunluluğu: İş yükünün gecikme profili değiştiğinde histogram yeterli görünürlük sağlamayabiliyor. Değerlerin mikrosaniye aralığına kayması veya uzun kuyruk gecikmelerinin en yüksek sınırı aşması buna örnek.
  • Yüksek kardinalite ve depolama maliyeti: Her kova sınırı ayrı bir zaman serisi olarak dışa aktarılıyor. Çok sayıda etiket eklendiğinde zaman serisi sayısı artıyor, Prometheus ile TSDB üzerindeki yük de büyüyor.
  • Nicelik hesaplamalarında enterpolasyon hatası: histogram_quantile() statik kova sınırları arasında doğrusal enterpolasyon yapıyor. Kovalar geniş olduğunda yüzdelik değerlerin tahmini daha az doğru olabiliyor.

Native histogram nedir?

Prometheus native histogramları, kullanıcı tarafından önceden belirlenen statik kovalar yerine dinamik üstel kovalar kullanıyor. Native histogram, her kova sınırı için ayrı bir zaman serisi oluşturmak yerine pozitif ve negatif aralıkları, sıfır eşiğini ve üstel ölçekleme bilgilerini tek bir zaman serisinde taşıyor.

Bu modelin öne çıkan özellikleri şöyle:

  • Üstel kovalar, nanosaniyelerden saatlere kadar farklı değer aralıklarına önceden sınır tanımlamadan uyum sağlayabiliyor.
  • Kovaların yapılandırılmış aralıklar içinde birleştirilmesi, zaman serisi ve depolama yükünü yüzde 90’a kadar azaltabiliyor.
  • Varsayılan ayarlarda nicelik hesaplamaları için en kötü durumda yaklaşık yüzde 5’lik bağıl hata sınırı sağlanıyor.

Kubernetes’te native histogramların çalışma modeli

Destek, Kubernetes’in ortak metrik altyapısı olan k8s.io/component-base/metrics paketine doğrudan eklendi. Kubernetes v1.37’de NativeHistograms özellik kapısı varsayılan olarak açık olduğundan bileşenler çift gösterim yapıyor.

Çift gösterim, mevcut gözlemlenebilirlik altyapılarıyla geriye dönük uyumluluğu koruyor:

  • Klasik kovalar, yani h.Bucket değerleri, native aralıklarla birlikte dışa aktarılmaya devam ediyor.
  • Native histogram bilgileri, h.Schema ve h.PositiveSpan alanlarıyla Protobuf yüküne ekleniyor.
  • Geleneksel metin kazıma, klasik histogram kovalarını aktarmayı sürdürüyor.

Native histogram etkinleştirildiğinde ortak metrik paketi histogramlar için standart üstel ayarlar uyguluyor. BucketFactor: 1.1 değeri, her kovanın önceki kovadan en fazla yüzde 10 daha geniş olmasını sağlıyor. MaxBucketNumber: 160 ise histogram başına kova sayısını sınırlıyor; uç değer dağılımlarında bileşen belleğinin korunmasına yardımcı oluyor.

Bu entegrasyondan başlıca Kubernetes kontrol düzlemi ve düğüm bileşenleri yararlanıyor. Bunlar arasında kube-apiserver, kube-scheduler, kubelet, kube-controller-manager ve kube-proxy bulunuyor. Örnek metrikler arasında apiserver_request_duration_seconds, scheduler_plugin_execution_duration_seconds ve scheduler_scheduling_algorithm_duration_seconds yer alıyor.

Prometheus ile native histogramları kazıma

Kubernetes v1.37 native histogramları varsayılan olarak dışa aktardığından Prometheus yapılandırması kullanılan sürüme göre değişiyor. Prometheus 3.0 ve üzeri için iş bazında açık yapılandırma kullanılması öneriliyor:

scrape_configs:
- job_name: 'kubernetes-apiservers'
scrape_native_histograms: true
always_scrape_classic_histograms: true

Geçiş döneminde always_scrape_classic_histograms: true ayarını korumak gerekiyor. Bu ayar kullanılmazsa Prometheus yalnızca native formatı alabilir ve mevcut _bucket, _count ve _sum serilerini içeri aktarmayabilir. Böylece klasik histogram sorgularını kullanan panolar ile uyarı kuralları çalışmaya devam eder.

Prometheus 2.40 ve 2.x sürümlerinde native histogramlar, Prometheus başlatılırken aşağıdaki özellik bayrağıyla genel olarak etkinleştiriliyor:

prometheus --enable-feature=native-histograms

Prometheus 2.x tarafındaki bu ayar, tüm kazıma hedefleri için geçerli toplu bir yapılandırma. Prometheus 3.9 ve sonrasında genel --enable-feature=native-histograms bayrağının kullanılması önerilmiyor; iş bazlı yapılandırma tercih ediliyor.

Native histogramları alabilmek için Prometheus, scrape_native_histograms etkin olduğunda Kubernetes uç noktalarıyla Protobuf biçimini otomatik olarak görüşüyor. Kubernetes bileşenlerinin native histogram dışa aktardığını doğrulamak için Protobuf kabul başlığıyla bir istek gönderilebiliyor. Kaynakta verilen örnek, yalnızca test bağlamı için güvenli olmayan bir curl isteği olarak belirtiliyor.

PromQL sorguları nasıl değişiyor?

Native histogramlar Prometheus’a alındıktan sonra sorgular, klasik histogramlardaki _bucket son ekine ve le etiketine ihtiyaç duymadan doğrudan metrik adı üzerinden çalışabiliyor.

# Classic histogram
histogram_quantile(
0.99,
rate(apiserver_request_duration_seconds_bucket[5m])
)
# Native histogram
histogram_quantile(
0.99,
rate(apiserver_request_duration_seconds[5m])
)

Birden fazla API sunucusunu klasik histogramla toplarken kova sınırlarını korumak için sum by (le) kullanılıyor. Native histogramlarda bu gruplama gerekmiyor:

# Classic histogram
histogram_quantile(
0.99,
sum by (le) (
rate(apiserver_request_duration_seconds_bucket[5m])
)
)
# Native histogram
histogram_quantile(
0.99,
sum (
rate(apiserver_request_duration_seconds[5m])
)
)

Geçiş sırasında Grafana panoları ve Prometheus uyarı kuralları, klasik histogram_quantile(..._bucket...) sorgularından native histogram sorgularına taşınabiliyor. Klasik _count ve _sum serilerine yapılan başvuruların da sırasıyla histogram_count() ve histogram_sum() işlevleriyle değiştirilmesi gerekiyor.

Geçiş ve geri alma seçenekleri

Önerilen geçiş modeli, iki formatı bir süre birlikte toplamaya dayanıyor. Önce Prometheus 3.x kazıma yapılandırmasında hem scrape_native_histograms: true hem de always_scrape_classic_histograms: true etkinleştiriliyor. Ardından sorgular, panolar ve uyarılar native histogram biçimine taşınıyor. Staging veya üretim ortamında doğrulama tamamlandıktan sonra klasik serilerin alımı kapatılabiliyor.

Geçiş tamamlandığında always_scrape_classic_histograms: false ayarıyla statik _bucket, _count ve _sum serilerinin Prometheus’a alınması durdurulabiliyor. Bu adım, histogram zaman serisi sayısını yüzde 90’a kadar azaltabiliyor.

Native histogramların alınması, Prometheus iş yapılandırmasında scrape_native_histograms: false ayarıyla durdurulabiliyor; bunun için Kubernetes’i yeniden başlatmak gerekmiyor. Kubernetes bileşenlerindeki özellik kapısı da --feature-gates=NativeHistograms=false ile kapatılabiliyor, ancak bu işlem bileşenin yeniden başlatılmasını gerektiriyor.

Native histogramların Genel Kullanıma Sunum aşamasına ilerlemesiyle SIG Instrumentation, ekosistem hazırlığını, performans özelliklerini ve klasik kovaların gelecekte kullanımdan kaldırılmasına ilişkin planları değerlendirmeyi sürdürecek.

İlgili İçerikler

  • Kubernetes v1.36 Pod-Level In-Place Resize: Beta’ya Yükseldi
  • Entra External ID’de Sosyal Giriş: Native Auth GA Oldu
  • Kubernetes v1.37’de Rootless Mod Beta Aşamasına Geldi

Kaynaklar ve İleri Okuma

  • kubernetes.io
  • kubernetes.io
  • kep.k8s.io
  • Kubernetes v1.37 Native Histograms Beta duyurusu
  • KEP-5808: Native Histograms
  • Prometheus Native Histograms spesifikasyonu
  • Kubernetes native histogram belgeleri
  • PromQL histogram işlevleri
  • Kubernetes SIG Instrumentation
🤖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

Azure App Service'te Runtime Patch Kontrolü ve WebSSH
Azure App Service'te Runtime Patch Kontrolü ve WebSSH13 Eki 2026
NuGet Paket Budaması: Daha Temiz .NET Bağımlılıkları
NuGet Paket Budaması: Daha Temiz .NET Bağımlılıkları18 May 2026
Grok 4.6 GitHub Copilot'ta Kullanıma Sunuldu
Grok 4.6 GitHub Copilot'ta Kullanıma Sunuldu14 Ağu 2026
GitHub Güvenliği: Küçük Repoda Büyük Açıkları Kapatmak
GitHub Güvenliği: Küçük Repoda Büyük Açıkları Kapatmak30 Mar 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 Kubernetes metrikler Native Histogramlar Prometheus Scrape Ayarları
Önceki yazı

Google Search ile Yarışa Hazırlanmanın 3 Yolu

Sonraki yazı

GitHub Copilot Metriklerine VS Code Agents Eklendi

İlginizi Çekebilir

Intelligent Terminal 0.2.2572: Ajan Başlatma %56 Hızlandı
Aşkın KILIÇ 0

Intelligent Terminal 0.2.2572: Ajan Başlatma %56 Hızlandı

27/10/2026
Azure SQL Hyperscale'in Socrates Mimarisi Nasıl Çalışır
Aşkın KILIÇ 0

Azure SQL Hyperscale’in Socrates Mimarisi Nasıl Çalışır

27/10/2026
Visual Studio 2026 Hot Exit: Notlar Oturumlar Arası Kalsın
Aşkın KILIÇ 0

Visual Studio 2026 Hot Exit: Notlar Oturumlar Arası Kalsın

27/10/2026

3 comments

comments user
Emre Ç. 12/09/2026 10:36

Native histogramların v1.37’de beta olup varsayılan gelmesi güzel haber; çözünürlükle depolama yükünü dengelemek her zaman kritik. Prometheus tarafında da beklenen kazanımı gerçekten hisseden oldu mu, denediniz mi? Bu arada ben bir süredir bu tip histogram mantığını uğraşırken dosya/İOPS tarafında fark yaratıyor diye not almıştım.

Yanıtla
comments user
İrem B. 12/09/2026 20:12

Native histogramların varsayılan olarak açık gelmesi güzel olmuş, klasik bucket’larla uğraşmak cidden dertti. Prometheus tarafında depolama maliyetinin düşmesi bizim gibi çok metrik toplayanlar için büyük artı. Bu arada şu yazınız da ilgimi çekmişti: Google Search ile Yarışa Hazırlanman

Yanıtla
comments user
Murat Ö. 13/09/2026 03:28

Native histogramların varsayılan gelmesi güzel olmuş, klasik histogramlarda bucket ayarlamakla uğraşmak baya dertti açıkçası. Prometheus tarafında depolama maliyetinin düşmesi de cabası. Bu arada şu yazınız da işime yaradı: GitHub Copilot Metriklerine VS Code Agents Eklendi — https://www.askinkilic.com.tr/github-copilot-metriklerine-vs-code-agents-eklendi/

Yanıtla

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Intelligent Terminal 0.2.2572: Ajan Başlatma %56 Hızlandı
    27/10/2026 Intelligent Terminal 0.2.2572: Ajan Başlatma %56 Hızlandı
  • Azure SQL Hyperscale'in Socrates Mimarisi Nasıl Çalışır
    27/10/2026 Azure SQL Hyperscale’in Socrates Mimarisi Nasıl Çalışır
  • Visual Studio 2026 Hot Exit: Notlar Oturumlar Arası Kalsın
    27/10/2026 Visual Studio 2026 Hot Exit: Notlar Oturumlar Arası Kalsın
  • GitHub Copilot Assisted Permissions: Onay Yükü Azalıyor
    27/10/2026 GitHub Copilot Assisted Permissions: Onay Yükü Azalıyor
  • GPT-6.1 Terra GitHub Copilot'ta: Terminal ve C# Odağı
    26/10/2026 GPT-6.1 Terra GitHub Copilot’ta: Terminal ve C# Odağı
  • 2026-03-10_15-35-23
    10/03/2026 Microsoft 365 E7: Yapay Zeka ve Güvenlik Bir Arada
  • Artımlı Anlık Görüntü: Anında Geri Yükleme
    09/03/2026 Artımlı Anlık Görüntü: Anında Geri Yükleme
  • Bulut Sunucu Altyapısı
    09/03/2026 Microsoft Sovereign Cloud: İzolasyonda Güvenli Bulut
  • Terminalde AI Ajanlarını Koddan Teste Taşımak: azd ile Gerçekten Yerel Deneyim
    18/03/2026 Terminalde AI Ajanlarını Koddan Teste Taşımak: azd ile Gerçekten Yerel Deneyim
  • GitHub Copilot: Kaldırılan 4 Model ve Geçiş Alternatifleri
    04/10/2026 GitHub Copilot: Kaldırılan 4 Model ve Geçiş Alternatifleri
  • 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

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 Functions Azure OpenAI azure sdk Azure SQL CI/CD CodeQL code review copilot Copilot CLI DevOps Entra ID geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu MCP Microsoft Agent Framework Microsoft Azure Microsoft Entra ID Microsoft Foundry MSVC otomasyon performans Pull Request RAG verimlilik veri yönetimi Visual Studio Visual Studio 2026 VS Code yapay zeka 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ı 507 yazı 🏗️ Bulut Altyapı 407 yazı 🤖 Yapay Zeka 331 yazı ☁️ Microsoft Azure 279 yazı 🔧 DevOps 277 yazı 🔒 Güvenlik & Kimlik 223 yazı 🏢 Kurumsal Teknoloji 107 yazı 📊 Veri & Analitik 78 yazı 🐳 Konteyner & Kubernetes 62 yazı 📧 Microsoft 365 22 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← Google Search ile Yarışa Hazır...
    GitHub Copilot Metriklerine VS... →
    📩

    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