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

Amazon VPC の ElastiCache クラスターにアクセスするアクセスパターン

Amazon ElastiCache は、Amazon VPC でクラスターへアクセスするための以下のシナリオをサポートします。

ElastiCache クラスターと Amazon EC2 インスタンスが同じ Amazon VPC にある場合の ElastiCache クラスターへのアクセス

最も一般的ユースケースは、EC2 インスタンスにデプロイされたアプリケーションが同じ VPC のクラスターに接続する必要がある場合です。

このシナリオを以下に図で示します。

イメージ: 同じ VPC のアプリケーションと ElastiCache を示す図

同じ VPC 内の EC2 インスタンスと DB インスタンス間のアクセスを管理する方法として最も簡単なのは、次の方法です。

  1. クラスターの VPC セキュリティグループを作成します。このセキュリティグループは、クラスターインスタンスへのアクセスを制限するのに使用できます。たとえば、クラスターを作成したときに割り当てたポートと、クラスターにアクセスするのに使用する IP アドレスを使用して TCP へのアクセスを許可する、このセキュリティグループのカスタムルールを作成できます。

    デフォルトポート

    • Memcached: 11211

    • Redis: 6379

  2. EC2 インスタンス (ウェブサーバーとアプリケーションサーバー) 用の VPC セキュリティグループを作成します。このセキュリティグループは、必要に応じて VPC のルーティングテーブルを介してインターネットから EC2 インスタンスへのアクセスを許可できます。たとえば、ポート 22 経由で EC2 インスタンスへの TCP アクセスを許可するルールをこのセキュリティグループに設定できます。

  3. EC2 インスタンス用に作成したセキュリティグループからの接続を許可するクラスターのセキュリティグループで、カスタムルールを作成します。これは、セキュリティグループのメンバーに DB インスタンスへのアクセスを許可します。

他のセキュリティグループからの接続を許可する VPC セキュリティグループでルールを作成するには

  1. AWS マネジメントコンソールにサインインして Amazon VPC コンソール (https://console.aws.amazon.com/vpc) を開きます。

  2. ナビゲーションペインで、[Security Groups] を選択します。

  3. クラスターインスタンスに使用するセキュリティグループを選択または作成します。[Add Rule] を選択します。このセキュリティグループは、他のセキュリティグループのメンバーへのアクセスを許可します。

  4. [Type] で [Custom TCP Rule] を選択します。

    1. [Port Range] ポートには、クラスター作成時に使用したポートを指定します。

      デフォルトポート

      • Memcached: 11211

      • Redis: 6379

    2. [Source] ボックスに、セキュリティグループの ID の入力を開始します。リストから、Amazon EC2 インスタンスに使用するセキュリティグループを選択します。

  5. 終了したら、[Save] を選択します。

    イメージ: インバウンド VPC ルールを編集する画面

ElastiCache クラスターと Amazon EC2 インスタンスが異なる Amazon VPC にある場合の ElastiCache クラスターへのアクセス

クラスターがアクセスに使用している EC2 インスタンスとは異なる VPC にある場合、その DB インスタンスにアクセスする方法はいくつかあります。クラスターと EC2 インスタンスが別の VPC にあっても同じリージョンにある場合は、VPC ピア接続を使用できます。クラスターと EC2 インスタンスが異なるリージョンにある場合、リージョン間の VPN 接続を作成できます。

 

ElastiCache クラスターと Amazon EC2 インスタンスが同じリージョンの異なる Amazon VPC にある場合の ElastiCache クラスターへのアクセス

次の図は、同じリージョンの異なる Amazon VPC での、Amazon VPC ピア接続を使用した、Amazon EC2 インスタンスによるクラスターへのアクセスを示しています。

イメージ: 同一リージョンの異なる VPC のアプリケーションと ElastiCache を示す図。

同一リージョン内で異なる Amazon VPC の Amazon EC2 インスタンスがアクセスするクラスター - VPC ピア接続

VPC ピア接続は、プライベート IP アドレスを使用して 2 つの VPC 間でトラフィックをルーティングすることを可能にするネットワーク接続です。どちらの VPC のインスタンスも、同じネットワーク内に存在しているかのように、相互に通信できます。VPC ピア接続は、自分の Amazon VPC 間、または、1 つのリージョン内の他の AWS アカウントにある Amazon VPC との間に作成できます。Amazon VPC ピア接続の詳細については、VPC ドキュメントを参照してください。

ピア接続経由で別の Amazon VPC のクラスターにアクセスするには

  1. 2 つの VPC に、重複する IP 範囲がないことを確認します。重複する IP 範囲がある場合、それらをピア接続することができません。

  2. 2 つの VPC をピア接続します。詳細については、「Amazon VPC ピア接続の作成と使用」を参照してください。

  3. ルーティングテーブルを更新します。詳細については、「VPC ピア接続のルートテーブルを更新する」を参照してください

    前述の図に示した例のルートテーブルは次のようになります。pcx-a894f1c1 はピア接続であることに注意してください。

    イメージ: VPC ルーティングテーブルのスクリーンショット

    VPC ルーティングテーブル

  4. ElastiCache クラスターのセキュリティグループを変更して、ピア接続 VPC のアプリケーションセキュリティグループからのインバウンド接続を許可します。詳細については、「ピア VPC セキュリティグループの参照」を参照してください。

ピア接続によりクラスターにアクセスすると、追加のデータ転送コストが発生します。

 

ElastiCache クラスターと Amazon EC2 インスタンスが異なるリージョンの異なる Amazon VPC にある場合の ElastiCache クラスターへのアクセス

複数の、地理的に離れた VPC とリモートネットワークを接続する一般的な方法の 1 つは、グローバルなネットワーク中継センターとして機能する中継 VPC の作成です。中継 VPC はネットワーク管理を単純化して、複数の VPC とリモートのネットワークを接続するために必要な接続数を最小限に抑えます。この設計は、コロケーション中継ハブを物理的に設立したり、物理的なネットワーク設備をデプロイしたりするための従来の費用をほとんどかけずに実装できるため、時間と労力を節約し、コストも削減できます。

イメージ: 異なるリージョンの異なる VPC 間での接続を示す図

異なるリージョンの異なる VPC 間での接続

中継 Amazon VPC が確立できたら、1 つのリージョンの「スポーク」 VPC でデプロイしたアプリケーションを、別のリージョン内の「スポーク」 VPC で ElastiCache クラスターに接続できます。

別のリージョン内の異なる VPC のクラスターにアクセスするには

  1. Transit VPC ソリューションをデプロイします。詳細については、「AWS でグローバルな移行ネットワークを構築する方法」を参照してください。

  2. アプリおよびキャッシュ VPC の VPC ルーティングテーブルを更新し、VGW (仮想プライベートゲートウェイ) および VPN アプライアンスを通じてトラフィックをルーティングします。ボーダーゲートウェイプロトコル (BGP) を使用した動的ルーティングの場合、ルートは自動的に伝達される可能性があります。

  3. ElastiCache クラスターのセキュリティグループを変更して、アプリケーションインスタンスの IP 範囲からのインバウンド接続を許可します。このシナリオでは、アプリケーションサーバーセキュリティグループを参照することはできません。

リージョン間でクラスターにアクセスすると、ネットワークのレイテンシーが生じ、リージョン間のデータ転送コストが追加で発生します。

顧客のデータセンター内で実行されるアプリケーションからの ElastiCache クラスターへのアクセス

もう 1 つシナリオとして、クライアントまたは顧客のデータセンター内のアプリケーションが VPC の ElastiCache クラスターにアクセスする必要がある場合のようなハイブリッドアーキテクチャが考えられます。このシナリオは、顧客の VPC とデータセンター間で VPN または Direct Connect による接続がある場合にサポートされます。

 

顧客のデータセンター内で実行されるアプリケーションからの VPN 接続を使用した ElastiCache クラスターへのアクセス

次の図は、VPN 接続を使用して社内ネットワークで実行されるアプリケーションから ElastiCache クラスターにアクセスする様子を示しています。

イメージ: VPN によるデータセンターから ElastiCache への接続を示す図

VPN によるデータセンターから ElastiCache への接続

VPN 接続経由でオンプレミスアプリケーションから VPC のクラスターにアクセスするには

  1. VPC にハードウェア仮想プライベートゲートウェイを追加して、VPN 接続を確立します。詳細については、「VPC へのハードウェア仮想プライベートゲートウェイの追加」を参照してください。

  2. ElastiCache クラスターがデプロイされているサブネットの VPC ルーティングテーブルを更新して、オンプレミスアプリケーションサーバーからのトラフィックを許可します。BGP を使用した動的ルーティングの場合、ルートは自動的に伝達される可能性があります。

  3. ElastiCache クラスターのセキュリティグループを変更して、オンプレミスアプリケーションサーバーからのインバウンド接続を許可します。

VPN 接続経由でクラスターにアクセスすると、ネットワークのレイテンシーが生じ、追加のデータ転送コストが発生します。

 

顧客のデータセンター内で実行されるアプリケーションからの Direct Connect を使用した ElastiCache クラスターへのアクセス

次の図は、Direct Connect を使用して社内ネットワークで実行されるアプリケーションから ElastiCache クラスターにアクセスする様子を示しています。

イメージ: Direct Connect によるデータセンターから ElastiCache への接続を示す図

Direct Connect によるデータセンターから ElastiCache への接続

Direct Connect を使用して、ネットワークで実行されるアプリケーションから ElastiCache クラスターにアクセスするには

  1. Direct Connect 接続を確立します。詳細については、AWS Direct Connect 入門ガイドを参照してください。

  2. ElastiCache クラスターのセキュリティグループを変更して、オンプレミスアプリケーションサーバーからのインバウンド接続を許可します。

DX 接続経由でクラスターにアクセスすると、ネットワークのレイテンシーが生じ、追加のデータ転送料金が発生する場合があります。