Redis (クラスターモードが有効) レプリケーショングループを最初から作成する - Amazon ElastiCache for Redis

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Redis (クラスターモードが有効) レプリケーショングループを最初から作成する

ElastiCache コンソール、、 AWS CLIまたは ElastiCache API を使用して、Redis (クラスターモードが有効) クラスター (API/CLI: レプリケーショングループ ) を作成できます。Redis (クラスターモードが有効) レプリケーショングループは、1〜500 個のシャード (API/CLI: ノードグループ) で構成され、各シャードには、1 つのプライマリクラスターと、最大 5 個のリードレプリカが含まれます。シャードの数が多くレプリカの数が少ないクラスターを作成できます。クラスターあたり最大 90 ノードです。このクラスター設定は、シャード 90 個およびレプリカ 0 個からシャード 15 個およびレプリカ 5 個 (許容されるレプリカの最大数) までです。

Redis エンジンのバージョンが 5.0.6 以上の場合、ノードまたはシャードの制限は、クラスターごとに最大 500 個に増やすことができます。例えば、83 個のシャード (シャードごとに 1 つのプライマリと 5 レプリカ) と 500 個のシャード (プライマリのみでレプリカなし) の範囲で、500 個のノードクラスターを設定できます。増加に対応できる十分な IP アドレスがあることを確認してください。一般的な落とし穴として、サブネットグループ内のサブネットの CIDR 範囲が小さすぎる、またはサブネットが他のクラスターで共有され、頻繁に使用されていることが挙げられます。詳細については、「サブネットグループの作成」を参照してください。

5.0.6 未満のバージョンの場合、クラスターあたりの制限は 250 個です。

この制限の拡大をリクエストするには、「AWS のサービスの制限」を参照し、制限タイプとして [Nodes per cluster per instance type (インスタンスタイプごとのクラスターあたりのノード)] を選択します。

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

Redis (クラスターモード対応) クラスターを作成するには、「Redis (クラスターモードが有効) クラスターの作成 (コンソール)」を参照してください。クラスターモード ([クラスターモードが有効 (スケールアウト)]) を必ず有効にし、それぞれに少なくとも 2 つのシャードと 1 つのレプリカノードを指定します。

Redis (クラスターモードが有効) レプリケーショングループを最初から作成する (AWS CLI)

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

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

--replication-group-id

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

Redis (クラスターモードが有効) レプリケーショングループの命名に関する制約は、次のとおりです。

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

  • 先頭は文字を使用する必要があります。

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

  • ハイフンで終わることはできません。

--replication-group-description

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

--cache-node-type

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

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

各ノードタイプのパフォーマンスの詳細の詳細については、「Amazon EC2 インスタンスタイプ」を参照してください。

--data-tiering-enabled

r6gd ノードタイプを使用している場合は、このパラメータを設定します。データ階層化の必要がない場合は、--no-data-tiering-enabled を設定します。詳細については、「データ階層化」を参照してください。

--cache-parameter-group

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

--engine

redis

--engine-version

3.2.4

--num-node-groups

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

注記

ノード/シャード制限は、クラスターあたり 500 まで増やすことができます。この制限の拡大をリクエストするには、「AWS サービスの制限」を参照し、制限タイプ「インスタンスタイプごとのクラスターあたりのノード」を選択します。

--replicas-per-node-group

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

--network-type

ipv4ipv または dual-stack です。デュアルスタックを選択する場合は、--IpDiscovery パラメータを ipv4 または ipv6 に設定する必要があります。

このレプリケーショングループで転送時または保管時の暗号化を有効にする場合は、--transit-encryption-enabled パラメータと --at-rest-encryption-enabled パラメータの一方または両方を追加し、次の条件を満たす必要があります。

  • レプリケーショングループは Redis バージョン 3.2.6 または 4.0.10.

  • レプリケーショングループは Amazon VPC で作成されている必要があります。

  • パラメータ --cache-subnet-group も含める必要があります。

  • このレプリケーショングループに対するオペレーションを実行するために必要な AUTH トークン (パスワード) 用に顧客が指定した文字列値にパラメータ --auth-token も含める必要があります。

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

Linux、macOS、Unix の場合:

aws elasticache create-replication-group \ --replication-group-id sample-repl-group \ --replication-group-description "Demo cluster with replicas" \ --num-node-groups 3 \ --replicas-per-node-group 2 \ --cache-node-type cache.m4.large \ --engine redis \ --security-group-ids SECURITY_GROUP_ID \ --cache-subnet-group-name SUBNET_GROUP_NAME>

Windows の場合:

aws elasticache create-replication-group ^ --replication-group-id sample-repl-group ^ --replication-group-description "Demo cluster with replicas" ^ --num-node-groups 3 ^ --replicas-per-node-group 2 ^ --cache-node-type cache.m4.large ^ --engine redis ^ --security-group-ids SECURITY_GROUP_ID ^ --cache-subnet-group-name SUBNET_GROUP_NAME>

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

{ "ReplicationGroup": { "Status": "creating", "Description": "Demo cluster with replicas", "ReplicationGroupId": "sample-repl-group", "SnapshotRetentionLimit": 0, "AutomaticFailover": "enabled", "SnapshotWindow": "05:30-06:30", "MemberClusters": [ "sample-repl-group-0001-001", "sample-repl-group-0001-002", "sample-repl-group-0001-003", "sample-repl-group-0002-001", "sample-repl-group-0002-002", "sample-repl-group-0002-003", "sample-repl-group-0003-001", "sample-repl-group-0003-002", "sample-repl-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、Unix の場合:

aws elasticache create-replication-group \ --replication-group-id new-group \ --replication-group-description "Sharded replication group" \ --engine redis \ --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 の場合:

aws elasticache create-replication-group ^ --replication-group-id new-group ^ --replication-group-description "Sharded replication group" ^ --engine redis ^ --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~40 個の英数字またはハイフンを使用する必要があります。

  • 先頭は文字を使用する必要があります。

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

  • ハイフンで終わることはできません。

ReplicationGroup説明

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

NumNodeグループ

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

ReplicasPerNodeGroup

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

NodeGroup設定

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

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

    例: us-west-2a。

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

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

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

    例: "0-4999"

     

CacheNodeタイプ

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

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

各ノードタイプのパフォーマンスの詳細の詳細については、「Amazon EC2 インスタンスタイプ」を参照してください。

--data-tiering-enabled

r6gd ノードタイプを使用している場合は、このパラメータを設定します。データ階層化の必要がない場合は、--no-data-tiering-enabled を設定します。詳細については、「データ階層化」を参照してください。

CacheParameterグループ

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

--network-type

ipv4ipv または dual-stack です。デュアルスタックを選択する場合は、--IpDiscovery パラメータを ipv4 または ipv6 に設定する必要があります。

エンジン

redis

EngineVersion

6.0

このレプリケーショングループで転送時または保管時の暗号化を有効にする場合は、TransitEncryptionEnabled=true パラメータと AtRestEncryptionEnabled=true パラメータの一方または両方を追加し、次の条件を満たす必要があります。

  • レプリケーショングループは Redis バージョン 3.2.6 または 4.0.10.

  • レプリケーショングループは Amazon VPC で作成されている必要があります。

  • パラメータ CacheSubnetGroup も含める必要があります。

  • このレプリケーショングループに対するオペレーションを実行するために必要な AUTH トークン (パスワード) 用に顧客が指定した文字列値にパラメータ AuthToken も含める必要があります。

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

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateReplicationGroup &CacheNodeType=cache.m4.large &CacheParemeterGroup=default.redis6.xcluster.on &Engine=redis &EngineVersion=6.0 &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。