Redis OSS レプリケーションについて - Amazon ElastiCache (Redis OSS)

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

Redis OSS レプリケーションについて

Redis OSS は、次の 2 つの方法でレプリケーションを実装します。

  • 各ノードにクラスターのすべてのデータを含む単一のシャードを使用 — Redis OSS (クラスターモードが無効)

  • 最大 500 個のシャードに分割されたデータの場合 — Redis OSS (クラスターモードが有効)

レプリケーショングループ内の各シャードには、単一の読み取り/書き込みプライマリノードと、最大 5 個の読み取り専用レプリカノードがあります。シャードの数が多くレプリカの数が少ないクラスターを作成できます。クラスターあたり最大 90 ノードです。このクラスター設定は、シャード 90 個およびレプリカ 0 個からシャード 15 個およびレプリカ 5 個 (許容されるレプリカの最大数) までです。

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

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

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

Redis OSS (クラスターモードが無効)

Redis OSS (クラスターモードが無効) クラスターには 1 つのシャードがあり、その中には Redis OSS ノードのコレクションがあります。1 つのプライマリ読み取り/書き込みノードと最大 5 つの読み取り専用セカンダリレプリカノードがあります。各リードレプリカは、クラスターのプライマリノードにあるデータのコピーを保持します。非同期レプリケーション機能は、リードレプリカとプライマリの同期を維持するのに使用されます。アプリケーションは、クラスター内のどのノードからでも読み取ることができます。アプリケーションは、そのプライマリノードにのみ書き込むことができます。リードレプリカは読み取りスループットを向上させ、ノードの障害発生時のデータ損失に対する保護を強化します。

イメージ: 単一のシャードノードとレプリカノードを持つ Redis OSS (クラスターモードが無効) クラスター

単一のシャードノードとレプリカノードを持つ Redis OSS (クラスターモードが無効) クラスター

レプリカノードで Redis OSS (クラスターモードが無効) クラスターを使用すると、 の ElastiCache Redis OSS ソリューションをスケールして、読み取り集約型のアプリケーションを処理するか、同じクラスターから同時に読み取りを行う多数のクライアントをサポートできます。

Redis OSS (クラスターモードが無効) クラスター内のすべてのノードは、同じリージョンに存在する必要があります。

クラスターにリードレプリカを追加すると、プライマリのすべてのデータが新しいノードにコピーされます。その時以降、データがプライマリに書き込まれるときには常に、変更が非同期的にすべてのリードレプリカに反映されます。

耐障害性を向上させ、書き込みダウンタイムを減らすには、レプリカを持つ Redis OSS (クラスターモードが無効) クラスターの自動フェイルオーバーでマルチ AZ を有効にします。詳細については、「マルチ AZ による ElastiCache (Redis OSS) のダウンタイムの最小化」を参照してください。

Redis OSS (クラスターモードが無効) クラスター内のノードのロールを変更でき、プライマリとレプリカの 1 つがロールを交換します。この作業は、パフォーマンスチューニングの理由で実行することがあります。たとえば、書き込みアクティビティが多いウェブアプリケーションでは、ネットワークレイテンシーが最も低いノードを選択することができます。詳細については、「Redis OSS (クラスターモードが無効) レプリケーショングループのリードレプリカをプライマリに昇格させる」を参照してください。

Redis OSS (クラスターモードが有効)

Redis OSS (クラスターモードが有効) クラスターは、1~500 個のシャード (API/CLI: ノードグループ) で構成されます。各シャードには、読み取り/書き込みプライマリノードと最大 5 個のリードレプリカノードが含まれます。この構成は、シャード 90 個およびレプリカ 0 個からシャード 15 個およびレプリカ 5 個 (許容されるレプリカの最大数) までです。

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

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

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

シャード内の各リードレプリカは、シャードのプライマリからのデータのコピーを維持します。非同期レプリケーション機能は、リードレプリカとプライマリの同期を維持するのに使用されます。アプリケーションは、クラスター内のどのノードからでも読み取ることができます。アプリケーションは、そのプライマリノードにのみ書き込むことができます。リードレプリカは、読み取り拡張性およびデータ損失に対する保護を強化します。データは Redis OSS (クラスターモードが有効) クラスターのシャード間でパーティション化されます。

アプリケーションは、Redis OSS (クラスターモードが有効) クラスターの設定エンドポイントを使用して、クラスター内のノードに接続します。詳細については、「接続エンドポイントの検索」を参照してください。

イメージ: 複数のシャードとレプリカノードを持つ Redis OSS (クラスターモードが有効) クラスター

複数のシャードとレプリカノードを持つ Redis OSS (クラスターモードが有効) クラスター

Redis OSS (クラスターモードが有効) クラスター内のすべてのノードは、同じリージョンに存在する必要があります。耐障害性を向上させるために、そのリージョン内の複数のアベイラビリティーゾーンにプライマリとリードレプリカの両方をプロビジョニングできます。

現在、Redis OSS (クラスターモードが有効) にはいくつかの制限があります。

  • いずれのレプリカノードも手動でプライマリに昇格することはできません。