기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Valkey 및 Redis용 예약 메모리 관리 OSS
예약된 메모리는 비데이터 사용을 위해 구분된 메모리입니다. 백업 또는 장애 조치를 수행할 때 Valkey와 Redis는 클러스터의 데이터가 .rdb 파일에 기록되는 동안 사용 가능한 메모리를 OSS 사용하여 클러스터에 대한 쓰기 작업을 기록합니다. 모든 쓰기에 사용 가능한 메모리를 충분히 확보하지 못하면 프로세스가 실패합니다. 다음은 ElastiCache (Redis OSS)용 예약 메모리를 관리하기 위한 옵션과 이러한 옵션을 적용하는 방법에 대한 정보를 찾을 수 있습니다.
필요한 예약된 메모리의 양
OSS 이전에 Redis 버전을 실행하는 경우 Redis OSS2.8.22 이상을 실행하는 경우보다 백업 및 장애 조치를 위해 더 많은 메모리를 예약합니다. 이 요구 사항은 ElastiCache (Redis OSS)가 백업 프로세스를 구현하는 다양한 방법으로 인한 것입니다. 엄지손가락 규칙은 노드 유형 maxmemory
값의 절반을 2.8.22 이전 버전의 경우 Redis OSS 오버헤드에, 1/4은 Redis OSS 버전 2.8.22 이상에 예약하는 것입니다.
백업 및 복제 프로세스를 ElastiCache 구현하는 다양한 방법으로 인해 썸의 규칙은 reserved-memory-percent
파라미터를 사용하여 노드 유형 maxmemory
값의 25%를 예약하는 것입니다. 이는 기본값이며 대부분의 경우에 권장됩니다.
버스트 가능한 마이크로 및 스몰 인스턴스 유형이 maxmemory
제한 근처에서 작동하는 경우 스왑 사용량이 발생할 수 있습니다. 백업, 복제 및 트래픽이 많은 동안 이러한 인스턴스 유형의 운영 안정성을 개선하려면 작은 인스턴스 유형의 경우 reserved-memory-percent
파라미터 값을 최대 30%, 마이크로 인스턴스 유형의 경우 최대 50% 늘리는 것이 좋습니다.
데이터 계층화가 있는 ElastiCache 클러스터의 쓰기 작업이 많은 워크로드의 경우 노드에서 사용할 수 있는 메모리의 최대 50%reserved-memory-percent
까지 를 늘리는 것이 좋습니다.
자세한 내용은 다음 자료를 참조하세요.
예약된 메모리를 관리하기 위한 파라미터
2017년 3월 16일부터 Amazon ElastiCache 은 Valkey 또는 Redis OSS 메모리를 관리하기 위한 두 개의 상호 배타적인 파라미터 reserved-memory
및 를 제공합니다reserved-memory-percent
. 이러한 파라미터 중 어느 것도 Valkey 또는 Redis OSS 배포의 일부가 아닙니다.
ElastiCache 고객이 된 시기에 따라 이러한 파라미터 중 하나 또는 다른 파라미터가 기본 메모리 관리 파라미터입니다. 이 파라미터는 새 Valkey 또는 Redis OSS 클러스터 또는 복제 그룹을 생성하고 기본 파라미터 그룹을 사용할 때 적용됩니다.
-
2017년 3월 16일 이전에 시작한 고객의 경우 - 기본 파라미터 그룹을 사용하여 Redis OSS 클러스터 또는 복제 그룹을 생성할 때 메모리 관리 파라미터는 입니다
reserved-memory
. 이 경우 0바이트의 메모리가 예약됩니다. -
2017년 3월 16일 이후에 시작한 고객의 경우 - 기본 파라미터 그룹을 사용하여 Valkey 또는 Redis OSS 클러스터 또는 복제 그룹을 생성할 때 메모리 관리 파라미터는 입니다
reserved-memory-percent
. 이 경우 노드maxmemory
값의 25%가 비데이터 용도로 예약됩니다.
두 가지 Valkey 또는 Redis OSS 메모리 관리 파라미터에 대해 읽은 후 기본값이 아니거나 기본값이 아닌 파라미터를 사용하는 것이 좋습니다. 이 경우, 다른 예약된 메모리 관리 파라미터로 변경할 수 있습니다.
이 파라미터의 값을 변경하려면 사용자 정의 파라미터 그룹을 생성하고 기본 설정 메모리 관리 파라미터 및 값을 사용하도록 수정할 수 있습니다. 그런 다음 새 Valkey 또는 Redis OSS 클러스터 또는 복제 그룹을 생성할 때마다 사용자 지정 파라미터 그룹을 사용할 수 있습니다. 기존 클러스터나 복제 그룹의 경우 사용자 지정 파라미터 그룹을 사용하도록 수정할 수 있습니다.
자세한 내용은 다음 자료를 참조하세요.
reserved-memory 파라미터
2017년 3월 16일 이전에는 파라미터 를 사용하여 모든 ElastiCache (Redis OSS) 예약 메모리 관리를 수행했습니다reserved-memory
. reserved-memory
의 기본값은 0입니다. 이 기본값은 Valkey 또는 Redis OSS 오버헤드에 대한 메모리를 예약하지 않으며 Valkey 또는 Redis가 데이터와 함께 노드의 모든 메모리OSS를 사용할 수 있도록 허용합니다.
백업 및 장애 조치를 위해 충분한 메모리를 사용할 수 있도록 reserved-memory
를 변경할 경우 사용자 지정 파라미터 그룹을 생성해야 합니다. 이 사용자 지정 파라미터 그룹에서는 클러스터 및 클러스터의 노드 유형에서 실행되는 Valkey 또는 Redis OSS 버전에 적합한 reserved-memory
값으로 설정합니다. 자세한 내용은 필요한 예약된 메모리의 양 단원을 참조하세요.
파라미터는 에 reserved-memory
ElastiCache 특정되며 일반 Redis OSS 배포의 일부가 아닙니다.
다음 절차에서는 를 사용하여 Valkey 또는 Redis OSS 클러스터의 메모리reserved-memory
를 관리하는 방법을 보여줍니다.
reserved-memory를 사용하여 메모리를 예약하려면
-
실행 중인 엔진 버전과 일치하는 파라미터 그룹 패밀리를 지정하는 사용자 지정 파라미터 그룹을 생성합니다. 예를 들어
redis2.8
파라미터 그룹 패밀리를 지정합니다. 자세한 내용은 ElastiCache 파라미터 그룹 생성 단원을 참조하십시오.aws elasticache create-cache-parameter-group \ --cache-parameter-group-name
redis6x-m3xl
\ --description "Redis OSS 2.8.x for m3.xlarge node type
" \ --cache-parameter-group-familyredis6.x
-
Valkey 또는 Redis OSS 오버헤드에 대해 예약할 메모리 바이트 수를 계산합니다. OSS 노드 유형별 파라미터 재정의에서 노드 유형에 대한
maxmemory
값을 찾을 수 있습니다. -
reserved-memory
파라미터가 이전 단계에서 계산된 바이트 수가 되도록 사용자 지정 파라미터 그룹을 수정합니다. 다음 AWS CLI 예제에서는 2.8.22 OSS 이전에 Redis 버전을 실행 중이며 노드 의 절반을 예약해야 한다고 가정합니다maxmemory
. 자세한 내용은 ElastiCache 파라미터 그룹 수정 단원을 참조하십시오.aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis28-m3xl
\ --parameter-name-values "ParameterName=reserved-memory, ParameterValue=7130316800
"각 노드 유형에는 다른
maxmemory
값이 있으므로 사용할 각 노드 유형에 대해 별도의 사용자 지정 파라미터 그룹이 필요합니다. 따라서 각 노드 유형에는reserved-memory
에 대해 서로 다른 값이 필요합니다. -
사용자 지정 파라미터 그룹을 사용하도록 Redis OSS 클러스터 또는 복제 그룹을 수정합니다.
다음 CLI 예제에서는 사용자 지정 파라미터 그룹을
redis28-m3xl
즉시my-redis-cluster
사용하도록 클러스터를 수정합니다. 자세한 내용은 ElastiCache 클러스터 수정 단원을 참조하십시오.aws elasticache modify-cache-cluster \ --cache-cluster-id
my-redis-cluster
\ --cache-parameter-group-nameredis28-m3xl
\ --apply-immediately다음 CLI 예제에서는 즉시
redis28-m3xl
시작되는 사용자 지정 파라미터 그룹을my-redis-repl-grp
사용하도록 복제 그룹을 수정합니다. 자세한 설명은 복제 그룹 수정 섹션을 참조하십시오.aws elasticache modify-replication-group \ --replication-group-id
my-redis-repl-grp
\ --cache-parameter-group-nameredis28-m3xl
\ --apply-immediately
reserved-memory-percent 파라미터
2017년 3월 16일 Amazon은 파라미터를 ElastiCache 도입reserved-memory-percent
하여 ElastiCache (Redis )의 모든 버전에서 사용할 수 있도록 했습니다OSS. reserved-memory-percent
의 목적은 모든 클러스터에 대해 예약된 메모리 관리를 간소화하는 것입니다. 노드 유형과 상관없이 클러스터의 예약된 메모리를 관리하기 위해 각 파라미터 그룹 패밀리에 대해 단일 파라미터 그룹(예: redis2.8
)을 보유할 수 있도록 하여 이를 수행합니다. reserved-memory-percent
에 대한 기본값은 25(25%)입니다.
파라미터는 에 reserved-memory-percent
특정 ElastiCache 되며 일반 Redis OSS 배포의 일부가 아닙니다.
클러스터가 r6gd 패밀리의 노드 유형을 사용하고 있고 메모리 사용량이 75%에 도달하는 경우 데이터 계층화가 자동으로 트리거됩니다. 자세한 내용은 의 데이터 계층화 ElastiCache 단원을 참조하십시오.
를 사용하여 메모리를 예약하려면 reserved-memory-percent
reserved-memory-percent
를 사용하여 ElastiCache (Redis OSS) 클러스터의 메모리를 관리하려면 다음 중 하나를 수행합니다.
-
Redis OSS 2.8.22 이상을 실행하는 경우 클러스터에 기본 파라미터 그룹을 할당합니다. 기본 25%가 적절합니다. 그렇지 않은 경우 다음 설명된 단계에 따라 값을 변경합니다.
-
2.8.22 OSS 이전에 Redis 버전을 실행하는 경우
reserved-memory-percent
의 기본 25%보다 많은 메모리를 예약해야 할 수 있습니다. 이렇게 하려면 다음 절차를 사용하세요.
의 백분율 값을 변경하려면 reserved-memory-percent
-
실행 중인 엔진 버전과 일치하는 파라미터 그룹 패밀리를 지정하는 사용자 지정 파라미터 그룹을 생성합니다. 예를 들어
redis2.8
파라미터 그룹 패밀리를 지정합니다. 기본 파라미터 그룹을 수정할 수 없으므로 사용자 지정 파라미터 그룹이 필요합니다. 자세한 내용은 ElastiCache 파라미터 그룹 생성 단원을 참조하십시오.aws elasticache create-cache-parameter-group \ --cache-parameter-group-name
redis28-50
\ --description "Redis OSS 2.8.x 50% reserved
" \ --cache-parameter-group-familyredis2.8
reserved-memory-percent
는 노드의maxmemory
%로 메모리를 예약하므로 각 노드 유형에 대해 사용자 지정 파라미터 그룹이 필요하지 않습니다. -
reserved-memory-percent
가 50(50%)이 되도록 사용자 지정 파라미터 그룹을 수정합니다. 자세한 내용은 ElastiCache 파라미터 그룹 수정 단원을 참조하십시오.aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis28-50
\ --parameter-name-values "ParameterName=reserved-memory-percent, ParameterValue=50
" -
2.8.22 OSS 이전의 Redis 버전을 실행하는 모든 Redis OSS 클러스터 또는 복제 그룹에 이 사용자 지정 파라미터 그룹을 사용합니다.
다음 CLI 예제에서는 사용자 지정 파라미터 그룹을
redis28-50
즉시my-redis-cluster
사용하도록 Redis OSS 클러스터를 수정합니다. 자세한 내용은 ElastiCache 클러스터 수정 단원을 참조하십시오.aws elasticache modify-cache-cluster \ --cache-cluster-id
my-redis-cluster
\ --cache-parameter-group-nameredis28-50
\ --apply-immediately다음 CLI 예제에서는 사용자 지정 파라미터 그룹을
redis28-50
즉시my-redis-repl-grp
사용하도록 Redis OSS 복제 그룹을 수정합니다. 자세한 내용은 복제 그룹 수정 단원을 참조하십시오.aws elasticache modify-replication-group \ --replication-group-id
my-redis-repl-grp
\ --cache-parameter-group-nameredis28-50
\ --apply-immediately
예약된 메모리 관리 파라미터 지정
2017년 3월 16일에 현재 ElastiCache 고객인 경우 기본 예약 메모리 관리 파라미터는 예약 메모리의 영(0) 바이트reserved-memory
입니다. 2017년 3월 16일 이후에 ElastiCache 고객이 된 경우 기본 예약 메모리 관리 파라미터는 노드 메모리 예약의 25%reserved-memory-percent
입니다. ( ElastiCache Redis OSS) 클러스터 또는 복제 그룹을 생성한 시기와 관계없이 마찬가지입니다. 그러나 AWS CLI 또는 를 사용하여 예약 메모리 관리 파라미터를 변경할 수 있습니다 ElastiCache API.
파라미터 reserved-memory
및 reserved-memory-percent
는 함께 사용할 수 없습니다. 파라미터 그룹에는 항상 한 개의 파라미터가 있으며 둘 다 있을 수 없습니다. 파라미터 그룹을 수정하여 파라미터 그룹에서 예약된 메모리 관리에 사용할 파라미터를 변경할 수 있습니다. 기본 파라미터 그룹을 수정할 수 없으므로 파라미터 그룹은 사용자 지정 파라미터 그룹이어야 합니다. 자세한 내용은 ElastiCache 파라미터 그룹 생성 단원을 참조하십시오.
지정하려면 reserved-memory-percent
reserved-memory-percent
를 예약된 메모리 관리 파라미터로 사용하려면 modify-cache-parameter-group
명령어를 사용하여 사용자 지정 파라미터 그룹을 수정해야 합니다. reserved-memory-percent
파라미터를 사용하여 parameter-name-values
및 해당 값을 지정합니다.
다음 CLI 예제에서는 가 예약된 메모리를 관리하는 reserved-memory-percent
데 사용하도록 사용자 지정 파라미터 그룹을 수정redis32-cluster-on
합니다. 예약된 메모리 관리를 위해 파라미터 그룹에서 ParameterName
파라미터를 사용할 수 있도록 ParameterValue
에 값을 지정해야 합니다. 자세한 내용은 ElastiCache 파라미터 그룹 수정 단원을 참조하십시오.
aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis32-cluster-on
\ --parameter-name-values "ParameterName=reserved-memory-percent, ParameterValue=25
"
reserved-memory를 지정하려면
reserved-memory
를 예약된 메모리 관리 파라미터로 사용하려면 modify-cache-parameter-group
명령어를 사용하여 사용자 지정 파라미터 그룹을 수정해야 합니다. reserved-memory
파라미터를 사용하여 parameter-name-values
및 해당 값을 지정합니다.
다음 CLI 예제에서는 가 예약 메모리를 관리하는 reserved-memory
데 사용하도록 사용자 지정 파라미터 그룹을 수정redis32-m3xl
합니다. 예약된 메모리 관리를 위해 파라미터 그룹에서 ParameterName
파라미터를 사용할 수 있도록 ParameterValue
에 값을 지정해야 합니다. 엔진 버전이 2.8.22보다 더 새로운 버전이므로 값을 cache.m3.xlarge
의 maxmemory
중 25퍼센트에 해당하는 3565158400
으로 설정했습니다. 자세한 내용은 ElastiCache 파라미터 그룹 수정 단원을 참조하십시오.
aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis32-m3xl
\ --parameter-name-values "ParameterName=reserved-memory, ParameterValue=3565158400
"