안녕하세요
지금까지 Redis 유료화 및 Redis vs Valkey에 대해 설명 드렸습니다
<이전 글>
- 2026.01.05 - [IT/기타] - Redis 유료화 사태 총정리: "내 서버 요금, 정말 폭등하나요?(feat. RSALv2,SSPLv1)
- 2026.01.05 - [IT/기타] - Redis vs Valkey: 멀티 스레드로 무장한 Valkey가 Redis를 압도하는 이유
오늘은 AWS Redis를 Valkey로 마이그레이션 하는 방법에 대해 공유 드리도록 하겠습니다.
1. 왜 지금 옮겨야 하나요? (40% 절감의 매직)
Redis에서 Valkey로 마이그레이션을 할 경우 비용 절감 및 성능은 놀라울 정도로 좋아집니다.
- 인프라 비용: 월 $5,000 ➡️ $3,000 (40% 절감!)
- 성능: 응답 속도(Latency) 변화 없음, 처리량(Throughput) 증가.
AWS는 ElastiCache Serverless 사용 시 Valkey를 선택하면 33%, 노드 기반은 20% 더 저렴한 요금을 책정했습니다. 안 바꾸면 손해인 상황이죠.

2. 실전! 무중단 마이그레이션 4단계
가장 안전한 RIOT(Redis Input/Output Tool) 툴을 활용한 방식을 소개합니다. 서비스 중단 없이 데이터를 실시간으로 복제할 수 있습니다.
Step 1. 신규 Valkey 클러스터 생성 (Target)
AWS 콘솔에서 Create Cluster를 누르고, 엔진으로 Valkey를 선택합니다.
- 꿀팁: 인스턴스 타입은 Graviton (r7g 등) 계열을 선택하세요. Valkey와 궁합이 좋아 성능이 더 잘 나옵니다.
Step 2. 데이터 실시간 동기화 (Sync)
기존 Redis(Source)에서 Valkey(Target)로 데이터를 쏘아줍니다. riot 를 설치하고 아래 명령어를 실행하세요.
1) 설치(MAC) :
brew install redis/tap/riot
# 설치 확인
riot --version
2) 설치(Linux) :
리눅스 서버에서는 직접 바이너리 파일을 다운로드하는 것이 가장 확실합니다. riot은 자바(Java) 기반이므로, Java 11 이상이 설치되어 있어야 합니다.
# 1. 최신 버전 다운로드 (버전 번호는 최신 릴리스 확인 필요)
wget https://github.com/redis/riot/releases/latest/download/riot-standalone-linux-x86_64.zip
# 2. 압축 해제
unzip riot-standalone-linux-x86_64.zip
# 3. 실행 권한 부여 및 실행 테스트
cd riot-standalone-linux-x86_64/bin
./riot --help
3) 동기화 기본 명령어 (Linux/Mac 공통):
# 기본 문법: riot -h <소스주소> -p <소스포트> replicate -h <타겟주소> -p <타겟포트> --mode <모드>
./riot -h my-old-redis.xxxx.cache.amazonaws.com -p 6379 \
replicate \
-h my-new-valkey.xxxx.cache.amazonaws.com -p 6379 \
--mode live
옵션 :
- -h: 호스트 주소 (Endpoint)
- -p: 포트 번호 (보통 6379)
- replicate: 복제 명령을 실행하겠다는 뜻
- --mode live: (중요) 초기 데이터를 복제한 후에도, 실시간으로 들어오는 변경 사항까지 계속 동기화합니다. (CDC 방식)
- (선택) --source-password <비번>: 기존 Redis에 비밀번호가 있다면 추가하세요.
- (선택) --target-password <비번>: 신규 Valkey에 비밀번호가 있다면 추가하세요.
이 명령어가 실행되는 터미널 창을 끄지 마세요! 명령어가 돌아가는 동안, 기존 Redis에 들어오는 데이터는 자동으로 Valkey에도 쌓이게 됩니다. 두 DB가 '동기화(Sync)' 상태가 되는 것이죠
이러면 기존 데이터는 물론, 마이그레이션 도중에 들어오는 새로운 데이터까지 계속 동기화됩니다.
Step 3. 애플리케이션 연결 변경 (Switch)
- 모니터링 툴을 보고 두 DB의 데이터 개수(Key Count)가 똑같은지 확인합니다.
- 애플리케이션 배포 설정에서 DB 주소만 Valkey 엔드포인트로 싹 바꿔서 배포합니다. (Valkey는 Redis와 100% 호환되니 코드 수정은 필요 없습니다)
Step 4. 기존 클러스터 종료 (Cost Cut)
- 모든 트래픽이 Valkey로 넘어간 것을 확인했다면? 기존 Redis 클러스터를 삭제합니다.
- 고생하셨습니다. 이제 다음 달 고지서부터 할인된 요금을 확인하실 수 있습니다.
3. 주의사항 (이것만은 체크!)
- Azure 사용자: Azure는 Valkey를 공식 지원하지 않습니다. AKS(쿠버네티스)에 직접 설치하거나, Azure Managed Redis로 업그레이드해야 합니다.
- 호환성 체크: Redis 7.2 기반이므로 대부분 호환되지만, 아주 특수한 Redis Module(RedisGraph 등)을 쓰고 있다면 대체재를 확인해야 합니다.
4. 마치며
여러분, 기술의 변화는 두렵기도 하지만 기회이기도 합니다. 남들이 "어떡하지?" 하고 걱정할 때, 발 빠르게 Valkey로 전환해서 비용을 아끼고 성능을 높인다면 그게 바로 경쟁력이지 않을까 생각합니다.
오늘 공유 드린 Valkey 마이그레이션에 대한 내용이 여러분의 업무에 도움이 되길 바랍니다. 감사합니다!

5. 참조 링크
- Valkey 마이그레이션으로 비용 40% 절감한 사례 (Medium)
- https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/OnlineMigration.html
- https://redis.io/blog/redis-adopts-dual-source-available-licensing/
- https://github.com/redis/riot
'IT > 기타' 카테고리의 다른 글
| Windows 에서 특정 포트 사용하는 프로세스 죽이기(CMD 활용) (0) | 2026.01.09 |
|---|---|
| VS Code에서 Springboot JVM Arguments 전달하기 (0) | 2026.01.06 |
| Redis vs Valkey: 멀티 스레드로 무장한 Valkey가 Redis를 압도하는 이유 (0) | 2026.01.05 |
| Redis 유료화 사태 총정리: "내 서버 요금, 정말 폭등하나요?(feat. RSALv2,SSPLv1) (0) | 2026.01.05 |
| Oracle 쿼리 VS PostgreSQL 쿼리 문법 비교 분석🐘 (0) | 2025.12.04 |
댓글