※ Redis 클러스터에서 추가 메모리를 해제할 수 없는 경우 OOM (Out Of Memory) 메세지가 발생된다.
: 지속적으로 해당 문제 발생 시, 텐센트 Redis 메모리를 비 정상적으로 많이 잡아 먹을 수 있음.
1. 해결 방법
: Redis 설정에서, maxmemory-policy 설정 값을 변경해준다.
※ maxmemory-policy : Redis Memory가 가득 찼을 때, 기존 데이터를 어떻게 처리할 지에 대한 옵션
2. maxmemory-policy 옵션 정리
옵션 값 | 설명 |
noeviction (기본 값) | 기존를 삭제하지 않음. 메모리 한계에 도달 시 OOM 오류를 반환하며 새로운 데이터가 저장되지 않음. |
allkeys-lru | 모든 것 중에서 * LRU 기준으로 삭제하여 공간을 확보해준다. |
volatile-lru | expire set을 가진 것 중 LRU 기준으로 삭제하여 공간을 확보해준다. |
volatile-ttl | expire set을 가진 것 중 TTL이 짧은 것부터 삭제하여 공간을 확보해준다. |
allkeys-random | 모든 것 중에서 랜덤으로 삭제하여 공간을 확보해준다. |
volatile-random | expire set을 가진 것 중에서 랜덤으로 삭제하여 공간을 확보해준다. |
3. Redis 설정값 확인 및 변경 방법 * 텐센트 Redis Server 사용 기준
3-1. Redis 설정 옵션 확인 방법
A. Redis 콘솔 접속
B. 커맨드 라인에서 info memory 명령어를 통해 설정 정보를 확인
3-2. 설정값 변경 방법.
A. 해당 redis 인스턴스로 접근
B. 매개변수 세팅하는 부분에서, 원하는 설정 값 변경.
'Back-end > Server' 카테고리의 다른 글
(리눅스) vi 편집기에서 명령어를 통해 여러 줄 제거하기 (0) | 2023.05.17 |
---|---|
(리눅스) ssh, sshd 차이 및 ROOT LOGIN REFUSE FROM ~ 에러 처리 방법 (0) | 2022.12.29 |
scp를 통해 파일 전송하기 (0) | 2022.10.23 |
(리눅스) apt-get을 통해 yum 설치하기 (0) | 2022.09.28 |
BASH 취약점을 노린 SMTP 서버 공격 및 취약점 제거 방법 (0) | 2022.08.09 |