Kubernetes Pod Nedir?

İngilizce: Kubernetes Pod

Pod, Kubernetes'teki en küçük dağıtım birimidir; bir veya daha fazla konteyneri ve paylaşılan ağ/depolama kaynaklarını içerir.

Kubernetes Pod Nedir?

Kubernetes Pod, Kubernetes’in zamanladığı en küçük çalışma birimidir. Bir pod içinde bir veya daha fazla konteyner bulunabilir; bu konteynerler aynı IP adresini, port alanını ve tanımlanan volume’ları paylaşır.

Çoğu uygulamada pod doğrudan elle oluşturulmaz; Deployment, StatefulSet veya Job gibi üst kaynakların pod template’i üzerinden üretilir. Kubernetes scheduler pod’u uygun node’a yerleştirir, kubelet konteynerleri başlatır ve sağlık kontrollerine göre yeniden başlatma yapar. Pod’lar geçicidir: silinebilir, başka node’da yeniden oluşturulabilir ve IP adresleri değişebilir. Bu yüzden kalıcı erişim için Service, kalıcı veri için PersistentVolume gibi kaynaklar kullanılır.

Tipik Pod Desenleri

  • Tek uygulama konteyneri taşıyan web veya API pod’u
  • Yanında log forwarder, proxy veya agent bulunan sidecar pod’u
  • Başlatma öncesi hazırlık yapan init container kullanımı
  • Batch işlerinde kısa süre yaşayan Job pod’ları

Pod tasarımında resource limitleri, readiness/liveness probe’ları, environment secret’ları ve image versiyonları açık tanımlanmalıdır. Temel orkestrasyon için Kubernetes, imaj üretimi için Docker ve imaj dağıtımı için container registry kavramları birlikte çalışır.