23 puan yazan iwanhae 2025-06-16 | 7 yorum | WhatsApp'ta paylaş

Ben kişisel olarak Kubernetes’i epey seviyorum, ancak yine de birkaç eksik yanı olduğunu düşünürsem, soyutlamanın fazla iyi yapılmış olması nedeniyle gerçek fiziksel unsurların gizlenmesi ve bunları doğrulamanın zorlaşması geliyor aklıma.

Örneğin

  • Bir Pod’da sorun yaşanırken aynı node’a dağıtılmış diğer Pod’ların durumu nasıl?
  • Şu anda Service’e bağlı Pod’ların hepsi sorunsuz şekilde çalışıyor mu?
  • Mevcut node’un CPU ve bellek kullanımı ne durumda? Bunun içinde tek tek Pod’ların payı nedir?
  • Şu anda node’a bağlı PV’lerin listesi nedir?

Elbette bilgiler tamamen yok değil; kubectl kombinasyonları ve Prometheus gibi izleme araçlarıyla bunları tek tek görselleştirmenin yolları var, ancak bunun da oldukça zahmetli olduğu bir gerçek.

Böyle bir durumda yardımcı olmak amacıyla, kabaca böyle bir web tabanlı gerçek zamanlı Kubernetes panosu yaptım. Ayrı olarak bir şey kurmaya gerek kalmadan, yalnızca kubectl proxy komutu kullanılabiliyorsa, web tarayıcısı içinde WASM biçiminde çalışarak Kubernetes’in tüm kaynaklarını WATCH eden bir yapıda çalışır.

7 yorum

 
xogns556 2025-06-20

Running / Terminating sayıları 1 saniye değil, 0.00x saniye düzeyinde değişiyor gibi görünüyor; bu sürekli hangi mantıkla güncelleniyor acaba? Sürekli k8s API’sine istek mi atılıyor?

Kullanmak istiyorum ama k8s API Read Request tarafında çok büyük bir yük oluşturup oluşturmayacağı konusunda biraz endişelendiğim için sormak istedim!

 
iwanhae 2025-06-21

K8s'in WATCH API'sini kullanıyor.
https://kubernetes.io/docs/reference/…

Yalnızca değişiklikler protobuf ve SSE ile alındığı için oldukça verimli ve yük de ihmal edilebilir düzeyde. (kubelet'in kube apiserver üzerinde oluşturduğu yük seviyesinde)

Ancak birden fazla kişi aynı anda kullanacaksa wasm yerine sunucu modunu öneririm. Sunucu istekleri onun yerine alıp bellekte tuttuğu veriyi sunduğu için kube apiserver üzerindeki yük azalır.

 
taeuk 2025-06-17

WASM dosyası yaklaşık 90 MB; oldukça büyük sayılır.

 
iwanhae 2025-06-17

Boyutu büyük olsa da entropisinin yüksek olduğunu sanmıyorum. Şu anda curl ile indirildiğinde gzip’lenmiş hâlinin boyutu yalnızca yaklaşık 14MB oluyor. Gerçek WASM servis edilirken de bugünlerde çoğu durumda gzip, zstd, brotoli gibi encoding algoritmaları uygulanıyor; bu yüzden fiilen aktarılan trafiğin yüksek olmayacağını tahmin ediyorum.

 
kandk 2025-06-18

O binary'nin zstd ile sıkıştırıldığında nasıl olduğu da ilgimi çekiyor.

 
roxie 2025-06-16

Konu biraz farklı ama, WASM'a dönüştürme ve kullanma sürecinin akıcı olup olmadığını (rahatsızlık veren bir nokta yaşayıp yaşamadığınızı) merak ediyorum!

 
iwanhae 2025-06-16

Önce kabaca WASM ile yapıp, daha sonra yalnızca ortak mantığı bir araya getirerek Server tarafı kodunu ayrıca ayırdığım bir yapı olduğu için, özellikle bir rahatsızlık yaşamadım. Hatta şimdi kodu kabaca değiştirsem bile hem Server hem de WASM tarafına uygulanıyor, bu yüzden de memnun bir şekilde kullanıyorum. haha