KAKAO.GG
Redis

Redis Cluster 설정 방법에 대해서 알아보자

65870717953200389e7820de
2025. 3. 18.
조회 379
#Redis Cluster 설정 방법, Redis 고가용성, Redis 샤딩, Redis Cluster 구성 예제, Redis 클러스터란

Redis는 빠르고 효율적인 인메모리 데이터 저장소로 많이 사용되며, Redis Cluster를 설정하면 데이터의 분산 저장과 고가용성(High Availability)을 구현할 수 있습니다. Redis Cluster의 기본 개념과 설정 방법을 쉽게 이해할 수 있도록 설명드리겠습니다.

 

Redis Cluster란?

Redis Cluster는 여러 개의 Redis 노드를 묶어 데이터를 분산 저장하고 자동으로 장애를 감지 및 복구하는 기능을 제공하는 구조입니다.

Redis Cluster의 핵심 개념

샤딩(Sharding) – 데이터를 여러 개의 노드에 나누어 저장
고가용성(HA, High Availability) – 마스터-슬레이브 구조를 통해 장애 발생 시 자동 복구
노드(Node) – 클러스터를 구성하는 개별 Redis 인스턴스
슬롯(Slot) – Redis Cluster는 0~16383까지의 해시 슬롯(Hash Slot)을 사용하여 데이터를 자동 분배

 

Redis Cluster 환경 구성

Redis Cluster를 설정하려면 최소 6개의 Redis 노드(3개의 마스터 + 3개의 슬레이브)가 필요합니다.
아래와 같은 단계로 Redis Cluster를 구성할 수 있습니다.

1. Redis 설치

먼저 Redis를 설치해야 합니다. Ubuntu 기준으로 설치하는 방법을 예제로 설명하겠습니다.

sudo apt update
sudo apt install redis-server

또는, 직접 컴파일하여 설치할 수도 있습니다.

wget http://download.redis.io/redis-stable.tar.gz
tar xzvf redis-stable.tar.gz
cd redis-stable
make
sudo make install

2. Redis 설정 파일(redis.conf) 수정

각 노드의 redis.conf 파일에서 클러스터 모드를 활성화해야 합니다.
아래 설정을 적용합니다.

# 클러스터 활성화
cluster-enabled yes
# 클러스터 노드 정보 저장 파일
cluster-config-file nodes.conf
# 백그라운드 실행
daemonize yes
# 포트 설정 (각 노드마다 다른 포트 사용)
port 7000

📌 포인트

  • cluster-enabled yes : Redis Cluster 기능 활성화

  • port : 각 Redis 노드의 포트를 다르게 설정 (예: 7000, 7001, 7002 등)

 

Redis Cluster 구성 및 실행

이제 6개의 Redis 인스턴스를 실행하고 클러스터를 생성하는 단계입니다.

1) Redis 노드 실행

각 노드(7000~7005 포트)를 실행합니다.

redis-server /path/to/redis7000.conf
redis-server /path/to/redis7001.conf
redis-server /path/to/redis7002.conf
redis-server /path/to/redis7003.conf
redis-server /path/to/redis7004.conf
redis-server /path/to/redis7005.conf

2) Redis Cluster 생성

이제 Redis 클러스터를 생성합니다.
아래 명령어를 사용하여 3개의 마스터와 3개의 슬레이브로 구성된 클러스터를 생성할 수 있습니다.

redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 \
127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 --cluster-replicas 1

🚀 위 명령은 3개의 마스터(7000, 7001, 7002)와 3개의 슬레이브(7003, 7004, 7005)를 자동으로 설정합니다.

3) 클러스터 상태 확인

클러스터가 정상적으로 구성되었는지 확인하려면 다음 명령을 실행합니다.

redis-cli -c -p 7000 cluster info

또는 각 노드의 상세 상태를 확인하려면

redis-cli -c -p 7000 cluster nodes

 

Redis Cluster 테스트

클러스터가 정상적으로 동작하는지 간단한 명령어로 테스트해볼 수 있습니다.

redis-cli -c -p 7000 set key1 "Hello Redis Cluster!"
redis-cli -c -p 7001 get key1

📌 키가 자동으로 분산 저장되므로, 다른 노드에서도 데이터를 조회할 수 있습니다.