Kubernetes Üzerinde RedisInsight Kurulumu – Nedir, Ne İşe Yarar, Nasıl Kurulur?

Redis ekosistemini yönetmek ve gerçek zamanlı olarak izlemek için kullanılan en güçlü araçlardan biri olan RedisInsight, özellikle Kubernetes gibi dağıtık ortamlarda çalışan Redis cluster’larını kolayca görselleştirmek, performans analizleri yapmak ve komut çalıştırmak için ideal bir çözümdür.

Bu yazıda RedisInsight’ın ne olduğunu, neden kullanıldığını, lisans durumunu ve Kubernetes üzerinde nasıl deploy edildiğini adım adım anlatıyorum.


🔍 RedisInsight Nedir?

RedisInsight, Redis tarafından geliştirilen;
Redis, Redis Cluster, Redis Sentinel, Redis Enterprise, KeyDB gibi tüm Redis tabanlı sistemleri:

  • İzlemek (monitoring)
  • Veri yapısını görüntülemek
  • Komut çalıştırmak (CLI)
  • Key tarama & yönetimi
  • Memory ve latency analizleri
  • Performance metrics dashboard
  • Slowlog inceleme
  • Pub/Sub test arayüzü

gibi özelliklerle süper kolay yönetilebilir bir GUI aracıdır.

Tam anlamıyla Redis’in “Grafiksel Yönetim Konsolu (GUI)” diyebiliriz.


⭐ RedisInsight Neden Kullanılır?

RedisInsight özellikle şu konularda çok iş görür:

✔ 1. Anahtar Yönetimi

Key yapısını ağaç formatında gösterir.
TTL, type, size gibi bilgiler tek tıkla görünür.

✔ 2. Bellek ve Performans Analizi

Memory consumption, fragmentation, latency gibi metrikleri grafiklerle sunar.

✔ 3. CLI İçerisinde Komut Çalıştırma

Terminal açmanıza gerek kalmadan Redis komutları çalıştırabilirsiniz.

✔ 4. Slowlog ve Monitoring

Hangi komutlar yavaş çalışıyor?
Hangi key yüksek yük oluşturuyor?
Harika bir analiz ekranı vardır.

✔ 5. Cluster / Sentinel Uyumluluğu

Redis Cluster veya Sentinel topolojisini grafiksel olarak görürsünüz.

✔ 6. Geliştirici Dostu

JSON, Hash, Set, List, Stream gibi yapılar düzenlenebilir ve canlı görüntülenebilir.


📄 RedisInsight Lisans Durumu

RedisInsight, Redis tarafından geliştirilen tamamen ücretsiz bir uygulamadır.

  • Lisans: BSD + Redis Labs License
  • Kullanım: Ücretsiz
  • Platform: Windows, Linux, Mac, Docker, Kubernetes
  • Enterprise gerektirmez

Tamamen açık kaynak değildir ancak tüm özellikleri ücretsiz ve sınırsız kullanılabilir.


🧩 Kubernetes Üzerinde RedisInsight Nasıl Kurulur?

Aşağıdaki YAML manifest, RedisInsight’ın Kubernetes üzerinde PVC kullanarak persistent storage ile çalışmasını sağlar.

Bu yapı:

✔ Service
✔ PersistentVolumeClaim
✔ Deployment (init container dahil)
✔ Longhorn storage class
✔ /data mount
✔ Port 5540

içeren tam bir production-ready manifesttir.


📦 RedisInsight Kubernetes YAML (Tam Kurulum)

apiVersion: v1
kind: Service
metadata:
  name: redisinsight-service       # name should not be 'redisinsight'
                                   # since the service creates
                                   # environment variables that
                                   # conflicts with redisinsight
                                   # application's environment
                                   # variables `RI_APP_HOST` and
                                   # `RI_APP_PORT`
spec:
  type: ClusterIP
  ports:
    - port: 5540
      targetPort: 5540
  selector:
    app: redisinsight
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redisinsight-pv-claim
  labels:
    app: redisinsight
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 2Gi
  storageClassName: longhorn
---
# Redis Insight deployment with name 'redisinsight'
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redisinsight #deployment name
  labels:
    app: redisinsight #deployment label
spec:
  replicas: 1 #a single replica pod
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: redisinsight
  template:
    metadata:
      labels:
        app: redisinsight
    spec:
      volumes:
        - name: redisinsight
          persistentVolumeClaim:
            claimName: redisinsight-pv-claim
      initContainers:
        - name: init
          image: busybox
          command:
            - /bin/sh
            - '-c'
            - |
              chown -R 1000 /data
          volumeMounts:
            - name: redisinsight
              mountPath: /data
      containers:
        - name: redisinsight
          image: redis/redisinsight:latest
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: redisinsight
              mountPath: /data
          ports:
            - containerPort: 5540
              protocol: TCP


🌐 RedisInsight’a Erişim

ClusterIP servisi kullandığımız için port-forward ile erişebilirsiniz:

kubectl port-forward svc/redisinsight-service 5540:5540 -n <namespace>

Tarayıcıdan açın:

http://localhost:5540

Ardından Redis Cluster, Sentinel veya Standalone bağlantılarını ekleyebilir ve GUI üzerinden yönetmeye başlayabilirsiniz.


🎉 Sonuç: RedisInsight ile Güçlü Bir Redis Yönetim Paneli

Bu kurulum sayesinde Kubernetes ortamınızda:

✔ Redis browser
✔ Real-time monitoring
✔ Memory/latency analiz ekranı
✔ Slowlog analiz
✔ CLI destekli gelişmiş yönetim konsolu

tüm özellikleriyle çalışan bir RedisInsight arayüzü elde etmiş oluyorsunuz.

Redis cluster yönetimini çok daha kolaylaştırdığı için özellikle:

  • Microservice mimariler
  • Redis Sentinel/Cluster ortamları
  • Büyük key set’leri
  • Performans optimizasyonu isteyen altyapılar

gibi sistemlerde olmazsa olmaz bir araçtır.