🚀 Kubernetes Üzerinde Redis + Sentinel Kurulumu (Helm ile)

Modern uygulamalarda yüksek erişilebilirlik (HA) ve otomatik failover büyük önem taşıyor. Redis gibi bellek içi veritabanları da kritik görevlerde kullanıldığında kesintisiz çalışmalı. İşte burada Redis Sentinel devreye giriyor.

Bu yazıda Kubernetes ortamında Helm chart kullanarak Redis + Sentinel kurulumu yapacağız.


🔎 Redis Sentinel Nedir?

  • Redis Master: Yazma işlemlerinin yapıldığı ana sunucu
  • Redis Replica: Master’ın kopyaları, okuma yükünü paylaşır
  • Sentinel: Master’ı izler, bir sorun olduğunda otomatik failover gerçekleştirir

Yani Redis Sentinel sayesinde:

  • Master node down olursa → Replica otomatik master seçilir
  • Uygulamalar kesinti yaşamadan çalışmaya devam eder

📦 Helm Chart Yapısı

Redis-Sentinel-Helm/ klasöründe aşağıdaki dosyalar yer alıyor:

  • Chart.yaml → Chart bilgileri
  • values.yaml → Redis versiyonu, parola, kaynak limitleri, PVC ayarları
  • templates/ → Kubernetes YAML şablonları (Namespace, StatefulSet, Service, ConfigMap, Secret, PodDisruptionBudget)

⚙️ Kurulum Adımları

1️⃣ Chart dizinine girin:

cd Redis-Sentinel-Helm

2️⃣ Kurulumu gerçekleştirin:

helm install redis-cluster . -n redis-cluster --create-namespace

3️⃣ Pod durumunu kontrol edin:

kubectl get pods -n redis-cluster

4️⃣ Sentinel’e bağlanın:

kubectl exec -it <sentinel-pod-name> -n redis-cluster -- redis-cli -p 26379

kubectl -n redis exec -it redis-0 -- redis-cli -a 'redisPassword info replication
kubectl -n redis exec -it redis-1 -- redis-cli -a 'redisPassword' role
kubectl -n redis exec -it redis-sentinel-0 -- redis-cli -p 26379 sentinel master mymaster


🔑 Önemli Notlar

  • Parola Yönetimi
    Redis parolası values.yaml altında tanımlı ve Secret olarak podlara aktarılır.
  • Persistence
    Redis verisi için PersistentVolumeClaim (PVC) kullanılır. Storage boyutu ve storageClass ihtiyaca göre güncellenebilir.
  • Kaynak Limitleri
    CPU/Memory request & limit değerleri values.yaml üzerinden değiştirilebilir.
  • HA & Test
    Podlardan birini silerek failover testleri yapılabilir. Sentinel otomatik olarak yeni master seçecektir.

📊 Sonuç

Bu kurulum ile Kubernetes üzerinde:

  • Redis + Sentinel ile yüksek erişilebilirlik sağlanır
  • Otomatik failover sayesinde kesinti riskleri azalır
  • Helm chart ile kurulum kolaylaşır ve tekrar edilebilir hale gelir

✍️ Sen de Kubernetes ortamında Redis kullanıyorsan, mutlaka Sentinel ile yüksek erişilebilirliği düşünmelisin.

Bu yapı, kalebasiyakup/docker-examples GitHub reposunun Redis-Sentinel senaryosuna odaklanıyor.

Bunlar da hoşunuza gidebilir...