Blog'a Dön
DevOps2 min read20 Şubat 2025

Kubernetes Nedir? Kurulum ve Kullanım Rehberi (2025)

Kubernetes nedir, ne işe yarar, nasıl kurulur? Container orkestrasyonuna giriş ve Türkiye'de K8s kullanım senaryoları.

KubernetesK8sDevOpscontaineraltyapı

Kubernetes (kısaca K8s), container'larınızı otomatik olarak dağıtan, ölçeklendiren ve yöneten açık kaynaklı bir orkestrasyon platformudur. Google tarafından geliştirilip 2014'te açık kaynak olarak paylaşılan K8s, bugün dünya genelinde binlerce şirket tarafından üretim altyapısı olarak kullanılmaktadır.

Kubernetes Neden Gerekli?

Docker ile container oluşturmak kolaydır. Ama şu soruları düşünün:

  • 50 container'ı nasıl yöneteceksiniz?
  • Bir sunucu çökerse ne olacak?
  • Trafik artınca otomatik olarak ölçeklendirmek mümkün mü?
  • Güncelleme sırasında downtime olmadan deployment nasıl yapılır?

İşte Kubernetes bu soruların hepsini çözer.

Temel Kubernetes Kavramları

Pod

En küçük dağıtım birimidir. Bir veya birden fazla container içerir. Genellikle bir uygulama = bir pod.

Deployment

Pod'ların kaç replika çalışacağını ve nasıl güncelleneceğini tanımlar.

Service

Pod'lara sabit bir IP/DNS adresi sağlar. Pod'lar ölüp yeniden başlasa bile Service aynı kalır.

Ingress

Dış trafiği cluster'a alır, hangi trafiğin hangi servise gideceğini belirler (reverse proxy gibi).

Namespace

Cluster içinde mantıksal izolasyon sağlar. Prod/staging/dev ortamlarını aynı cluster'da ayırabilirsiniz.

Kubernetes Kurulumu

Geliştirme Ortamı: Minikube

# macOS
brew install minikube
minikube start

# Cluster durumu
kubectl get nodes

Üretim: kubeadm ile On-Premise

# Her node'a kurulum
apt-get install -y kubelet kubeadm kubectl

# Control plane başlatma
kubeadm init --pod-network-cidr=10.244.0.0/16

# Worker node ekleme
kubeadm join <control-plane-ip>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>

Managed Kubernetes

Kendi altyapınızı yönetmek istemiyorsanız:

  • AWS EKS
  • Google GKE
  • Azure AKS
  • Hetzner K8s (maliyet odaklı)

Örnek Deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web-app
  template:
    metadata:
      labels:
        app: web-app
    spec:
      containers:
      - name: web
        image: myapp:v1.2.0
        ports:
        - containerPort: 3000
        resources:
          requests:
            memory: "128Mi"
            cpu: "250m"
          limits:
            memory: "256Mi"
            cpu: "500m"

Kubernetes'in Türkiye'deki Kullanım Senaryoları

Viva Yazılım olarak K8s'i özellikle şu senaryolarda uyguluyoruz:

  1. Yoğun dönem uygulamaları: VivaKurban gibi kurban döneminde ani trafik artışı yaşayan sistemler
  2. Mikro servis mimarisi: Birden fazla servisi ayrı ayrı ölçeklendirme ihtiyacı
  3. CI/CD pipeline: Her deployment'ı sıfır downtime ile yapma
  4. Multi-tenant SaaS: Birden fazla müşteriye izole ortamlar

Monitoring ve İzleme

K8s cluster'ınızı izlemek için standart stack:

  • Prometheus: Metrik toplama
  • Grafana: Dashboard ve görselleştirme
  • Alertmanager: Alarm ve bildirimler
  • Loki: Log toplama

Viva Yazılım DevOps Hizmetleri

Kubernetes kurulumu, CI/CD pipeline ve monitoring altyapısı için profesyonel destek alabilirsiniz. Ekibimiz K8s on-premise, EKS, GKE ve Hetzner üzerinde aktif deneyime sahiptir.

DevOps hizmetlerimiz hakkında detaylı bilgi alın →

Bu konuda uzman desteği alın

Viva Yazılım ekibi 30 yıllık deneyimiyle yanınızda.

Bizi AraDemo Al