ElastiCache Redis 노드의 사용 가능한 메모리가 Amazon ElastiCache 요금 페이지에 나와 있는 값보다 작습니다. 왜 그런가요?

2분 분량
0

Amazon ElastiCache Redis 노드의 사용 가능한 메모리가 항상 Amazon ElastiCache 요금에 나와 있는 값보다 작습니다. 왜 그런가요?

해결 방법

ElastiCache 요금 페이지에는 지원되는 각 노드 유형에 대해 사용 가능한 메모리(GiB)가 표시되어 있습니다. 하지만 기본 파라미터 그룹에서는 메모리의 일정 비율이 백업 및 장애 조치 작업을 위해 예약되어 있습니다. Redis 버전 2.8.22 이전의 경우, 전체 메모리의 50%를 예약하는 것이 모범 사례입니다. Redis 버전 2.8.22 이상에서는 총 메모리의 25%를 예약하는 것이 모범 사례입니다. 이를 규제하는 파라미터는 reserved-memory(2017년 3월 16일 이전에 ElastiCache를 시작한 고객의 경우) 또는 reserved-memory-percent(2017년 3월 16일 또는 그 이후에 ElastiCache를 시작한 고객의 경우)입니다.

예를 들어 기본 파라미터 그룹에 있는 cache.t3.micro 노드 유형을 사용하는 클러스터의 총 메모리는 0.5GiB입니다. reserved-memory-percent 파라미터로 인해 이 메모리의 25%가 예약됩니다. 따라서 이 노드에서 사용 가능한 메모리는 0.375GiB입니다.

ElastiCache Redis 노드에서 사용 가능한 메모리를 보려면 다음을 수행합니다.

1.    redis-cli 도구 또는 원하는 다른 도구를 사용하여 클러스터에 연결합니다. redis-cli 도구 사용에 대한 자세한 내용은 Redis 클러스터 또는 복제 그룹에 연결(Linux)을 참조하세요.

2.    info memory 명령을 실행하고 maxmemory 값을 확인합니다. 다음 예제 출력은 IP 주소가 172.31.35.93인 Redis 서버에 연결된 redis-cli를 사용하여 생성되었습니다.

172.31.35.93:6379> info memory
# Memory
maxmemory:402653184

참고: maxmemory 값은 바이트 단위입니다. 402653184바이트는 0.375GiB와 동일합니다. Redis 엔진은 바이트 또는 MB를 사용하여 메모리를 나타냅니다. AWS 설명서는 GiB를 사용하여 메모리를 나타냅니다. 이 두 단위 간의 차이는 아주 적으며 작은 숫자에서는 거의 차이가 없지만 노드 메모리의 크기에 따라 차이가 기하급수적으로 증가합니다. 원하는 온라인 계산기를 사용하여 이러한 단위를 변환할 수 있습니다.


관련 정보

예약된 메모리 관리

AWS 공식
AWS 공식업데이트됨 4년 전