メニュー
Amazon ElastiCache
ユーザーガイド (API Version 2015-02-02)

レプリカを持つ Redis (クラスターモードが有効) クラスターの最初からの作成

コンソール、AWS CLI、または ElastiCache API を使用して、Redis (クラスターモードが有効) クラスターを作成できます (API/CLI: replication group)。Redis (クラスターモードが有効) レプリケーショングループは、1〜 15 個のシャード (API/CLI: ノードグループ) で構成され、各シャードには、1 つのプライマリクラスターと、最大 5 個のリードレプリカが含まれます。ElastiCache コンソールを使用してクラスターを作成すると、シャードごとのリードレプリカ数は同一数になります。

Redis (クラスターモードが有効) クラスターの作成 (コンソール)

Redis (クラスターモードが有効) クラスターを作成するには、「Redis (クラスターモードが有効) クラスターの作成 (コンソール)」を参照してください。クラスターモード ([Cluster Mode enabled (Scale Out)]) を必ず有効にし、最低 2 つのシャードと 1 つのレプリカノードを指定します。

レプリカを持つ Redis (クラスターモードが有効) クラスターの最初からの作成 (AWS CLI)

次の手順では、AWS CLI を使用して Redis (クラスターモードが有効) レプリケーショングループを作成します。

Redis (クラスターモードが有効) レプリケーショングループを最初から作成する場合は、レプリケーショングループとそのすべてのノードを、AWS CLI create-replication-group コマンドへの 1 回の呼び出しで作成します。以下のパラメーターを含めます。

--replication-group-id

作成するレプリケーショングループの名前。

Redis (クラスターモードが有効) レプリケーショングループの命名に関する制約

  • 1~20 文字の英数字またはハイフンを使用する必要があります。

  • 先頭は文字にする必要があります。

  • 連続する 2 つのハイフンを含めることはできません。

  • 末尾をハイフンすることはできません。

--replication-group-description

(オプション) レプリケーショングループの説明。

--cache-node-type

レプリケーショングループの各ノードのノードタイプ。

ElastiCache では以下のノードがサポートされています。一般に、現行世代のタイプは、以前の世代の同等タイプと比較した場合、メモリが多く処理能力が高くなっています。

  • 汎用:

    • 現行世代:

      T2 ノードタイプ: cache.t2.microcache.t2.smallcache.t2.medium

      M3 ノードタイプ: cache.m3.mediumcache.m3.largecache.m3.xlargecache.m3.2xlarge

      M4 ノードタイプ: cache.m4.largecache.m4.xlargecache.m4.2xlargecache.m4.4xlargecache.m4.10xlarge

    • 以前の世代: (推奨しません)

      T1 ノードタイプ: cache.t1.micro

      M1 ノードタイプ: cache.m1.smallcache.m1.mediumcache.m1.largecache.m1.xlarge

  • コンピューティングの最適化:

    • 以前の世代: (推奨しません)

      C1 ノードタイプ: cache.c1.xlarge

  • メモリ最適化:

    • 現行世代:

      R3 ノードタイプ: cache.r3.largecache.r3.xlargecache.r3.2xlargecache.r3.4xlargecache.r3.8xlarge

    • 以前の世代: (推奨しません)

      M2 ノードタイプ: cache.m2.xlargecache.m2.2xlargecache.m2.4xlarge

追加ノードタイプ情報

  • すべての T2 インスタンスは Amazon Virtual Private Cloud (Amazon VPC) で作成されます。

  • Redis バックアップおよび復元は、T2 インスタンスではサポートされません。

  • Redis AOF (Append-Only File) は、T1 または T2 インスタンスではサポートされません。

  • 自動フェイルオーバー機能を備えた Redis マルチ AZ は、T1 インスタンスではサポートされていません。

  • 自動フェイルオーバーを使用する Redis マルチ AZ は、Redis (クラスターモードが有効) - バージョン 3.2.4 以降を default.redis3.2.cluster.on パラメータグループまたはその派生を指定して実行する場合にのみ T2 インスタンスでサポートされます。

  • Redis 設定変数 appendonly および appendfsync Redis バージョン 2.8.22 以降ではサポートされていません。

--cache-parameter-group

default.redis3.2.cluster.on パラメータグループまたは default.redis3.2.cluster.on から派生したパラメータグループを指定して、Redis (クラスターモードが有効) レプリケーショングループを作成します。詳細については、「Redis 3.2.4 パラメーターの変更」を参照してください。

--engine

redis

--engine-version

3.2.4

--num-node-groups

このレプリケーショングループのノードグループの数。有効な値の範囲は 1~15 です。

--replicas-per-node-group

各ノードグループのレプリカノードの数。有効な値の範囲は 1~5 です。

このクラスターで転送時の暗号化または保管時の暗号化を有効にする場合、以下のパラメータを追加します。

  • --transit-encryption-enabled

    転送時の暗号化を有効にする場合、クラスターは、Amazon VPC で作成される必要があり、パラメータ --cache-subnet-group を含める必要があります。

  • AUTH トークン (パスワード) 用に顧客が文字列値を指定した --auth-token が、このクラスター上のオペレーションに必要です。

  • --at-rest-encryption-enabled

次のオペレーションでは、3 つのノードグループおよびシャード (--num-node-groups) を持つ Redis (クラスターモードが有効) レプリケーショングループ new-group を作成します。各レプリケーショングループに 3 つのノード、1 つのプライマリ、2 つのリードレプリカ (--replicas-per-node-group) が含まれます。

Linux, macOS, or Unix 用:

Copy
aws elasticache create-replication-group \ --replication-group-id new-group \ --replication-group-description "Demo cluster with replicas" \ --num-node-groups 3 \ --replicas-per-node-group 2 \ --cache-node-type cache.m4.large \ --cache-parameter-group default.redis3.2.cluster.on \ --engine redis \ --engine-version 3.2.4

Windows の場合:

Copy
aws elasticache create-replication-group ^ --replication-group-id new-group ^ --replication-group-description "Demo cluster with replicas" ^ --num-node-groups 3 ^ --replicas-per-node-group 2 ^ --cache-node-type cache.m4.large ^ --cache-parameter-group default.redis3.2.cluster.on ^ --engine redis ^ --engine-version 3.2.4

前述のコマンドは、次の出力を生成します。

{
    "ReplicationGroup": {
        "Status": "creating", 
        "Description": "Demo cluster with replicas", 
        "ReplicationGroupId": "new-group", 
        "SnapshotRetentionLimit": 0, 
        "AutomaticFailover": "enabled", 
        "SnapshotWindow": "05:30-06:30", 
        "MemberClusters": [
            "new-group-0001-001", 
            "new-group-0001-002", 
            "new-group-0001-003", 
            "new-group-0002-001", 
            "new-group-0002-002", 
            "new-group-0002-003", 
            "new-group-0003-001", 
            "new-group-0003-002", 
            "new-group-0003-003"
        ], 
        "PendingModifiedValues": {}
    }
}

Redis (クラスターモードが有効) レプリケーショングループをゼロから作成する際、次の例に示すように --node-group-configuration パラメータを使用してクラスター内の各シャードを設定することで、2 つのノードグループ (コンソール: シャード) を設定できます。1 つめのシャードは、2 つのノード、1 つのプライマリ、1 つのリードレプリカで構成されます。2 つめのシャードは、3 つのノード、1 つのプライマリ、2 つのリードレプリカで構成されます。

--node-group-configuration

各ノードグループの設定。--node-group-configuration パラメーターは次のフィールドで構成されます。

  • PrimaryAvailabilityZone – このノードグループのプライマリノードがあるアベイラビリティーゾーン。このパラメータを省略すると、ElastiCache によってプライマリノードのアベイラビリティーゾーンが選択されます。

    例: us-west-2a。

  • ReplicaAvailabilityZones – リードレプリカがあるアベイラビリティゾーンのカンマ区切りリスト。このリストのアベイラビリティーゾーンの数は、ReplicaCount の値と一致する必要があります。このパラメータを省略すると、ElastiCache によってレプリカノードのアベイラビリティーゾーンが選択されます。

    例: "us-west-2a,us-west-2b,us-west-2c"

  • ReplicaCount – このノードグループのレプリカノードの数。

  • Slots – 対象ノードグループのキースペースを指定する文字列。この文字列は次の形式になります。startKey-endKey このパラメーターを省略すると、ElastiCache によってノードグループ間でキーが均等に割り当てられます。

    例: "0-4999"

     

次のオペレーションでは、2 つのノードグループとシャード (--num-node-groups) を持つ Redis (クラスターモードが有効) レプリケーショングループ new-group を作成します。前の例とは異なり、各ノードグループは、その他のノードグループ (--node-group-configuration) とは異なった構成になります。

Linux, macOS, or Unix 用:

Copy
aws elasticache create-replication-group \ --replication-group-id rc-rg \ --replication-group-description "Sharded replication group" \ --engine redis \ --engine-version 3.2.4 \ --cache-parameter-group default.redis3.2.cluster.on \ --snapshot-retention-limit 8 \ --cache-node-type cache.m4.medium \ --num-node-groups 2 \ --node-group-configuration \ "ReplicaCount=1,Slots=0-8999,PrimaryAvailabilityZone='us-east-1c',ReplicaAvailabilityZones='us-east-1b'" \ "ReplicaCount=2,Slots=9000-16383,PrimaryAvailabilityZone='us-east-1a',ReplicaAvailabilityZones='us-east-1a','us-east-1c'"

Windows の場合:

Copy
aws elasticache create-replication-group ^ --replication-group-id rc-rg ^ --replication-group-description "Sharded replication group" ^ --engine redis ^ --engine-version 3.2.4 ^ --cache-parameter-group default.redis3.2.cluster.on ^ --snapshot-retention-limit 8 ^ --cache-node-type cache.m4.medium ^ --num-node-groups 2 ^ --node-group-configuration \ "ReplicaCount=1,Slots=0-8999,PrimaryAvailabilityZone='us-east-1c',ReplicaAvailabilityZones='us-east-1b'" \ "ReplicaCount=2,Slots=9000-16383,PrimaryAvailabilityZone='us-east-1a',ReplicaAvailabilityZones='us-east-1a','us-east-1c'"

前述のオペレーションは、次の出力を生成します。

{
    "ReplicationGroup": {
        "Status": "creating", 
        "Description": "Sharded replication group", 
        "ReplicationGroupId": "rc-rg", 
        "SnapshotRetentionLimit": 8, 
        "AutomaticFailover": "enabled", 
        "SnapshotWindow": "10:00-11:00", 
        "MemberClusters": [
            "rc-rg-0001-001", 
            "rc-rg-0001-002", 
            "rc-rg-0002-001", 
            "rc-rg-0002-002", 
            "rc-rg-0002-003"
        ], 
        "PendingModifiedValues": {}
    }
}

使用するパラメータおよび追加情報については、AWS CLI トピックの「 create-replication-group」を参照してください。

レプリカを持つ Redis (クラスターモードが有効) クラスターの最初からの作成 (ElastiCache API)

次の手順では、ElastiCache API を使用して Redis (クラスターモードが有効) レプリケーショングループを作成します。

Redis (クラスターモードが有効) レプリケーショングループを最初から作成する場合、レプリケーショングループとそのすべてのノードを、ElastiCache API CreateReplicationGroup オペレーションへの 1 回の呼び出しで作成します。以下のパラメーターを含めます。

ReplicationGroupId

作成するレプリケーショングループの名前。

Redis (クラスターモードが有効) レプリケーショングループの命名に関する制約

  • 1~20 文字の英数字またはハイフンを使用する必要があります。

  • 先頭は文字にする必要があります。

  • 連続する 2 つのハイフンを含めることはできません。

  • 末尾をハイフンすることはできません。

ReplicationGroupDescription

レプリケーショングループの説明。

NumNodeGroups

このレプリケーショングループで作成するノードグループの数。有効な値の範囲は 1~15 です。

ReplicasPerNodeGroup

各ノードグループのレプリカノードの数。有効な値の範囲は 1~5 です。

NodeGroupConfiguration

各ノードグループの設定。NodeGroupConfiguration パラメーターは次のフィールドで構成されます。

  • PrimaryAvailabilityZone – このノードグループのプライマリノードがあるアベイラビリティーゾーン。このパラメータを省略すると、ElastiCache によってプライマリノードのアベイラビリティーゾーンが選択されます。

    例: us-west-2a。

  • ReplicaAvailabilityZones – リードレプリカがあるアベイラビリティゾーンのリスト。このリストのアベイラビリティーゾーンの数は、ReplicaCount の値と一致する必要があります。このパラメータを省略すると、ElastiCache によってレプリカノードのアベイラビリティーゾーンが選択されます。

  • ReplicaCount – このノードグループのレプリカノードの数。

  • Slots – 対象ノードグループのキースペースを指定する文字列。この文字列は次の形式になります。startKey-endKey このパラメーターを省略すると、ElastiCache によってノードグループ間でキーが均等に割り当てられます。

    例: "0-4999"

     

CacheNodeType

レプリケーショングループの各ノードのノードタイプ。

ElastiCache では以下のノードがサポートされています。一般に、現行世代のタイプは、以前の世代の同等タイプと比較した場合、メモリが多く処理能力が高くなっています。

  • 汎用:

    • 現行世代:

      T2 ノードタイプ: cache.t2.microcache.t2.smallcache.t2.medium

      M3 ノードタイプ: cache.m3.mediumcache.m3.largecache.m3.xlargecache.m3.2xlarge

      M4 ノードタイプ: cache.m4.largecache.m4.xlargecache.m4.2xlargecache.m4.4xlargecache.m4.10xlarge

    • 以前の世代: (推奨しません)

      T1 ノードタイプ: cache.t1.micro

      M1 ノードタイプ: cache.m1.smallcache.m1.mediumcache.m1.largecache.m1.xlarge

  • コンピューティングの最適化:

    • 以前の世代: (推奨しません)

      C1 ノードタイプ: cache.c1.xlarge

  • メモリ最適化:

    • 現行世代:

      R3 ノードタイプ: cache.r3.largecache.r3.xlargecache.r3.2xlargecache.r3.4xlargecache.r3.8xlarge

    • 以前の世代: (推奨しません)

      M2 ノードタイプ: cache.m2.xlargecache.m2.2xlargecache.m2.4xlarge

追加ノードタイプ情報

  • すべての T2 インスタンスは Amazon Virtual Private Cloud (Amazon VPC) で作成されます。

  • Redis バックアップおよび復元は、T2 インスタンスではサポートされません。

  • Redis AOF (Append-Only File) は、T1 または T2 インスタンスではサポートされません。

  • 自動フェイルオーバー機能を備えた Redis マルチ AZ は、T1 インスタンスではサポートされていません。

  • 自動フェイルオーバーを使用する Redis マルチ AZ は、Redis (クラスターモードが有効) - バージョン 3.2.4 以降を default.redis3.2.cluster.on パラメータグループまたはその派生を指定して実行する場合にのみ T2 インスタンスでサポートされます。

  • Redis 設定変数 appendonly および appendfsync Redis バージョン 2.8.22 以降ではサポートされていません。

CacheParameterGroup

default.redis3.2.cluster.on パラメータグループまたは default.redis3.2.cluster.on から派生したパラメータグループを指定して、Redis (クラスターモードが有効) レプリケーショングループを作成します。詳細については、「Redis 3.2.4 パラメーターの変更」を参照してください。

エンジン

redis

EngineVersion

3.2.4

このクラスターで転送時の暗号化または保管時の暗号化を有効にする場合、以下のパラメータを追加します。

  • TransitEncryptionEnabled=true

    転送時の暗号化を有効にする場合、クラスターは、Amazon VPC で作成される必要があり、パラメータ CacheSubnetGroup を含める必要があります。

  • AUTH トークン (パスワード) 用に顧客が文字列値を指定した AuthToken が、このクラスター上のオペレーションに必要です。

  • AtRestEncryptionEnabled=true

読みやすくするために改行が追加されます。

Copy
https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateReplicationGroup &CacheNodeType=cache.m4.large &CacheParemeterGroup=default.redis3.2.cluster.on &Engine=redis &EngineVersion=3.2.4 &NumNodeGroups=3 &ReplicasPerNodeGroup=2 &ReplicationGroupDescription=test%20group &ReplicationGroupId=myReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

使用するパラメータおよび追加情報については、ElastiCache API トピックの「 CreateReplicationGroup」を参照してください。