Redis 모니터링
exemONE Redis 모니터링 상세 가이드
1. 지원 버전
참고 문서: Redis 모니터링 지원 버전, DB Agent 지원 환경
- Redis 3.0.0 이상 버전을 지원합니다.
2. 필수 권한
참고 문서: Redis 모니터링 권한
기본 모니터링 권한
다음 4가지 명령어 권한이 필요합니다:
| 권한 | 설명 |
|---|---|
| INFO | Redis 서버 정보 및 통계 조회 |
| PING | 서버 연결 상태 확인 |
| CLUSTER | 클러스터 상태 및 구성 조회 |
| CLIENT | 클라이언트 목록 및 정보 조회 |
추가 권한 (Slow Query 수집 시)
- SLOWLOG 설정이 되어 있는 경우, Slow Query 수집을 위해
SLOWLOG권한을 추가로 부여해야 합니다.
버전별 권한 설정
Redis 6.0 이상 (ACL 지원)
Redis 6.0 이상에서는 ACL(Access Control List)을 통해 사용자별 권한을 설정합니다:
ACL SETUSER user on >password +INFO +PING +CLUSTER +CLIENT +SLOWLOG
Redis 6.0 미만
- Redis 6.0 미만 버전에서는 user 개념이 없으므로, IP, Port, Password만으로 모니터링이 가능합니다.
redis.conf의requirepass설정만 되어 있으면 접속 및 모니터링이 가능합니다.
3. 사전 설정
참고 문서: Redis 모니터링 사전 설정
3-1. Slowlog 설정
redis.conf 설정 시 Redis 재기동이 필요합니다.
slowlog-log-slower-than n -- n(μs) 이상 실행된 쿼리 기록
slowlog-max-len n -- 최대 n(개)의 slowlog 저장
| 파라미터 | 설명 | 예시 |
|---|---|---|
slowlog-log-slower-than | 지정한 시간(마이크로초, μs) 이상 실행된 명령어를 Slow Query로 기록 | slowlog-log-slower-than 10000 (10ms 이상) |
slowlog-max-len | 저장할 Slow Query의 최대 개수 | slowlog-max-len 128 |
3-2. Latency Stats 설정
redis.conf 설정 시 Redis 재기동이 필요합니다.
latency-monitor-threshold n -- 지연 시간이 n(ms) 이상 발생하면 기록
| 파라미터 | 설명 | 예시 |
|---|---|---|
latency-monitor-threshold | 지정한 시간(밀리초, ms) 이상의 지연이 발생하면 기록 | latency-monitor-threshold 100 (100ms 이상) |
4. 추가 주의사항
- Slowlog 및 Latency Stats 설정은
redis.conf파일에 설정하는 경우 Redis 재기동이 필요합니다. 운영 환경에서는 유지보수 시간에 적용하는 것을 권장합니다. - Redis 6.0 미만 버전에서는 ACL이 지원되지 않으므로, 별도의 사용자 생성 없이 Password 기반으로 접속하여 모니터링합니다.
- Slowlog 수집을 원하는 경우 반드시 Redis에서 Slowlog 설정을 먼저 활성화하고, 모니터링 계정에
SLOWLOG권한을 추가해야 합니다. - Cluster 환경에서는 Instance Detail Slide의 Information 탭에서 Node ID, Status, Master Nodes, All Nodes 등 클러스터 정보를 확인할 수 있습니다.
- Cloud 환경에서의 Redis 모니터링 지원 여부는 DB Agent 지원 환경 문서의 Cloud 모니터링 지원 표에 Redis가 별도로 포함되어 있지 않으므로, 별도 확인이 필요합니다.