Giriş: Kubernetes Nedir, Docker vs Kubernetes Farkı ve Neden Büyük Projelerde Vazgeçilmez?
Kubernetes (K8s), Google tarafından geliştirilen açık kaynaklı bir container orchestration platformudur. 2026 yılında, CNCF'nin son raporlarına göre Kubernetes üretimde %82 oranında benimsenmiş durumda ve AI/ML workloads'larının ana motoru haline gelmiş. Temel amacı, container'ları (örneğin Docker tabanlı) otomatik yönetmek: dağıtım, ölçekleme, güncelleme ve self-healing.

Docker vs Kubernetes Farkı:
-
Docker: Tek container'ları oluşturur ve çalıştırır. Lokal geliştirme için ideal, ama birden fazla container'ı yönetmekte yetersiz kalır.
-
Kubernetes: Docker gibi araçlarla oluşturulan container'ları orchestrate eder. Pod'lar, deployment'lar ve service'ler ile yüzlerce container'ı koordine eder.
Neden vazgeçilmez?
-
Otomatik Ölçekleme: Horizontal Pod Autoscaler (HPA) ile trafik arttığında pod'ları otomatik çoğaltır; 2026'da AI workloads için GPU tabanlı ölçekleme standart.
-
Rolling Updates: Sıfır downtime ile yeni versiyonları deploy et; canary/blue-green stratejileriyle riski minimize et.
-
Self-Healing: Arızalı pod'ları otomatik restart eder veya değiştirir; node failure'larında workload'ları başka node'lara taşır.
-
Büyük projelerde: Mikroservis mimarilerinde vazgeçilmez; Fairwinds'in 2026 raporuna göre AI backbone olarak kullanılıyor, platform engineering ile standartlaştırılıyor.
Kaliteweb olarak bu rehberde 2026 güncel pratikleri adım adım anlatacağız: temel kavramlardan production setup'a, güvenlikten troubleshooting'e.
Temel Kavramlar: Pod, Deployment, Service, ReplicaSet, Namespace, ConfigMap/Secret
Kubernetes'in yapı taşları:
-
Pod: En küçük birim; bir veya daha fazla container'ı kapsar. Aynı pod'daki container'lar network ve storage'ı paylaşır. Örnek: Bir web app ve sidecar logging container.
-
Deployment: Pod'ları yönetir; replica sayısı, update stratejisi belirler. Self-healing sağlar.
-
ReplicaSet: Deployment'ın arkasında çalışır; istenen pod sayısını korur.
-
Service: Pod'lara sabit IP/DNS sağlar. Türleri: ClusterIP (internal), NodePort (external test), LoadBalancer (cloud LB).
-
Namespace: Kaynakları mantıksal ayırır; dev/staging/prod için kullanılır.
-
ConfigMap/Secret: Konfigürasyon verilerini (env vars, files) depolar. Secret şifreli (base64, ama external vault önerilir).
2026 güncel: Pod Security Standards (PSS) ile pod'lar otomatik güvenli hale getiriliyor; Namespace'lerde resource quota'lar AI workloads için zorunlu.
Adım Adım Kurulum ve İlk Proje: Minikube ile Local Test, Kubectl Komutları, YAML Manifest Örnekleri
Kurulum (2026 Tavsiyesi):
-
Minikube: Lokal test için en kolay.
brew install minikube(Mac) veyacurl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64(Linux). -
Kubectl: Kubernetes CLI.
brew install kubectlveya resmi docs'tan indir. -
Başlat:
minikube start --driver=docker(Docker driver ile).
İlk Proje: Basit Nginx Deployment
-
YAML Dosyası Oluştur (nginx-deployment.yaml):
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.25 ports: - containerPort: 80 -
Service YAML (nginx-service.yaml):
apiVersion: v1 kind: Service metadata: name: nginx-service spec: selector: app: nginx ports: - protocol: TCP port: 80 targetPort: 80 type: LoadBalancer -
Apply:
kubectl apply -f nginx-deployment.yamlvekubectl apply -f nginx-service.yaml. -
Kontrol Komutları:
-
kubectl get pods– Pod'ları listele. -
kubectl get deployments– Deployment durum. -
kubectl get services– Service IP'si. -
kubectl scale deployment nginx-deployment --replicas=5– Ölçekle. -
kubectl rollout status deployment/nginx-deployment– Update status. -
kubectl logs <pod-name>– Log'ları gör.
-
-
Erişim:
minikube service nginx-serviceile tarayıcıda aç.
Checklist: İlk Deployment Öncesi
-
[ ] Minikube/kubectl yüklü mü?
-
[ ] YAML syntax hatasız mı? (kubectl apply --dry-run=client -f file.yaml ile test et)
-
[ ] Image pull policy: Always mı? (Güncel image için)
-
[ ] Resource limits tanımlı mı? (cpu: 100m, memory: 128Mi)
-
[ ] Liveness/Readiness probe ekli mi? (Örnek: httpGet path: /, port: 80)
Production-Ready Setup: EKS/AKS/GKE vs Self-Hosted Kubeadm, Helm Chart'ları ile Kolay Deployment

Managed vs Self-Hosted:
-
Managed (2026 Tavsiyesi): AWS EKS, Azure AKS, Google GKE. AI workloads için GPU node pool'lar otomatik. Maliyet: EKS $0.10/saat/cluster + EC2.
- Avantaj: Auto-upgrade, security patching, integration (EKS Blueprint'lar ile).
-
Self-Hosted (Kubeadm): Kaliteweb VPS'te kur.
kubeadm initile master,kubeadm joinile worker ekle. 2026'da Kubeadm v1.35+ cgroup v2 varsayılan.
Helm ile Deployment:
Helm: "Kubernetes'in package manager'ı". helm install my-nginx bitnami/nginx ile hazır chart deploy et.
- Örnek: Prometheus Helm chart'ı:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts→helm install monitoring prometheus-community/kube-prometheus-stack.
2026 güncel: Cluster API v1.12 ile cluster yönetimi declarative; in-place updates ile downtime azalıyor.
Monitoring ve Logging: Prometheus + Grafana Entegrasyonu, ELK Stack
Prometheus + Grafana:
-
Prometheus: Metric toplar (CPU, memory, network).
-
Kurulum: Helm ile
kube-prometheus-stack. -
Grafana: Dashboard'lar; alert'ler Slack/Email'e.
-
2026 Trend: OpenTelemetry standartlaşıyor; eBPF ile kernel-level visibility (deeper observability).
ELK Stack (Elasticsearch, Logstash, Kibana):
-
Fluentd ile log topla → Elasticsearch'e yolla → Kibana'da görselleştir.
-
Entegrasyon:
helm install elasticsearch elastic/elasticsearch.
İpuçları: SLO'lar tanımla (uptime %99.9); AI-assisted signal processing ile anomaly detection.
Güvenlik En İyi Uygulamaları: RBAC, Network Policies, Pod Security Standards
RBAC (Role-Based Access Control):
-
Roller tanımla:
kubectl create role pod-reader --verb=get --verb=list --resource=pods. -
Binding:
kubectl create rolebinding read-pods --role=pod-reader --user=dev-user.
Network Policies: Trafiği kısıtla.
-
Örnek YAML:
apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: allow-web-to-db spec: podSelector: matchLabels: role: db ingress: - from: - podSelector: matchLabels: role: web
Pod Security Standards (PSS): Baseline/Restricted profilleri uygula; privileged container'ları yasakla.
2026 Güncel: v1.35 security update ile kubeconfig exec plugin allowlist; zero-trust prensipleri standart. OWASP Kubernetes Top 10'a göre audit yap.

Yaygın Hatalar ve Troubleshooting: Pod Crash, Service Discovery Sorunları
Yaygın Hatalar:
-
Pod Crash: Yanlış image tag veya env vars.
-
Service Discovery: Label selector mismatch.
-
Resource Starvation: Limits tanımlamamak → OOMKilled.
-
Network Issues: CNI plugin hatası.
Troubleshooting Komutları:
-
kubectl describe pod <pod-name>– Events gör. -
kubectl exec -it <pod-name> -- /bin/sh– İçine gir. -
kubectl port-forward service/nginx 8080:80– Local test. -
kubectl debug node/<node-name> -it --image=busybox– Node debug.
2026 İpucu: Checkpoint/Restore WG ile pod migration kolaylaşıyor; crash-loop'larda AI-assisted debugging.
Gerçek Dünya Örnekleri: Mikroservis Mimarisi, CI/CD ile GitOps: ArgoCD/Flux
Mikroservis Örneği: E-ticaret app: User service, Product service, Order service ayrı deployment'lar; Istio service mesh ile traffic management.
GitOps ile CI/CD:
-
ArgoCD: Git repo'yu izler, otomatik sync eder.
helm install argocd argo/argo-cd. -
Flux: Benzer, lightweight. 2026'da GitOps %80 adoption; promotion pipeline ile enterprise uyumlu.
Başarı Hikayesi: Bir fintech şirketi EKS + ArgoCD ile deployment süresini 1 saatten 5 dakikaya düşürdü; AI inference için GPU scheduling kullandı.
Sonuç + Gelecek Trendleri: eBPF, Service Mesh gibi Istio
Kubernetes 2026'da AI-optimized runtime: MLOps için GPU scheduling, edge clusters için real-time AI.
Gelecek Trendleri:
-
eBPF: Kernel-level observability; telemetry standardization, AI-assisted processing.
-
Service Mesh (Istio/Linkerd): Traffic encryption, mTLS, canary routing standart.
-
Wasm: Lightweight runtime, pod-centric scheduler makeover.
-
GitOps + Platform Engineering: Internal Developer Platforms ile standardization.
-
Cost Optimization: FinOps entegrasyonu, TCO scrutiny.
-
Security: Runtime threat detection, zero-trust native.
-
AI Convergence: Kubernetes unified hybrid cloud platform; stateful AI workloads.