클러스터에 노드 추가 - 아마존 ElastiCache

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

클러스터에 노드 추가

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

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

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

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

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

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

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

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

  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] 상태로 새로운 노드가 노드 목록에 나타납니다. 노드가 표시되지 않으면 브라우저 페이지를 새로 고치십시오. 노드가 사용 가능 상태가 되면 새로운 노드를 사용할 수 있습니다.

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

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

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

  • --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", } }

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

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

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

    • NumCacheNodes NumCachNodes 파라미터는 수정이 적용된 후 이 클러스터에 포함할 노드 수를 지정합니다. 이 클러스터에 노드를 추가하려면 NumCacheNodes가 이 클러스터의 현재 노드 수보다 커야 합니다. 이 값이 현재 노드 수보다 작으면 ElastiCache가 클러스터에서 제거할 노드 목록과 함께 파라미터 CacheNodeIdsToRemove를 필요로 합니다(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를 참조하세요.