İç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ıç
  • Güvenlik & Kimlik
  • Kubernetes Image Promoter Yeniden Yazıldı: Sessiz Devrim
DevOps Güvenlik & Kimlik Konteyner & Kubernetes container imajı, cosign, DevOps, GitOps, kpromo, Kubernetes, SBOM, SLSA Aşkın KILIÇ 18/04/2026 3 Yorumlar

Kubernetes Image Promoter Yeniden Yazıldı: Sessiz Devrim

Kubernetes Image Promoter Yeniden Yazıldı: Sessiz Devrim
📑 İçindekiler
  1. Küçük Ekip mi Büyük Enterprise mı?
  2. %20 Kod Silmek Sandığınız Kadar Kolay Değil
  3. Performans Tarafında Gerçekten Ne Oldu?
  4. Beni Biraz Düşündüren Tarafı
  5. Kendi Pipeline'ın İçin Alabileceğin Dersler
  6. Sıkça Sorulan Sorular
  7. kpromo ne işe yarar?
  8. Bu yeniden yazım mevcut Kubernetes kullanıcılarını etkiler mi?
  9. Adaptive backoff nedir ve neden önemlidir?
  10. Kendi CI/CD pipeline'ıma bu yaklaşımı nasıl uygulayabilirim?
  11. SLSA provenance attestation ne demek?
  12. Kaynaklar ve İleri Okuma

⏱️ 10 dk okuma📅 18 Nisan 2026🔄 Güncelleme: 16 Eylül 2026

Şöyle düşünün: her gün milyonlarca container imajı çekiliyor ve bunların arkasında tek bir araç koşturuyor, inanın bana. O araç tökezlese? Kubernetes release süreci de sendeleyip kalıyor. Nokta. İşte tam burada, o hayatı (söylemesi ayıp) araç olan kpromo’yu baştan yazmışlar; kodun yüzde 20’sini çöpe atmışlar, sistemi belirgin biçimde hızlandırmışlar ve garip olan şu ki kimse fark etmemiş. Zaten hedef de biraz buydu.

İlgili içerik: Kubernetes v1.36’da Askıya Alınan Job Kaynakları Değişiyor

İlgili içerik: Kubernetes v1.36: Silinemeyen Politikaların Sessiz Gücü

Küçük Ekip mi Büyük Enterprise mı?

Tuhaf ama eğer üç-beş kişilik bir startup’sanız açık konuşayım bu kadar katmanlı faz planına ihtiyacınız yoktur büyük ihtimalle. Direkt yeniden yazarsınız, hafta sonu deploy edersiniz, eski kodu da silersiniz gider. Ama 50+ kişilik ekiplerde işler değişiyor; aynı pipeline’ı birkaç takım kullanıyorsa fazlı yaklaşım neredeyse şart oluyor.

Azure DevOps Güvenlik Taraması Tek Tıkla Başlıyor yazımda da söylemiştim — CI/CD pipeline güvenliği sadece tool meselesi değil bazen süreç meselesi de oluyor hani.
kpromo’nun cosign imzalama ve SLSA provenance desteği de supply chain security açısından baya iş görüyor.

%20 Kod Silmek Sandığınız Kadar Kolay Değil

Şunu fark ettim: Küçük bir detay:
“E ne var yani, sil gitsin” diyebilirsiniz belki. Production’daki kodun yüzde 20’sini silmek öyle hop diye olmuyor.
Hmm… biraz düşününce anlaşılıyor aslında neden zor olduğu;
her satırın en azından bir zamanlar iyi kötü bir sebebi olmuş oluyor çünkü artık kullanılmayan şeyler bile başka yerlere dolaylı bağlı çıkabiliyor.

2023’te benzer temizlik yaptığımız bir proje vardı;
Azure Functions üstünde çalışan event processing sistemiydi bu. Kodun yaklaşık yüzde 15’i dead code çıktı ama bunu anlamak iki hafta sürdü desek abartmış olmayız sanırım. Silme kararı bir gün aldı ama test etmek üç gün sürdü. Sonuçta deployment süresi yüzde 35 düştü,
build süresi yarıya indi;
yalnız o analiz döneminde epey terlediğimi söyleyebilirim. İşte,

Kpromo ekibinin yaptığı sıranın değeri burada ortaya çıkıyor bence —
önce interface’leri çıkarıyorsun,
sonra eski hayata geçirmeyi yenisiyle değiştiriyorsun,
en son artık referans edilmeyen kodu temizliyorsun;
sıra gerçekten önemliymiş meğersem.
Tersi olursa. Önce silmeye girişirseniz işler hızlıca karışır.

Performans Tarafında Gerçekten Ne Oldu?

Bunu yaşayan biri olarak söyleyeyim, Evet,
30 dakikayı aşan promotion job’ları artık çok daha hızlı çalışıyor gibi görünüyor;
rate limit kaynaklı fail oranı da belirgin şekilde düşmüş durumda deniyor.
Ama şunu dürüstçe söyleyeyim — kaynakta “dramatically faster” denince ben hep biraz temkinli yaklaşırım.
Çünkü dramatik kelimesi herkes için başka türlü çalışıyor;
30 dakikadan 15 dakikaya inmek mi,
yoksa beş dakikaya mı?
Somut rakam verilmediği için insan ister istemez beklemede kalıyor.
Açık konuşayım,
kağıt üstünde tablo güzel duruyor (inanın bana). Asıl sınav yüksek yük altındaki uzun vadeli stabilite olacak.
Kubernetes release dönemlerinde,
özellikle minör release çıktığında,
imaj sayısı artıyor,
mirror sayısı kabarıyor,
trafik sıkışıyor;
asıl performansı o zaman anlayacağız.
Buna rağmen adaptive backoff mekanizmasının tek başına bile ciddi fark yaratmış olma ihtimali yüksek.
Eski kod rate limit’e takılınca sabit süre bekliyordu;
bu da gereksiz uzun boşluklar yaratıyordu.
Yeni sistemde bekleme dinamik,
yani registry rahatladığı anda işlem devam edebiliyor.
Kubernetes 1_36 Ön İzleme Neler Geliyor Neler Gidiyor? yazımda Kubernetes ekosistemindeki başka değişikliklere de değinmiştim.
Bu yeniden yazım da
1_36 dönemine denk geliyor
ve supply chain security açısından fena olmayan bir adım sayılır.

Beni Biraz Düşündüren Tarafı

İşin garibi, Bir şey var ki beni hafif düşündürdü doğrusu. Bu kadar can alıcı bir araç,
bu kadar büyük etraflı bir yeniden yazımdan geçti. Blog postu dışında toplulukta çok yüksek ses çıkmadı. Belki de “kimse fark etmedi” mottosu gereğinden iyi çalıştı. Çünkü böyle mühendislik işleri biraz daha görünür olmayı hak ediyor bence;
yoksa emek gölgede kalıyor. Bir de sosyal tarafı var tabi:
42 katkıcının emeği üzerine yapılan rewrite hassas konuya dönüşebiliyor. Yıllar önce yazılmış kodu silmek teknik olarak doğru olsa bile insan ilişkileri açısından dikkat istiyor. Neden önemli bu? Kubernetes topluluğu bunu fena yönetmemiş gibi duruyor ama her açık kaynak projesi aynı şansa sahip değil,
onu da unutmamak lazım.

Kendi Pipeline’ın İçin Alabileceğin Dersler

Lafı gevelemeden söyleyeyim — bu rewrite’tan çıkarabileceğiniz birkaç somut ders var:

  • Fazlı yaklaşım: Büyük değişiklikleri küçük ve bağımsız PR’lara bölün; her biri tek başına merge edilebilir olsun.
  • Önce arayüzleri çıkarın:     

}

Sıkça Sorulan Sorular

kpromo ne işe yarar?

kpromo (Kubernetes image promoter), container imajlarını staging registry’lerden production’a (registry.k8s.io) kopyalıyor, cosign ile imzalıyor. 20’den fazla bölgesel mirror’a replike ediyor. Yani aslında Kubernetes release sürecinin tam kalbinde duruyor — bu araç çalışmazsa yeni Kubernetes sürümü yayınlanamıyor. Bence bu kadar kritik bir araç olduğunu çoğu kişi fark etmiyor bile.

Bu yeniden yazım mevcut Kubernetes kullanıcılarını etkiler mi?

Hayır, doğrudan etkilemiyor. Yeniden yazım büyük ölçüde geriye dönük uyumlu şekilde yapılmış. registry.k8s.io’dan imaj çekmeye devam edebilirsiniz, hiçbir şey değişmedi. Zaten amaç da tam olarak buydu — kullanıcının fark etmemesi. Açıkçası, “kimsenin fark etmediği değişiklik” bence en başarılı değişikliktir.

Adaptive backoff nedir ve neden önemlidir?

Kısaca şöyle açıklayayım: bir servisten hata aldığınızda bekleme süresini dinamik olarak artıran bir strateji. Sabit bekleme yerine, hata sayısına göre üstel olarak artan bir gecikme uyguluyor. Böylelikle hem servisi boğmuyorsunuz hem de gereksiz yere uzun beklemiyorsunuz. Tecrübeme göre bu tür küçük detaylar, yük altında sistemin ayakta kalıp kalmayacağını belirliyor.

Kendi CI/CD pipeline’ıma bu yaklaşımı nasıl uygulayabilirim?

Vallahi, İlk adım olarak dış bağımlılıklarınızı — mesela registry, API çağrıları, auth servisleri — interface’lerin arkasına alın. Sonra her fazı ayrı bir PR olarak gönderin. Son olarak kullanılmayan kodu temizleyin. Azure DevOps veya GitHub Actions’ta bu yaklaşım, hani pipeline sürenizi ve bakım maliyetinizi ciddi şekilde düşürüyor.

SLSA provenance attestation ne demek?

SLSA (Supply-chain Levels for Software Artifacts), bir yazılımın nereden geldiğini ve nasıl build edildiğini kanıtlayan bir framework. Provenance attestation ise container imajının hangi kaynak koddan, hangi build sistemiyle, ne zaman üretildiğini kriptografik olarak doğrulanabilir şekilde belgeliyor. Yani aslında imajınız için bir “doğum belgesi” gibi düşünebilirsiniz. Bu ne anlama geliyor? Supply chain saldırılarının bu kadar yaygınlaştığı bir dönemde bence bu tür mekanizmalar artık lüks değil, zorunluluk.

Kaynaklar ve İleri Okuma

The Invisible Rewrite: Modernizing the Kubernetes Image Promoter — Kubernetes Blog

kubernetes-sigs/promo-tools — GitHub Repository

SLSA Framework — Supply-chain Levels for Software Artifacts

🤖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

VS Code’da Kurumsal Eklenti Dönemi: Kontrol, Hız, Düzen
VS Code’da Kurumsal Eklenti Dönemi: Kontrol, Hız, Düzen6 Haz 2026
Azure DevOps Server Nisan Yaması: Ne Geldi, Ne Yapmalı?
Azure DevOps Server Nisan Yaması: Ne Geldi, Ne Yapmalı?18 Nis 2026
Copilot CLI'ın Yeni Terminal Arayüzü GA: Sekmeler Devri Başladı
Copilot CLI'ın Yeni Terminal Arayüzü GA: Sekmeler Devri Başladı25 Haz 2026
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri19 Tem 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 container imajı cosign DevOps GitOps kpromo Kubernetes SBOM SLSA
Önceki yazı

Azure DevOps Güvenlik Taraması: Tek Tıkla Başlıyor

Sonraki yazı

Azure DevOps Server Nisan Yaması: Ne Geldi, Ne Yapmalı?

İlginizi Çekebilir

Azure Cloud-Native Temeli: AI Ajanları İçin Yol Haritası
Aşkın KILIÇ 0

Azure Cloud-Native Temeli: AI Ajanları İçin Yol Haritası

18/10/2026
Open-Weight Model Riski: Kurumsal Değerlendirme Rehberi
Aşkın KILIÇ 0

Open-Weight Model Riski: Kurumsal Değerlendirme Rehberi

17/10/2026
Open Source License Compliance: Kurumsal Lisans Denetimi
Aşkın KILIÇ 0

Open Source License Compliance: Kurumsal Lisans Denetimi

16/10/2026

3 comments

comments user
Onur P. 18/04/2026 20:19

Kodun %20’sini silmek gerçekten cesaret isteyen bir şey, çoğu ekip “ya bir şey bozulursa” korkusuyla üstüne bir şey daha ekler. cosign entegrasyonu da kritik, özellikle supply chain saldırılarının bu kadar arttığı dönemde imza doğrulaması olmadan production’a geçmek artık lüks.

comments user
Deniz R. 18/04/2026 21:38

Kod silmek kod yazmaktan daha zor iş, %20 azaltmak ciddi bir temizlik demek. cosign entegrasyonu da supply chain güvenliği açısından artık zorunluluk haline geldi zaten. Bu arada şu yazınız da güzeldi: Azure Local ve Armada: Edge’de Egemen AI Dönemi — https://www.askinkilic.com.tr/azure-local-ve-armada-edgede-egemen-ai-donemi/

comments user
Pınar H. 18/04/2026 23:59

Kod tabanının %20’sini silip aynı işi daha iyi yapmak gerçekten zor bir iş, tebrikler demek lazım Kubernetes ekibine. SLSA provenance tarafı özellikle ilgimi çekti, supply chain güvenliği artık görmezden gelinecek bir konu değil. Bu arada şu yazınız da güzeldi: Azure DevOps Güvenlik Taraması: Tek Tıkla Başlıyor — https://www.askinkilic.com.tr/azure-devops-guvenlik-taramasi-tek-tikla-basliyor/

Yorumlar kapalı.

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • GitHub Copilot'ta Kaldırılan Modeller ve Geçiş Planı
    18/10/2026 GitHub Copilot’ta Kaldırılan Modeller ve Geçiş Planı
  • Logitech MX Keypad ve GitHub Copilot: Ambient Kontrol
    18/10/2026 Logitech MX Keypad ve GitHub Copilot: Ambient Kontrol
  • Visual Studio 2026: İlk Hatada Derlemeyi Durdurma
    18/10/2026 Visual Studio 2026: İlk Hatada Derlemeyi Durdurma
  • Azure Cloud-Native Temeli: AI Ajanları İçin Yol Haritası
    18/10/2026 Azure Cloud-Native Temeli: AI Ajanları İçin Yol Haritası
  • GitHub Code Quality Lisans Kullanımını CSV ile Doğrulayın
    17/10/2026 GitHub Code Quality Lisans Kullanımını CSV ile Doğrulayın
  • DevOps Güncellemeleri
    09/03/2026 Azure DevOps Server Şubat Güncellemesi: Güvenlik
  • 2026-03-10_15-35-23
    10/03/2026 Microsoft 365 E7: Yapay Zeka ve Güvenlik Bir Arada
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • 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
  • 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 OpenAI azure sdk Azure SQL CI/CD 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 Entra ID Microsoft Foundry otomasyon performans public preview Pull Request RAG REST API SEO uyumlu 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
    ← Azure DevOps Güvenlik Taraması...
    Azure DevOps Server Nisan Yama... →
    📩

    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