레디스: Redis
레디스 7 - AWS ElastiCache 실습
https://youtu.be/T0A1M3z-ClE?si=xlwee4sMt7XjSf-K 이번 글에서는 Amazon Web Services 의 ElastiCache를 활용하여 Redis를 직접 운영하지 않고 사용하는 방법을 정리한다.
핵심 질문은 이것이다.
왜 Redis를 직접 EC2에 설치하지 않고 ElastiCache를 사용할까?
레디스 7 - AWS ElastiCache 실습
- 레디스 7 - AWS ElastiCache 실습
ElastiCache를 사용할 때 가장 중요한 포인트
ElastiCache의 핵심 가치는 단순하다.
“Redis 운영을 하지 않아도 된다”
- 장애 대응
- 백업
- 패치
- 클러스터 구성
👉 이 모든 것을 AWS가 대신 처리한다.
즉,
ElastiCache = Redis를 SaaS처럼 사용하는 방식
1. SaaS 개념과 ElastiCache의 위치
SaaS란?
SaaS(Software as a Service)는 소프트웨어 운영 자체를 클라우드가 대신하는 모델이다.
- 사용자는 기능만 사용
- 인프라/운영은 클라우드가 담당
ElastiCache가 제공하는 것
직접 Redis 운영 vs ElastiCache 비교:
| 항목 | EC2 Redis 직접 운영 | ElastiCache |
|---|---|---|
| 설치 | 직접 | 없음 |
| 장애 대응 | 직접 | AWS |
| 백업 | 직접 설정 | 자동 |
| 클러스터 구성 | 복잡 | 클릭 몇 번 |
| 운영 비용 | 낮음 | 상대적으로 높음 |
| 운영 난이도 | 높음 | 낮음 |
핵심 장점
- Redis Cluster 구성 자동화
- failover 자동 처리
- conf 설정 필요 없음
- 운영 부담 제거
👉 개발자는 “사용”에만 집중 가능
2. ElastiCache Redis 클러스터 생성
1. AWS 콘솔 진입
- AWS 콘솔 접속
- ElastiCache 검색
- Redis 클러스터 생성 클릭
2. 클러스터 생성 방식 선택
- “새 클러스터 구성 및 생성” 선택
- 커스텀 설정 가능
3. 기본 설정
- 클러스터 이름 설정
- 배포 위치: AWS 클라우드
- Multi-AZ 여부 설정
스케일 아웃 / 복제 설정
- 단일 노드 구성 가능
- 복제본 추가 가능 (Replica)
👉 실무 기준:
- 테스트 → 단일 노드
- 운영 → Multi-AZ + Replica 필수
4. 성능 설정
- Redis 엔진 버전 선택
- 포트: 기본 6379
- 인스턴스 타입 선택 (ex. t2.micro)
복제본 설정
- Replica 개수 설정
- 0 → 단일 노드
- 1 이상 → HA 구조
5. 네트워크 설정
- VPC / Subnet 설정
- 클러스터가 위치할 네트워크 결정
6. 보안 설정
보안 그룹
- 접근 가능한 IP 제한
암호화
- In-transit encryption (전송 암호화)
- At-rest encryption (저장 암호화)
👉 실무에서는 둘 다 활성화 권장
7. 추가 설정
- 자동 백업
- 자동 패치
- 로그 설정
8. 생성 완료
- 생성 시간: 약 10~15분
- 생성 후 엔드포인트 확인 가능
3. ElastiCache 접속 구조
여기서 중요한 개념이 하나 있다.
ElastiCache는 외부에서 직접 접근할 수 없다
왜 외부 접근이 안 될까?
- 보안 (Public 노출 방지)
- VPC 내부 서비스로 설계됨
접근 방법
👉 반드시 같은 VPC 내부에서 접근
대표적으로:
- EC2
- ECS
- EKS
- Lambda
4. EC2를 통한 접속
1. EC2 준비
- Redis CLI 설치된 EC2 필요
- 같은 VPC 내에 위치해야 함
2. 엔드포인트 확인
ElastiCache 콘솔에서 확인:
- Primary Endpoint
- Reader Endpoint
👉 이 값이 Redis의 IP 역할
3. Redis CLI 접속
redis-cli -h <엔드포인트> -p 6379
4. 접속 확인
PING
PONG
정상 연결 완료
실무에서 반드시 알아야 할 포인트
이 파트가 가장 중요하다.
1. EC2 Redis vs ElastiCache 선택 기준
EC2 Redis 선택
- 비용 최소화
- 간단한 서비스
- 운영 가능 인력 있음
ElastiCache 선택
- 장애 대응 중요
- 트래픽 많음
- 운영 리소스 부족
- HA 필수
👉 결론:
“Redis를 얼마나 중요하게 쓰느냐”가 선택 기준
2. ElastiCache의 숨겨진 비용
- 인스턴스 비용
- 네트워크 비용
- Multi-AZ 비용
👉 “운영 비용 vs 운영 리스크” 트레이드오프
3. 장애 관점
- EC2 Redis → 직접 대응
- ElastiCache → 자동 failover
👉 운영 안정성 차이 매우 큼
정리
이 글의 핵심은 한 줄이다.
ElastiCache는 Redis를 잘 쓰는 기술이 아니라 Redis를 “운영하지 않는 전략”이다
핵심 요약
- ElastiCache = Redis SaaS
- 운영/장애/백업을 AWS가 처리
- 외부 접근 불가 (VPC 내부 접근)
- EC2를 통해 접속
- HA/확장성 요구 시 필수 선택