Kubernetes

Kubernetes ile ölçekli dağıtım
Resim: Kubernetes Eğitimi

Kubernetes Eğitimi, container tabanlı uygulamaları güvenilir, ölçeklenebilir ve izlenebilir şekilde çalıştırmak için gerekli temel ve ileri pratikleri kazandırır. Ekipler, deployment standartlarını oturtur; servis keşfi, konfigürasyon ve kaynak yönetimini daha öngörülebilir hale getirir.

Eğitim boyunca gerçekçi senaryolar üzerinden manifest tasarımı, rollout stratejileri, güvenlik kontrolleri ve operasyonel sorun giderme adımları ele alınır. Böylece uygulama ekipleri ile operasyon ekipleri aynı dili konuşur, hatalara daha hızlı müdahale edilir ve sürüm süreçleri daha akıcı ilerler.

Katılımcı Profili

Bu eğitim, Kubernetes’i üretim benzeri ortamlarda etkin kullanmak isteyen aşağıdaki profiller için uygundur:

  • Yazılımcılar: Uygulamayı K8s’te çalıştırma pratikleri
  • DevOps Mühendisleri: Dağıtım, otomasyon ve operasyon standartları
  • Sistem Yöneticileri: Küme yönetimi ve temel bakım süreçleri
  • SRE Uzmanları: Güvenilirlik, izleme ve kapasite planlama
  • Platform Ekipleri: Çoklu ekipler için platform kuralları

Ön Gereklilikler

Eğitime katılım için aşağıdaki ön bilgi ve deneyimler önerilir:

  • Temel Linux komutları ve dosya sistemi kullanımı
  • Docker ve container mantığı hakkında genel farkındalık
  • YAML formatı ile basit dosya okuma ve yazma deneyimi
  • HTTP, DNS ve ağ temellerine dair genel bilgi
  • CI/CD süreçlerine dair temel kavramlara aşinalık

Süresi ve Tarihi

Süre: 3 gün. Bu süre standart program içindir; ek modüllere ve hedefe göre süre özelleştirilebilir.
Eğitim tarihleri ve saatleri, ekibinizin uygunluğuna göre birlikte planlanır.

Kazanımlar

Eğitim sonunda ekipler, Kubernetes üzerinde güvenli ve sürdürülebilir dağıtım süreçleri kurabilecek seviyeye gelir:

  • Kubernetes mimarisini ve temel bileşenlerini doğru konumlandırma
  • Pod, Deployment, StatefulSet ve Job tasarımını senaryoya göre seçme
  • Servis keşfi, ingress ve ağ politikaları ile erişim yönetimi kurma
  • ConfigMap ve Secret ile konfigürasyonu yönetilebilir hale getirme
  • Resource limit/requests ve HPA ile ölçekleme stratejisi uygulama
  • Rollout stratejileriyle kesintiyi azaltan sürüm yönetimi yürütme
  • RBAC ve güvenlik kontrolleriyle yetkilendirme kurgulama
  • Troubleshooting adımlarıyla sorunları hızlı analiz edip çözme

Kubernetes Eğitimi Konuları

1. Kubernetes Eğitimi - Temel Kavramlar ve Mimari

  • Kubernetes’in çalışma modelini hızlıca kavrama
  • Control plane ve node bileşenlerini açıklayıcı şekilde inceleme
  • Küme kaynaklarını yönetirken temel terimleri netleştirme çünkü ekip dili ortaklaşır
  • Namespace ile kaynakları mantıksal olarak ayırma
  • Cluster yapı taşlarını diagram üzerinden ilişkilendirme ile kavrayışı güçlendirme

2. Cluster Erişimi ve kubectl Kullanımı

  • kubectl bağlanma ve context yönetimini kurma
  • Kaynakları listeleme ve filtreleme ile görünürlük sağlama
  • Explain, describe ve get çıktılarıyla doğru analiz yapma ve hızlı karar verme
  • Label ve annotation kullanımıyla düzenli kaynak yönetimi
  • kubectl plugin ve alias yaklaşımı ile verim artırma

3. YAML Manifest Tasarımı ve Best Practices

  • Manifest yapısını okunur hale getirme
  • Metadata ve spec alanlarını doğru kurgulama ile hataları azaltma
  • Reusable şablon yaklaşımıyla tekrar eden ayarları sadeleştirme çünkü bakım maliyeti düşer
  • Label seçimiyle servis eşleşmesini tutarlı kurma
  • Dry-run ve apply stratejisi ile güvenli değişiklik yönetimi

4. Pod Yaşam Döngüsü, Probes ve Health Kontrolleri

  • Pod yaşam döngüsünü temel durumlarıyla takip etme
  • Liveness ve readiness probe tanımlama ile stabil çalışma sağlama
  • Startup probe kullanımıyla yavaş açılan servisleri koruma ve gereksiz restartları önleme
  • Pod restart ve backoff davranışlarını yorumlama
  • Log ve event inceleyerek sağlık problemlerini tespit etme

5. Deployment ve Rollout Stratejileri

  • Deployment ile stateless uygulama dağıtma
  • Rolling update parametrelerini ayarlama ile kesintiyi azaltma
  • Rollback akışını yönetme ve hata sonrası güvenle geri dönme çünkü sürüm riski kontrol edilir
  • Revision history ile sürüm izlenebilirliği kurma
  • Blue-green yaklaşımını mantık düzeyinde kurgulama

6. StatefulSet ve Kalıcı Uygulama Senaryoları

  • StatefulSet kullanım gerekçesini netleştirme
  • Stable identity ve ordered rollout mantığını uygulama ile veri tutarlılığı sağlama
  • Headless service ile stateful servis keşfini kurma çünkü bağlantı yönetimi doğru çalışır
  • PVC şablonlarıyla kalıcı depolamayı otomatik bağlama
  • Stateful uygulamalarda güncelleme risklerini azaltma

7. Services ve Ingress ile Trafik Yönetimi

  • ClusterIP, NodePort ve LoadBalancer farklarını kavrama
  • Service selector stratejisi ile doğru yönlendirme kurma
  • Ingress controller mantığını anlama ve route kurma çünkü dış erişim yönetilebilir hale gelir
  • Path ve host bazlı yönlendirme örnekleri oluşturma
  • TLS terminasyonu yaklaşımını temel seviyede kurgulama

8. ConfigMap ve Secret Yönetimi

  • Konfigürasyonu imajdan ayırma yaklaşımını benimseme
  • ConfigMap’i environment veya volume olarak kullanma ile esneklik sağlama
  • Secret yönetimini güvenli şekilde planlama ve erişimi sınırlama çünkü sızıntı riski düşer
  • Değişiklik sonrası reload stratejilerini değerlendirme
  • Konfigürasyon versiyonlama yaklaşımını tartışma

9. Kaynak Yönetimi: Requests, Limits ve QoS

  • Requests ve limits farkını doğru uygulama
  • Resource planning ile kapasiteyi öngörülebilir kılma
  • QoS sınıfları üzerinden davranışı açıklama ve darboğazları önleme çünkü performans stabil kalır
  • OOMKill ve throttling etkilerini yorumlama
  • Doğru limit stratejisiyle maliyet ve performans dengesini kurma

10. Ölçekleme: HPA, VPA ve Cluster Autoscaler Mantığı

  • Horizontal Pod Autoscaler ile otomatik ölçekleme kurma
  • Metric tabanlı tetikleme yaklaşımı ile doğru eşik seçme
  • VPA mantığını anlama ve uygun senaryoda kullanma çünkü kaynak ayarı sürdürülebilir olur
  • Cluster autoscaling kavramını operasyonel çerçevede değerlendirme
  • Ölçekleme testleriyle davranışı gözlemleme

11. RBAC ve Yetkilendirme Modeli

  • ServiceAccount kullanımını doğru konumlandırma
  • Role ve ClusterRole tasarlama ile en az yetki yaklaşımı kurma
  • RoleBinding ve ClusterRoleBinding ilişkisini açıklama çünkü erişim yönetimi tutarlı olur
  • kubectl auth can-i ile izin doğrulama
  • Yetki hatalarını hızlı teşhis etme

12. Network Policies ve Güvenlik Yaklaşımları

  • Pod-to-pod trafiği kontrol etme mantığını kavrama
  • NetworkPolicy yazarak erişimi sınırlandırma ile güvenliği artırma
  • Default deny yaklaşımını kademeli uygulama ve servis kesintisini önleme çünkü geçiş daha kontrollü olur
  • Ingress ve egress kurallarını senaryoya göre seçme
  • Güvenlik testleriyle politika etkisini doğrulama

13. Observability: Log, Metric ve Temel İzleme

  • Log akışını merkezi hale getirme yaklaşımını anlama
  • Metric türlerini ayırt etme ile doğru dashboard kurgulama
  • Temel alert kurallarını planlama ve gürültüyü azaltma çünkü ekip odaklı uyarı alır
  • Resource ve uygulama metriklerini birlikte yorumlama
  • İzleme çıktılarıyla kapasite kararlarını destekleme

14. Troubleshooting ve Operasyonel Sorun Giderme

  • Event ve describe çıktılarıyla hızlı teşhis yapma
  • Pod scheduling sorunlarını node ve taint üzerinden analiz etme
  • Image pull, DNS ve bağlantı problemlerini adım adım çözme çünkü kök neden daha hızlı bulunur
  • Exec ve port-forward ile uygulama içi kontroller gerçekleştirme
  • Operasyon check-list yaklaşımı ile tekrar eden hataları azaltma

15. Ek Modül: Helm ve Kustomize ile Paketleme Stratejileri

  • Helm chart yapısını hızlıca tanıma
  • Values yaklaşımıyla ortam bazlı konfigürasyon yönetme ile standardı artırma
  • Kustomize overlay yapısını kurgulama ve sürümleme stratejisi geliştirme çünkü değişiklikler daha izlenebilir olur
  • Release yönetimi ve rollback süreçlerini planlama
  • Paketleme yaklaşımıyla takım içi paylaşımı kolaylaştırma

Kubernetes Eğitimi ile İlgili
Sıkça Sorulan Sorular ve Cevapları


Kubernetes’te Pod, Deployment ve StatefulSet seçim kriteri nedir?

Pod en temel çalışma birimidir; genellikle doğrudan yönetilmez. Deployment stateless uygulamalar için ölçekleme ve rollout yönetimi sağlar. StatefulSet ise kalıcı kimlik, sıralı dağıtım ve veri tutarlılığı gerektiren stateful uygulamalarda tercih edilir.

Service ve Ingress arasındaki temel farklar nelerdir?

Service, küme içinde stabil bir erişim noktası sağlayarak Pod’lara trafiği yönlendirir. Ingress ise dış dünyadan gelen HTTP/HTTPS trafiğini host/path kurallarıyla yönetir ve genellikle TLS ile birlikte çalışarak giriş trafiğini merkezileştirir.

Requests/limits ayarları performansı nasıl etkiler?

Requests scheduler’ın yerleştirme kararlarını etkiler ve minimum garanti sağlar. Limits ise bir Pod’un tüketebileceği üst sınırı belirler. Yanlış ayarlar throttling, OOMKill ve kaynak israfına yol açabilir; doğru planlama performans ve maliyet dengesini kurar.

Kubernetes’te sorun giderme için hangi yaklaşım izlenmelidir?

Önce Pod event’leri ve describe çıktıları incelenir, ardından loglar ve readiness/liveness kontrolleri değerlendirilir. Scheduling, image pull, DNS ve network katmanları sırayla kontrol edilerek kök neden hızlıca izole edilir.

Eğitim içeriğini ihtiyaçlarımıza göre özelleştirebilir misiniz?

Evet. Eğitim öncesinde ihtiyaç analizi yaparak içerik ve örnekleri ekibinize göre uyarlayabiliriz. Modüller eklenebilir, bazı başlıklar derinleştirilebilir veya sadeleştirilebilir.

Eğitim yeri, yöntemi ve sertifikasyon süreci nasıl ilerliyor?

Eğitim online (canlı) veya yerinde gerçekleştirilebilir; tarih ve saatleri ekibinizin uygunluğuna göre planlarız. Program sonunda katılım sertifikası verilir; talep edilirse ölçme-değerlendirme ve raporlama eklenebilir.

 VERİ AKADEMİ