클러스터에 노드 추가 - 아마존 포 ElastiCache 레디스용

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

클러스터에 노드 추가

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

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

단일 노드 Redis(클러스터 모드 비활성화됨) 클러스터(복제가 활성화되지 않은 클러스터)에 노드를 추가하려면 복제를 추가한 후 복제본 노드를 추가하는 2단계 프로세스를 진행합니다.

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

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

  2. 탐색 창에서 Redis 클러스터(Redis clusters)를 선택합니다.

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

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

    복제가 활성화되지 않은 Redis 클러스터에 다음 내용이 적용됩니다.

    • Clustered Redis가 아니라 Redis를 실행합니다.

    • 제로 샤드를 포함합니다.

      클러스터에 샤드가 있으면 복제가 이미 활성화되어 있으며 클러스터에 노드를 추가하려면(콘솔)에서 계속할 수 있습니다.

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

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

  6. 추가(Add)를 선택합니다.

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

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

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

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

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

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

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

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

    클러스터가 제로 샤드 Redis(클러스터 모드 비활성화됨) 클러스터인 경우에는 샤드 없이 Redis 클러스터에 복제를 추가하려면의 단계들을 먼저 완료하세요.

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

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

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

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

    시나리오 1

    Delete

    Delete

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

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

    시나리오 2

    Delete

    생성

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

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

    시나리오 3

    생성

    Delete

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

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

    시나리오 4

    생성

    생성

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

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

    중요

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

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

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

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

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

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

  • --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를 참조하세요.

복제가 활성화되지 않은 기존 Redis(클러스터 모드 비활성화됨) 클러스터에 노드를 추가하려면 기존 클러스터를 기본 클러스터로 지정하여 먼저 복제 그룹을 만들어야 합니다. 자세한 내용은 독립형 Redis (클러스터 모드 비활성화) 클러스터 (API) 에 복제본 추가 ElastiCache 섹션을 참조하세요. 복제 그룹이 [available] 상태가 되면 다음 프로세스로 계속 진행할 수 있습니다.

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

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

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

    • 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를 참조하세요.