문서 목차
ORKESTRIX설치
Redis
고성능 인메모리 데이터 캐시 Redis 를 구성하고, 센티넬(Sentinel) 기반 고가용성을 제공합니다. 마스터 장애 시 레플리카가 자동으로 마스터로 승격됩니다. 웹 기반 관리 도구( RedisInsight )로 데이터를 조회·관리할 수 있습니다.
QUANTUM C&S
고성능 인메모리 데이터 캐시 Redis를 구성하고, 센티넬(Sentinel) 기반 고가용성을 제공합니다. 마스터 장애 시 레플리카가 자동으로 마스터로 승격됩니다. 웹 기반 관리 도구(RedisInsight)로 데이터를 조회 · 관리할 수 있습니다.
설정값
inventory/qks/group_vars/all/all-k8s.yaml:
qks_redis_enabled: true
qks_redis_version: 28.2.4
qks_redis_architecture: replication
qks_redis_replicas: 3
qks_redis_sentinel_enabled: true
qks_redis_storage_size: 10Gi
qks_redis_admin_version: "2.46.0"
qks_redis_admin_fqdn: "redis.{{ kube_default_domain }}"
실행
./install.sh ubuntu plays/qks-redis.yaml
설치 흐름
./install.sh ubuntu plays/qks-redis.yaml
├─ 1. 관리 UI 접속 도메인을 각 노드 /etc/hosts에 등록
├─ 2. Helm 저장소 등록 ('bitnami')
├─ 3. 네임스페이스 생성
├─ 4. Helm으로 Redis 배포 (bitnami/redis 차트, 센티넬 기반 복제 구성)
├─ 5. RedisInsight 매니페스트 템플릿 생성
└─ 6. RedisInsight 매니페스트 적용 (Deployment+Service+Ingress)
설치 확인
kubectl get pods -n <qks_redis_namespace> -l app.kubernetes.io/instance=<qks_redis_release>
Redis 노드 파드(레플리카 수만큼) 전부 Running이어야 합니다.
실제 동작 확인
역할 확인:
kubectl exec -n <ns> <qks_redis_release>-node-0 -c redis -- redis-cli ROLE
캐싱 + 복제 확인:
kubectl exec -n <ns> <qks_redis_release>-node-0 -c redis -- redis-cli SET gs_test "hello"
kubectl exec -n <ns> <qks_redis_release>-node-1 -c redis -- redis-cli GET gs_test
슬레이브 노드에서도 같은 값이 조회되면 복제가 정상입니다.
센티넬 자동 장애조치 확인:
kubectl delete pod -n <ns> <qks_redis_release>-node-0 # 현재 마스터 강제 종료
# 30~40초 후
kubectl exec -n <ns> <qks_redis_release>-node-1 -c redis -- redis-cli ROLE
다른 노드가 자동으로 master로 승격되면 정상입니다. 데이터도 그대로 보존되어 있어야 합니다.
관리 UI 확인:
curl -k -s https://<qks_redis_admin_fqdn>/api/health/
{"status":"up"}이 반환되면 정상입니다.