클러스터 생성 - Amazon ElastiCache for Redis

클러스터 생성

다음 예제에서는 AWS Management Console, AWS CLI 및 ElastiCache API를 사용하여 Redis 클러스터를 생성하는 방법을 보여 줍니다.

ElastiCache는 Redis 엔진을 사용할 때 복제를 지원합니다. Redis 읽기/쓰기 기본 클러스터에 데이터가 쓰여지는 시간과 데이터가 읽기 전용 보조 클러스터에 전파되는 시간 사이의 지연 시간을 모니터링하기 위해 ElastiCache가 특수 키 ElastiCacheMasterReplicationTimestamp를 클러스터에 추가합니다. 이 키는 현재 UCT(협정 세계시) 시간입니다. 나중에 Redis 클러스터가 복제 그룹에 추가될 수 있으므로 처음에는 복제 그룹의 멤버가 아니어도 모든 Redis 클러스터에 이 키가 포함됩니다. 복제 그룹에 대한 자세한 정보는 고가용성을 위한 복제 그룹 사용 섹션을 참조하세요.

Redis(클러스터 모드 사용 중지됨) 클러스터를 생성하려면 Redis(클러스터 모드 비활성화됨) 클러스터 생성(콘솔) 섹션의 단계를 수행하세요.

클러스터 상태가 사용 가능이 되면 클러스터에 Amazon EC2 액세스 권한을 부여하고 클러스터에 연결하며 사용할 수 있습니다. 자세한 정보는 3단계: 클러스터에 대한 액세스 허가4단계: 클러스터 노드에 연결 섹션을 참조하세요.

중요

클러스터를 사용할 수 있게 되면 클러스터를 적극 사용하지 않더라도 클러스터가 활성화되어 있는 매 시간 또는 60분 미만 단위로 비용이 청구됩니다. 이 클러스터의 요금 발생을 중지하려면 클러스터를 삭제해야 합니다. 클러스터 삭제 섹션을 참조하세요.

Redis 3.2.4 이상을 실행 중이면 Redis(클러스터 모드 활성화됨) 클러스터를 생성할 수 있습니다. Redis(클러스터 모드 활성화됨) 클러스터는 현재 일부 제한이 있지만 1개부터 500개의 샤드(API/CLI: 노드 그룹)에 데이터를 분할하도록 지원합니다. Redis(클러스터 모드 비활성화됨)과 Redis(클러스터 모드 활성화됨)의 비교 내용은 지원되는 ElastiCache for Redis 버전 섹션을 참조하세요.

ElastiCache 콘솔을 사용하여 Redis(클러스터 모드 활성화됨) 클러스터를 생성하려면

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

  2. 상단 오른쪽 모서리의 목록에서 이 클러스터를 시작할 AWS 리전을 선택합니다.

  3. 탐색 창에서 시작하기(Get started)를 선택하세요.

  4. VPC 생성(Create VPC)을 선택하고 Virtual Private Cloud(VPC) 생성(Creating a Virtual Private Cloud (VPC))에 설명된 단계를 수행하세요.

  5. ElastiCache 대시보드 페이지에서 클러스터 생성(Create cluster)을 선택한 다음 Redis 클러스터 생성(Create Redis cluster)을 선택합니다.

  6. 클러스터 설정(Cluster settings)에서 다음을 수행합니다.

    1. 새 클러스터 구성 및 생성(Configure and create a new cluster)을 선택합니다.

    2. 클러스터 모드(Cluster mode)에서 사용 설정됨(Enabled)을 선택합니다.

    3. 클러스터 정보(Cluster info)이름(Name) 값을 입력합니다.

    4. (선택 사항) 설명(Description) 값을 입력합니다.

  7. 위치(Location)에서 다음을 수행합니다.

    AWS Cloud
    1. AWS 클라우드( Cloud)의 경우 다중 AZ(Multi-AZ)자동 장애 조치(Auto-failover)의 기본 설정을 수락하는 것이 좋습니다. 자세한 정보는 다중 AZ로 ElastiCache for Redis의 가동 중지 시간 최소화를 참조하세요.

    2. 클러스터 설정(Cluster settings)에서 다음을 수행합니다.

      1. 엔진 버전(Engine version)의 경우 사용 가능한 버전을 선택합니다.

      2. 포트(Port)의 경우 기본 포트인 6379를 사용합니다. 다른 포트를 사용해야 하는 경우 포트 번호를 입력합니다.

      3. 파라미터 그룹에서 파라미터 그룹을 선택하거나 새 파라미터 그룹을 만듭니다. 파라미터 그룹은 클러스터의 런타임 파라미터를 제어합니다. 파라미터 그룹에 대한 자세한 정보는 Redis 특정 파라미터파라미터 그룹 생성 섹션을 참조하세요.

        참고

        파라미터 그룹을 선택하여 엔진 구성 값을 설정하면 해당 파라미터 그룹이 글로벌 데이터 스토어의 모든 클러스터에 적용됩니다. 파라미터 그룹 페이지에서 yes/no 글로벌 속성은 파라미터 그룹이 글로벌 데이터 스토어의 일부인지 여부를 나타냅니다.

      4. 노드 유형에서 아래쪽 화살표( )를 선택합니다. 노드 유형 변경 대화 상자에서 원하는 노드 유형의 인스턴스 패밀리 값을 선택합니다. 그런 다음 이 클러스터에 사용할 노드 유형을 선택한 다음 저장을 선택합니다.

        자세한 정보는 노드 크기 선택 섹션을 참조하세요.

        r6gd 노드 유형을 선택하는 경우 데이터 계층화가 자동으로 사용 설정됩니다. 자세한 정보는 데이터 계층화을 참조하십시오.

      5. 샤드 수에서 이 Redis(클러스터 모드 활성화됨) 클러스터에 사용할 샤드(파티션/노드 그룹) 수를 선택합니다.

        일부 Redis(클러스터 모드 활성화됨) 버전의 경우 클러스터의 샤드 수를 동적으로 변경할 수 있습니다.

      6. 샤드당 복제본에서 각 샤드에 포함할 읽기 전용 복제본 노드 수를 선택합니다.

        Redis(클러스터 모드 활성화됨)에는 다음과 같은 제한 사항이 있습니다.

        • 다중 AZ를 활성화한 경우 샤드당 복제본이 하나 이상 있어야 합니다.

        • 콘솔을 사용하여 클러스터를 생성할 때 샤드마다 복제본 수가 동일합니다.

        • 샤드당 읽기 전용 복제본 수가 고정되어 변경할 수 없습니다. 샤드(API/CLI: 노드 그룹)당 복제본 수를 늘리거나 줄이려면 새로운 복제본 수로 새 클러스터를 생성해야 합니다. 자세한 정보는 외부에서 생성된 백업으로 새 클러스터 시드을 참조하십시오.

    3. 서브넷 그룹 설정(Subnet group settings)에서 이 클러스터에 적용할 서브넷을 선택합니다. ElastiCache는 기본 IPv4 서브넷 그룹을 제공하거나 선택하여 새 서브넷 그룹을 생성할 수 있습니다. IPv6의 경우 IPv6 CIDR 블록이 있는 서브넷 그룹을 생성해야 합니다.

      자세한 정보는 VPC에서 서브넷 생성을 참조하세요.

      ElastiCache에서 로컬 영역 사용 를 사용하는 경우 로컬 영역에 있는 서브넷을 선택하거나 생성해야 합니다.

      자세한 정보는 서브넷 및 서브넷 그룹을 참조하십시오.

    4. 가용 영역 배치(Availability zone placements)의 경우 다음 두 가지 옵션이 있습니다.

      • 기본 설정 없음 – ElastiCache에서 가용 영역을 선택합니다.

      • 가용 영역 지정 – 각 클러스터의 가용 영역을 지정합니다.

        가용 영역을 지정하도록 선택한 경우 샤드에 있는 각 클러스터에 대해 목록에서 가용 영역을 선택합니다.

      자세한 정보는 리전 및 가용 영역 선택을 참조하십시오.

    5. 다음(Next)을 선택합니다.

    6. 고급 Redis 설정(Advanced Redis settings)에서 다음을 수행합니다.

      1. 보안(Security)의 경우

        1. 데이터를 암호화하려면 다음과 같은 방법을 사용할 수 있습니다.

          • 저장된 데이터 암호화 - 디스크에 저장된 데이터 암호화를 활성화합니다. 자세한 정보는 저장된 데이터 암호화를 참조하세요.

            참고

            고객 관리형 AWS KMS 키를 선택하고 키를 선택하여 다른 암호화 키를 제공하는 옵션이 있습니다. 자세한 정보는 AWS KMS에서 고객 관리형 키 사용을 참조하세요.

          • 전송 중 데이터 암호화 – 전송 데이터 암호화를 활성화합니다. 자세한 정보는 전송 중 데이터 암호화를 참조하세요. Redis 엔진 버전 6.0 이상의 경우 전송 중 암호화를 활성화하면 다음 액세스 제어 옵션 중 하나를 지정하라는 메시지가 표시됩니다.

            • 액세스 제어 안 함 – 기본 설정입니다. 이 옵션은 클러스터에 대한 사용자 액세스를 제한하지 않는다는 의미입니다.

            • 사용자 그룹 액세스 제어 목록 - 클러스터에 액세스할 수 있는 사용자 집합이 정의된 사용자 그룹을 선택합니다. 자세한 정보는 콘솔 및 CLI를 사용하여 사용자 그룹 관리을 참조하십시오.

            • Redis AUTH 기본 사용자 – Redis 서버의 인증 메커니즘입니다. 자세한 정보는 Redis AUTH를 참조하세요.

          • Redis AUTH – Redis 서버의 인증 메커니즘입니다. 자세한 정보는 Redis AUTH를 참조하세요.

          참고

          버전 3.2.10을 제외한 3.2.6 이상의 Redis 버전의 경우 Redis AUTH가 유일한 옵션입니다.

        2. 보안 그룹에서 이 클러스터에 사용할 보안 그룹을 선택합니다. 보안 그룹은 클러스터에 대한 네트워크 액세스를 제어하는 방화벽 역할을 합니다. VPC의 기본 보안 그룹을 사용하거나 새 보안 그룹을 만들 수 있습니다.

          보안 그룹에 대한 자세한 정보는 Amazon VPC 사용 설명서VPC의 보안 그룹을 참조하세요.

    7. 정기적인 자동 백업을 예약할 경우 Enable automatic backups(자동 백업 활성화)를 선택한 후 자동으로 삭제되기 전에 각 자동 백업을 보존할 기간(일)을 입력합니다. 정기적인 자동 백업을 예약하지 않으려면 [Enable automatic backups] 확인란의 선택을 취소합니다. 어떤 경우든 수동 백업을 항상 생성할 수 있습니다.

      Redis 백업 및 복원에 대한 자세한 정보는 ElastiCache for Redis 백업 및 복원 섹션을 참조하세요.

    8. (선택 사항) 유지 관리 기간을 지정합니다. 유지 관리 기간은 ElastiCache가 클러스터의 시스템 유지 관리를 예약하는 시간이며 일반적으로 매주 한 시간입니다. ElastiCache에서 유지 관리 기간의 요일과 시간을 선택하도록 허용하거나(기본 설정 없음) 요일 시간 및 기간을 직접 선택할 수 있습니다(유지 관리 기간 지정). [Specify maintenance window]를 선택할 경우 목록에서 유지 관리 기간의 [Start day], [Start time] 및 [Duration](시간)을 선택합니다. 모든 시간은 UCT 시간입니다.

      자세한 정보는 유지 관리 관리 중을 참조하십시오.

    9. (선택 사항) 로그의 경우:

      • 로그 형식에서 텍스트 또는 JSON을 선택합니다.

      • 대상 유형에서 CloudWatch Logs 또는 Kinesis Firehose를 선택합니다.

      • 로그 대상에서 새로 생성을 선택하고 CloudWatch Logs 로그 그룹 이름이나 Kinesis Data Firehose 스트림 이름을 입력하거나 기존 항목 선택을 선택한 다음 CloudWatch Logs 로그 그룹 이름이나 Kinesis Data Firehose 스트림 이름을 선택합니다.

    10. 태그(Tags)의 경우 클러스터 및 기타 ElastiCache 리소스 관리를 돕기 위해 태그 형식으로 각 리소스에 고유한 메타데이터를 할당할 수 있습니다. 자세한 정보는 ElastiCache 리소스에 태그 지정 섹션을 참조하세요.

    11. 다음(Next)을 선택합니다.

    12. 입력 및 선택한 내용을 모두 검토한 다음 필요한 내용을 수정합니다. 준비가 되었으면 생성(Create)을 선택합니다.

    On premises
    1. 온프레미스(On premises)의 경우 자동 장애 조치(Auto-failover)를 사용 설정하는 것이 좋습니다. 자세한 내용은 다중 AZ로 ElastiCache for Redis의 가동 중지 시간 최소화를 참조하세요.

    2. Outposts 사용의 단계를 수행하세요.

ElastiCache 콘솔 대신 ElastiCache API 또는 AWS CLI를 사용하여 동일한 결과를 얻으려면 다음을 참조하세요.

클러스터 상태가 사용 가능이 되면 클러스터에 EC2 액세스 권한을 부여하고 클러스터에 연결하며 사용할 수 있습니다. 자세한 정보는 3단계: 클러스터에 대한 액세스 허가4단계: 클러스터 노드에 연결 섹션을 참조하세요.

중요

클러스터를 사용할 수 있게 되면 클러스터를 적극 사용하지 않더라도 클러스터가 활성화되어 있는 매 시간 또는 60분 미만 단위로 비용이 청구됩니다. 이 클러스터의 요금 발생을 중지하려면 클러스터를 삭제해야 합니다. 클러스터 삭제 섹션을 참조하세요.

AWS CLI를 사용하여 클러스터를 생성하려면 create-cache-cluster 명령을 사용하세요.

중요

클러스터를 사용할 수 있게 되면 클러스터를 적극 사용하지 않더라도 클러스터가 활성화되어 있는 매 시간 또는 60분 미만 단위로 비용이 청구됩니다. 이 클러스터의 요금 발생을 중지하려면 클러스터를 삭제해야 합니다. 클러스터 삭제 섹션을 참조하세요.

Redis(클러스터 모드 사용 중지됨) 캐시 클러스터 생성(CLI)

예 - 읽기 전용 복제본이 없는 Redis(클러스터 모드 비활성화됨) 클러스터

다음 CLI 코드는 복제본 없이 Redis(클러스터 모드 비활성화됨) 캐시 클러스터를 생성합니다.

참고

r6gd 패밀리의 노드 유형을 사용하여 클러스터를 생성하는 경우 data-tiering-enabled 파라미터를 전달해야 합니다.

Linux, macOS 또는 Unix의 경우는 다음과 같습니다.

aws elasticache create-cache-cluster \ --cache-cluster-id my-cluster \ --cache-node-type cache.r4.large \ --engine redis \ --num-cache-nodes 1 \ --cache-parameter-group default.redis6.x \ --snapshot-arns arn:aws:s3:::my_bucket/snapshot.rdb

Windows의 경우:

aws elasticache create-cache-cluster ^ --cache-cluster-id my-cluster ^ --cache-node-type cache.r4.large ^ --engine redis ^ --num-cache-nodes 1 ^ --cache-parameter-group default.redis6.x ^ --snapshot-arns arn:aws:s3:::my_bucket/snapshot.rdb

Redis(클러스터 모드 활성화됨) 클러스터 생성(AWS CLI)

Redis(클러스터 모드 활성화됨) 클러스터(API/CLI: 복제 그룹)는 create-cache-cluster 작업을 사용하여 생성할 수 없습니다. Redis(클러스터 모드 활성화됨) 클러스터(API/CLI: 복제 그룹)를 생성하려면 Redis(클러스터 모드 활성화됨) 복제 그룹을 처음부터 새로 생성(AWS CLI) 섹션을 참조하세요.

자세한 정보는 ElastiCache용 AWS CLI 참조 항목 create-replication-group을 참조하세요.

ElastiCache API를 사용하여 클러스터를 생성하려면 CreateCacheCluster 작업을 사용하세요.

중요

클러스터를 사용할 수 있게 되면 클러스터를 사용하지 않더라도 클러스터가 활성화되어 있는 매 시간 또는 60분 미만 단위로 비용이 청구됩니다. 이 클러스터의 요금 발생을 중지하려면 클러스터를 삭제해야 합니다. 클러스터 삭제 섹션을 참조하세요.

Redis(클러스터 모드 비활성화됨) 캐시 클러스터 생성(ElastiCache API)

다음 코드는 Redis(클러스터 모드 비활성화됨) 캐시 클러스터를 생성합니다(ElastiCache API).

줄바꿈은 가독성을 높이기 위해 추가되었습니다.

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateCacheCluster &CacheClusterId=my-cluster &CacheNodeType=cache.r4.large &CacheParameterGroup=default.redis3.2 &Engine=redis &EngineVersion=3.2.4 &NumCacheNodes=1 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &SnapshotArns.member.1=arn%3Aaws%3As3%3A%3A%3AmyS3Bucket%2Fdump.rdb &Timestamp=20150508T220302Z &Version=2015-02-02 &X-Amz-Algorithm=&AWS;4-HMAC-SHA256 &X-Amz-Credential=<credential> &X-Amz-Date=20150508T220302Z &X-Amz-Expires=20150508T220302Z &X-Amz-SignedHeaders=Host &X-Amz-Signature=<signature>

Redis(클러스터 모드 활성화됨) 캐시 클러스터 생성(ElastiCache API)

Redis(클러스터 모드 활성화됨) 클러스터(API/CLI: 복제 그룹)는 CreateCacheCluster 작업을 사용하여 생성할 수 없습니다. Redis(클러스터 모드 활성화됨) 클러스터(API/CLI: 복제 그룹)를 생성하려면 Redis(클러스터 모드 활성화됨)에서 복제 그룹을 처음부터 새로 생성(ElastiCache API) 섹션을 참조하세요.

자세한 정보는 ElastiCache API 참조 항목 CreateReplicationGroup을 참조하세요.