ElastiCache 클러스터에 노드 추가 - Amazon ElastiCache

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

ElastiCache 클러스터에 노드 추가

Memcached 클러스터에 노드를 추가하면 클러스터의 파티션 수가 증가합니다. 클러스터의 파티션 수를 변경할 때는 키스페이스의 일부를 다시 매핑해야 정확한 노드에 매핑됩니다. 키스페이스를 일시적으로 다시 매핑하면 클러스터의 캐시 누락 수가 증가합니다. 자세한 내용은 효율적인 로드 밸런싱을 위해 ElastiCache 클라이언트 구성(Memcached) 단원을 참조하십시오.

Valkey 또는 RedisOSS(클러스터 모드 활성화됨) 클러스터를 재구성하려면 섹션을 참조하세요. Valkey 또는 Redis에서 클러스터 크기 조정OSS(클러스터 모드 활성화됨)

ElastiCache 관리 콘솔, AWS CLI 또는 ElastiCache API 를 사용하여 클러스터에 노드를 추가할 수 있습니다.

단일 노드 Valkey 또는 RedisOSS(클러스터 모드 비활성화됨) 클러스터에 노드를 추가하려면(복제 활성화되지 않은 클러스터) 먼저 복제를 추가한 다음 복제 노드를 추가하는 2단계 프로세스입니다.

다음 절차에서는 복제가 활성화되지 OSS 않은 단일 노드 Valkey 또는 Redis에 복제를 추가합니다. 복제를 추가할 때 기존의 노드는 복제가 활성화된 클러스터의 기본 노드가 됩니다. 복제를 추가한 후에는 최대 5개의 복제본 노드를 클러스터에 추가할 수 있습니다.

샤드 없이 Valkey 또는 Redis OSS 클러스터에 복제를 추가하려면
  1. 에 로그인 AWS Management Console 하고 https://console.aws.amazon.com/elasticache/에서 ElastiCache 콘솔을 엽니다.

  2. 탐색 창에서 Valkey 클러스터 또는 Redis OSS 클러스터를 선택합니다.

    해당 엔진을 실행하는 클러스터 목록이 표시됩니다.

  3. 노드를 추가하고자 하는 클러스터의 이름 왼쪽에 있는 상자가 아닌 클러스터의 이름을 선택합니다.

    복제가 활성화되지 않은 Redis OSS 클러스터의 경우 다음 사항이 적용됩니다.

  4. [Add replication]을 선택합니다.

  5. 복제가 활성화된 이 클러스터에 대한 설명을 Add Replication(복제 추가)에 입력합니다.

  6. 추가를 선택합니다.

    클러스터 상태가 [available]로 돌아오면 다음 절차에서 계속 진행하고 복제본을 클러스터에 추가할 수 있습니다.

ElastiCache 클러스터에 노드를 추가하려면(콘솔)

다음 절차에 따라 클러스터에 노드를 추가할 수 있습니다.

  1. 에 로그인 AWS Management Console 하고 https://console.aws.amazon.com/elasticache/에서 ElastiCache 콘솔을 엽니다.

  2. 노드를 추가하려는 클러스터에서 실행 중인 엔진을 탐색 창에서 선택합니다.

    선택한 엔진을 실행하는 클러스터 목록이 표시됩니다.

  3. 클러스터 목록에서 노드를 추가할 클러스터의 해당 이름을 선택합니다.

    클러스터가 Valkey 또는 RedisOSS(클러스터 모드 활성화됨) 클러스터인 경우 섹션을 참조하세요Valkey 또는 Redis에서 클러스터 크기 조정OSS(클러스터 모드 활성화됨).

    클러스터가 샤드가 없는 Valkey 또는 RedisOSS(클러스터 모드 비활성화됨) 클러스터인 경우 먼저 에서 단계를 완료합니다샤드 없이 Valkey 또는 Redis OSS 클러스터에 복제를 추가하려면.

  4. [Add node]를 선택합니다.

  5. Add Node(노드 추가) 대화 상자에 요청을 받은 정보를 입력합니다.

  6. 이 노드를 즉시 추가하려면 [Apply Immediately - Yes] 버튼을 선택하고, 클러스터의 다음 유지 관리 기간 중에 이 노드를 추가하려면 [No]를 선택합니다.

    신규 추가 및 제거 요청이 대기 중 요청에 미치는 영향
    시나리오 대기 중 작업 신규 요청 결과

    시나리오 1

    삭제

    삭제

    신규 삭제 요청(대기 중 또는 즉시)은 대기 중 삭제 요청을 대체합니다.

    예를 들어 노드 0001, 0003 및 0007에서 삭제 요청이 대기 중일 때 노드 0002 및 0004를 삭제하는 신규 요청이 생성될 경우 노드 0002 및 0004만 삭제됩니다. 노드 0001, 0003 및 0007은 삭제되지 않습니다.

    시나리오 2

    삭제

    생성

    신규 생성 요청(대기 중 또는 즉시)은 대기 중 삭제 요청을 대체합니다.

    예를 들어 노드 0001, 0003 및 0007에서 삭제 요청이 대기 중일 때 노드를 생성하는 신규 요청이 생성될 경우 새 노드가 생성되고 노드 0001, 0003 및 0007은 삭제되지 않습니다.

    시나리오 3

    생성

    삭제

    신규 삭제 요청(대기 중 또는 즉시)은 대기 중 생성 요청을 대체합니다.

    예를 들어 노드 2개를 생성하는 요청이 대기 중일 때 노드 0003을 삭제하는 요청이 생성될 경우 새 노드는 생성되지 않고 노드 0003이 삭제됩니다.

    시나리오 4

    생성

    생성

    신규 생성 요청은 대기 중 생성 요청에 추가됩니다.

    예를 들어 노드 2개를 생성하는 요청이 대기 중일 때 노드 3개를 생성하는 신규 요청이 생성될 경우 신규 요청이 대기 중 요청에 추가되어 노드 5개가 생성됩니다.

    중요

    신규 생성 요청이 Apply Immediately - Yes(즉시 적용 - 예)로 설정된 경우 모든 생성 요청이 즉시 실행됩니다. 신규 생성 요청이 Apply Immediately - No(즉시 적용 - 아니요)로 설정된 경우 모든 생성 요청은 대기 중 작업입니다.

    어떤 작업이 대기 중인지 알아보려면 설명 탭을 선택하여 대기 중 생성 또는 삭제 작업이 몇 개인지 확인합니다. 대기 중 생성 작업과 대기 중 삭제 작업이 동시에 있을 수는 없습니다.

  7. [Add] 버튼을 선택합니다.

    잠시 후 [creating] 상태로 새로운 노드가 노드 목록에 나타납니다. 노드가 표시되지 않으면 브라우저 페이지를 새로 고치십시오. 노드가 사용 가능 상태가 되면 새로운 노드를 사용할 수 있습니다.

를 사용하여 클러스터에 노드를 추가하려면 다음 파라미터modify-cache-cluster로 AWS CLI 작업을 AWS CLI사용합니다.

  • --cache-cluster-id 노드를 추가할 캐시 클러스터의 ID입니다.

  • --num-cache-nodes --num-cache-nodes 파라미터는 수정이 적용된 후 이 클러스터에 포함할 노드 수를 지정합니다. 이 클러스터에 노드를 추가하려면 --num-cache-nodes가 이 클러스터의 현재 노드 수보다 커야 합니다. 이 값이 현재 노드 수보다 작으면 는 파라미터cache-node-ids-to-remove와 클러스터에서 제거할 노드 목록을 ElastiCache 예상합니다. 자세한 내용은 와 AWS CLI 함께 사용 ElastiCache 단원을 참조하십시오.

  • --apply-immediately 또는 --no-apply-immediately 이 노드를 즉시 추가할지 아니면 다음 번 유지 관리 기간에 추가할지 지정합니다.

Linux, macOS, Unix의 경우:

aws elasticache modify-cache-cluster \ --cache-cluster-id my-cluster \ --num-cache-nodes 5 \ --apply-immediately

Windows의 경우:

aws elasticache modify-cache-cluster ^ --cache-cluster-id my-cluster ^ --num-cache-nodes 5 ^ --apply-immediately

이 작업은 다음과 유사한 출력을 생성합니다(JSON 형식).

{ "CacheCluster": { "Engine": "memcached", "CacheParameterGroup": { "CacheNodeIdsToReboot": [], "CacheParameterGroupName": "default.memcached1.4", "ParameterApplyStatus": "in-sync" }, "CacheClusterId": "my-cluster", "PreferredAvailabilityZone": "us-west-2b", "ConfigurationEndpoint": { "Port": 11211, "Address": "rlh-mem000.7alc7bf-example.cfg.usw2.cache.amazonaws.com" }, "CacheSecurityGroups": [], "CacheClusterCreateTime": "2016-09-21T16:28:28.973Z", "AutoMinorVersionUpgrade": true, "CacheClusterStatus": "modifying", "NumCacheNodes": 2, "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "SecurityGroups": [ { "Status": "active", "SecurityGroupId": "sg-dbe93fa2" } ], "CacheSubnetGroupName": "default", "EngineVersion": "1.4.24", "PendingModifiedValues": { "NumCacheNodes": 5 }, "PreferredMaintenanceWindow": "sat:09:00-sat:10:00", "CacheNodeType": "cache.m3.medium", "DataTiering": "disabled", } }

자세한 내용은 AWS CLI 주제를 참조하세요modify-cache-cluster.

복제가 활성화되지 않은 기존 Valkey 또는 RedisOSS(클러스터 모드 비활성화됨) 클러스터에 노드를 추가하려면 먼저 기존 클러스터를 기본 클러스터로 지정하는 복제 그룹을 생성해야 합니다. 자세한 내용은 사용 가능한 Valkey 또는 Redis OSS 캐시 클러스터를 사용하여 복제 그룹 생성(AWS CLI) 단원을 참조하십시오. 복제 그룹이 [available] 상태가 되면 다음 프로세스로 계속 진행할 수 있습니다.

를 사용하여 클러스터에 노드를 추가하려면 다음 파라미터와 increase-replica-count 함께 AWS CLI 작업을 AWS CLI사용합니다.

  • --replication-group-id 노드를 추가할 복제 그룹의 ID입니다.

  • --new-replica-count는 수정이 적용된 후 이 복제 그룹에 포함할 노드 수를 지정합니다. 이 클러스터에 노드를 추가하려면 --new-replica-count가 이 클러스터의 현재 노드 수보다 커야 합니다.

  • --apply-immediately 또는 --no-apply-immediately 이 노드를 즉시 추가할지 아니면 다음 번 유지 관리 기간에 추가할지 지정합니다.

Linux, macOS, Unix의 경우:

aws elasticache increase-replica-count \ --replication-group-id my-replication-group \ --new-replica-count 4 \ --apply-immediately

Windows의 경우:

aws elasticache increase-replica-count ^ --replication-group-id my-replication-group ^ --new-replica-count 4 ^ --apply-immediately

이 작업은 다음과 유사한 출력을 생성합니다(JSON 형식).

{ "ReplicationGroup": { "ReplicationGroupId": "node-test", "Description": "node-test", "Status": "modifying", "PendingModifiedValues": {}, "MemberClusters": [ "node-test-001", "node-test-002", "node-test-003", "node-test-004", "node-test-005" ], "NodeGroups": [ { "NodeGroupId": "0001", "Status": "modifying", "PrimaryEndpoint": { "Address": "node-test.zzzzzz.ng.0001.usw2.cache.amazonaws.com", "Port": 6379 }, "ReaderEndpoint": { "Address": "node-test.zzzzzz.ng.0001.usw2.cache.amazonaws.com", "Port": 6379 }, "NodeGroupMembers": [ { "CacheClusterId": "node-test-001", "CacheNodeId": "0001", "ReadEndpoint": { "Address": "node-test-001.zzzzzz.0001.usw2.cache.amazonaws.com", "Port": 6379 }, "PreferredAvailabilityZone": "us-west-2a", "CurrentRole": "primary" }, { "CacheClusterId": "node-test-002", "CacheNodeId": "0001", "ReadEndpoint": { "Address": "node-test-002.zzzzzz.0001.usw2.cache.amazonaws.com", "Port": 6379 }, "PreferredAvailabilityZone": "us-west-2c", "CurrentRole": "replica" }, { "CacheClusterId": "node-test-003", "CacheNodeId": "0001", "ReadEndpoint": { "Address": "node-test-003.zzzzzz.0001.usw2.cache.amazonaws.com", "Port": 6379 }, "PreferredAvailabilityZone": "us-west-2b", "CurrentRole": "replica" } ] } ], "SnapshottingClusterId": "node-test-002", "AutomaticFailover": "enabled", "MultiAZ": "enabled", "SnapshotRetentionLimit": 1, "SnapshotWindow": "07:30-08:30", "ClusterEnabled": false, "CacheNodeType": "cache.r5.large", "DataTiering": "disabled", "TransitEncryptionEnabled": false, "AtRestEncryptionEnabled": false, "ARN": "arn:aws:elasticache:us-west-2:123456789012:replicationgroup:node-test" } }

자세한 내용은 AWS CLI 주제를 참조하세요increase-replica-count.

복제가 활성화되지 않은 기존 Valkey 또는 RedisOSS(클러스터 모드 비활성화됨) 클러스터에 노드를 추가하려면 먼저 기존 클러스터를 기본 클러스터로 지정하는 복제 그룹을 생성해야 합니다. 자세한 내용은 독립 실행형 Valkey 또는 RedisOSS(클러스터 모드 비활성화됨) 클러스터에 복제본 추가(ElastiCache API) 단원을 참조하십시오. 복제 그룹이 [available] 상태가 되면 다음 프로세스로 계속 진행할 수 있습니다.

클러스터에 노드를 추가하려면(ElastiCache API)
  • 다음 파라미터를 사용하여 IncreaseReplicaCount API 작업을 호출합니다.

    • ReplicationGroupId 노드를 추가할 클러스터의 ID입니다.

    • NewReplicaCount NewReplicaCount 파라미터는 수정이 적용된 후 이 클러스터에 포함할 노드 수를 지정합니다. 이 클러스터에 노드를 추가하려면 NewReplicaCount가 이 클러스터의 현재 노드 수보다 커야 합니다. 이 값이 현재 노드 수보다 작은 경우 클러스터에서 제거할 노드 수DecreaseReplicaCountAPI와 함께 를 사용합니다.

    • ApplyImmediately 이 노드를 즉시 추가할지 아니면 다음 번 유지 관리 기간에 추가할지 지정합니다.

    • Region 노드를 추가할 클러스터의 AWS 리전을 지정합니다.

    다음 예제에서는 클러스터에 노드를 추가하기 위한 호출을 보여줍니다.

    https://elasticache.us-west-2.amazonaws.com/ ?Action=IncreaseReplicaCount &ApplyImmediately=true &NumCacheNodes=4 &ReplicationGroupId=my-replication-group &Region=us-east-2 &Version=2014-12-01 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20141201T220302Z &X-Amz-Algorithm=&AWS;4-HMAC-SHA256 &X-Amz-Date=20141201T220302Z &X-Amz-SignedHeaders=Host &X-Amz-Expires=20141201T220302Z &X-Amz-Credential=<credential> &X-Amz-Signature=<signature>

자세한 내용은 주제를 참조 ElastiCache API하세요IncreaseReplicaCount.

클러스터에 노드를 추가하려면(ElastiCache API)
  • 다음 파라미터를 사용하여 ModifyCacheCluster API 작업을 호출합니다.

    • CacheClusterId 노드를 추가할 클러스터의 ID입니다.

    • NumCacheNodes NumCachNodes 파라미터는 수정이 적용된 후 이 클러스터에 포함할 노드 수를 지정합니다. 이 클러스터에 노드를 추가하려면 NumCacheNodes가 이 클러스터의 현재 노드 수보다 커야 합니다. 이 값이 현재 노드 수보다 작으면 클러스터에서 제거할 노드 목록이 CacheNodeIdsToRemove 있는 파라미터가 ElastiCache 예상됩니다( 참조Memcached와 ElastiCache API 함께 사용).

    • ApplyImmediately 이 노드를 즉시 추가할지 아니면 다음 번 유지 관리 기간에 추가할지 지정합니다.

    • Region 노드를 추가할 클러스터의 AWS 리전을 지정합니다.

    다음 예제에서는 클러스터에 노드를 추가하기 위한 호출을 보여줍니다.

    https://elasticache.us-west-2.amazonaws.com/ ?Action=ModifyCacheCluster &ApplyImmediately=true &NumCacheNodes=5 &CacheClusterId=my-cluster &Region=us-east-2 &Version=2014-12-01 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20141201T220302Z &X-Amz-Algorithm=&AWS;4-HMAC-SHA256 &X-Amz-Date=20141201T220302Z &X-Amz-SignedHeaders=Host &X-Amz-Expires=20141201T220302Z &X-Amz-Credential=<credential> &X-Amz-Signature=<signature>

자세한 내용은 주제를 참조 ElastiCache API하세요ModifyCacheCluster.