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

ステップ 4: アクセスを許可する

このセクションでは、Amazon EC2 インスタンスの起動と接続に慣れていることを前提としています。詳細については、Amazon EC2 入門ガイド をご覧ください。

すべての ElastiCache クラスターは Amazon EC2 インスタンスからアクセスするように設計されています。最も一般的なシナリオは、同じ Amazon Virtual Private Cloud (Amazon VPC) の Amazon EC2 インスタンスから ElastiCache クラスターにアクセスすることです。これが、このトピックで説明するシナリオです。別の Amazon VPC、別のリージョン、または企業ネットワークから ElastiCache クラスターにアクセスすることの詳細については、 を参照してください。

デフォルトでは、クラスターへのネットワークアクセスは、クラスターの起動に使用されたユーザーアカウントに制限されます。EC2 インスタンスからクラスターに接続するには、EC2 インスタンスにクラスターへのアクセスを許可する必要があります。必要な手順はクラスターを EC2-VPC で起動したか、EC2-Classic で起動したかによって異なります。

ステップ 4.1: クラスターの環境を確認する

先に進む前に、EC2-VPC と EC2-Classic のどちらでクラスターを起動したかを確認します。

詳細については、「Detecting Your Supported Platforms and Whether You Have a Default VPC」を参照してください。

ElastiCache コンソールを使用してクラスタープラットフォームを確認する

以下の手順では ElastiCache コンソールを使用して、EC2-VPC と EC2-Classic のどちらでクラスターを起動したかを確認します。

ElastiCache コンソールを使用してクラスタープラットフォームを確認するには

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

  2. 左ナビゲーションペインで、クラスターで実行されているエンジンとして、[Memcached] または [Redis] を選択します。

  3. クラスターのリストで、クラスター名の左にあるボックスを選択して、アクセスを承認するクラスターを展開します。

  4. [Subnet group:] (サブネットグループ:) を見つけます。

    • 図のように [Subnet group] (サブネットグループ) に名前が入力されている場合は、クラスターが EC2-VPC で起動されています。「EC2-VPC でクラスターを起動した場合」に進んでください。

    • [Subnet group] (サブネットグループ) 名ではなくダッシュ (-) が表示される場合は、クラスターが EC2-Classic で起動されています。「EC2-Classic でクラスターを起動した場合」に進んでください。

詳細については、「Detecting Your Supported Platforms and Whether You Have a Default VPC」を参照してください。

AWS CLI を使用してクラスタープラットフォームを確認する

以下の手順では AWS CLI を使用して、EC2-VPC と EC2-Classic のどちらでクラスターを起動したかを確認します。

AWS CLI を使用してクラスタープラットフォームを確認するには

  1. コマンドウィンドウを開きます。

  2. コマンドプロンプトで、次のコマンドを入力します。

    Linux, macOS, or Unix 用:

    aws elasticache describe-cache-clusters \ --show-cache-cluster-details \ --cache-cluster-id redis-two

    Windows の場合:

    aws elasticache describe-cache-clusters ^ --show-cache-cluster-details ^ --cache-cluster-id redis-two

    このコマンドの JSON 出力は次のようになります。スペースを節約するため、出力の一部は省略されています。

    { "CacheClusters": [ { "Engine": "redis", "AuthTokenEnabled": false, "CacheParameterGroup": { "CacheNodeIdsToReboot": [], "CacheParameterGroupName": "default.redis3.2", "ParameterApplyStatus": "in-sync" }, "CacheClusterId": "redis-two-001", "CacheSecurityGroups": [], "NumCacheNodes": 1, "AtRestEncryptionEnabled": false, "CacheClusterCreateTime": "2018-01-16T20:09:34.449Z", "ReplicationGroupId": "redis-two", "AutoMinorVersionUpgrade": true, "CacheClusterStatus": "available", "PreferredAvailabilityZone": "us-east-2a", "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "SecurityGroups": [ { "Status": "active", "SecurityGroupId": "sg-e8c03081" } ], "TransitEncryptionEnabled": false, "CacheSubnetGroupName": "default", "EngineVersion": "3.2.10", "PendingModifiedValues": {}, "PreferredMaintenanceWindow": "sat:05:30-sat:06:30", "CacheNodeType": "cache.t2.medium" } ] }

ステップ 4.2: アクセス権限の付与

EC2-VPC でクラスターを起動した場合

クラスターを Amazon Virtual Private Cloud (Amazon VPC) で起動した場合、同じ Amazon VPC で実行されている Amazon EC2 インスタンスからのみ ElastiCache クラスターに接続できます。この場合、クラスターに対するネットワーク進入を許可する必要があります。

Amazon VPC セキュリティグループからクラスターへのネットワーク進入を許可するには

  1. AWS マネジメントコンソールにサインインをしたあと、https://console.aws.amazon.com/ec2/ にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインで、[Network & Security] の下にある [Security Groups] を選択します。

  3. セキュリティグループのリストから、Amazon VPC のセキュリティグループを選択します。ElastiCache 用のセキュリティグループを作成した場合を除き、このセキュリティグループは、default という名前になります。

  4. [Inbound] タブを選択し、次の操作を行います。

    1. [Edit] を選択します。

    2. [Add rule] を選択します。

    3. [Type] 列で [Custom TCP rule] を選択します。

    4. [Port range] ボックスに、クラスターノードのポート番号を入力します。この番号は、クラスターの起動時に指定した番号と同じ番号である必要があります。デフォルトのポートは次のとおりです。

      • Memcached: ポート 11211

      • Redis: ポート 6379

    5. [Source] ボックスで [Anywhere] を選択します。ポート範囲が 0.0.0.0/0 になるため、Amazon VPC 内で起動したすべての Amazon EC2 インスタンスを ElastiCache ノードに接続できます。

      重要

      ElastiCache クラスターを 0.0.0.0/0 (ステップ 4.e.) に設定した場合、パブリック IP アドレスが割り当てられず VPC 外からアクセスできないため、クラスターはインターネット接続できません。ただし、お客様のアカウントの他の Amazon EC2 インスタンスにデフォルトのセキュリティグループが適用され、そのインスタンスにパブリック IP アドレスが付与される場合があります。それがポート 6379 で実行された場合、意図しなくてもサービスが公開されることがあります。そのため、ElastiCache でのみ使用される VPC のセキュリティグループを作成されることをお勧めします。詳細については、「 カスタムセキュリティグループ」を参照してください。

    6. [Save] を選択します。

Amazon VPC で Amazon EC2 インスタンスを起動する場合、そのインスタンスは ElastiCache クラスターに接続できます。

EC2-Classic でクラスターを起動した場合

クラスターを EC2-Classic で起動した場合、Amazon EC2 インスタンスにクラスターへのアクセスを許可するには、そのインスタンスに関連付けられた Amazon EC2 セキュリティグループに、キャッシュセキュリティグループへのアクセスを許可する必要があります。

Amazon EC2 セキュリティグループにクラスターへのアクセスを許可するには

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

  2. セキュリティグループのリストを表示するには、左のナビゲーションペインから [Security Groups] を選択します。

    重要

    [Security Groups] (セキュリティグループ) がナビゲーションペインにリストされていない場合は、クラスターが EC2-Classic ではなく EC2-VPC で起動されています。「EC2-VPC でクラスターを起動した場合」の指示に従ってください。

  3. [default] セキュリティグループの左側にあるチェックボックスをオンにします。

  4. 画面の下部のリストから、許可する EC2 セキュリティグループ名を選択します。

  5. アクセスを許可するには、[Add] を選択します。

    これで、セキュリティグループに関連付けられた Amazon EC2 インスタンスを、ElastiCache クラスターに接続できるようになりました。

セキュリティグループのアクセスを取り消すには、許可されたセキュリティグループのリストから該当のセキュリティグループを見つけて [Remove] を選択します。

ElastiCache セキュリティグループの詳細については、「セキュリティグループ [EC2-Classic]」を参照してください。