Redis 用 Amazon ElastiCache
Redis 用 ElastiCache ユーザーガイド (API バージョン 2015-02-02)

接続エンドポイントの検索

エンドポイントを使用してアプリケーションがクラスターに接続します。エンドポイントはノードまたはクラスターの一意のアドレスです。

使用するエンドポイント

  • Redis スタンドアロンノード。ノードのエンドポイントを読み取りと書き込みの両方のオペレーションに使用します。

     

  • Redis (クラスターモードが無効) クラスタープライマリエンドポイントをすべての書き込みオペレーションに使用します。読み込みエンドポイントを使用して、すべてのリードレプリカ間でエンドポイントへの着信接続を均等に分割します。個々のノードエンドポイント (API/CLI ではリードエンドポイント) を読み取りオペレーションに使用します。

     

  • Redis (クラスターモードが有効) クラスター、クラスターの設定エンドポイントをすべてのオペレーションに使用します。Redis クラスター (Redis 3.2) をサポートするクライアントを使用する必要があります。個々のノードエンドポイント (API/CLI ではリードエンドポイント) から読み取ることもできます。

     

以下のセクションで、実行するエンジンに必要なエンドポイントの検索について説明します。

Redis (クラスターモードが無効) クラスターのエンドポイントの検索 ((コンソール))

Redis (クラスターモードが無効) クラスターに 1 つのみのノードがある場合、ノードのエンドポイントは読み取りと書き込みの両方に使用されます。Redis (クラスターモードが無効) クラスターに複数のノードがある場合は、プライマリエンドポイント読み込みエンドポイントノードエンドポイントの 3 種類のエンドポイントがあります。

プライマリエンドポイントは、常にクラスターのプライマリノードに解決される DNS 名です。プライマリエンドポイントは、リードレプリカのプライマリロールへの昇格など、クラスターに対する変更の影響を受けません。書き込みアクティビティの場合、アプリケーションを直接プライマリに接続する代わりに、プライマリエンドポイントに接続することをお勧めします。

読み込みエンドポイントによって、Redis 用 ElastiCache クラスター内のすべてのリードレプリカ間でエンドポイントへの着信接続が均等に分割されます。レプリカが追加または削除されても、読み込みエンドポイントはリアルタイムでクラスターの変更に対応します。Redis 用 ElastiCache クラスターの複数のリードレプリカを異なる AWS アベイラビリティーゾーン (AZ) に配置して、リーダーエンドポイントの高可用性を確保することができます。

読み取りアクティビティの場合、アプリケーションはクラスター内のいずれのノードにも接続できます。プライマリエンドポイントとは異なり、ノードエンドポイントは特定のエンドポイントに解決されます。レプリカの追加または削除など、クラスターに変更を加えた場合は、アプリケーションでノードエンドポイントを更新する必要があります。

Redis (クラスターモードが無効) クラスターのエンドポイントを検索するには

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

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

    クラスター画面には Redis (クラスターモードが無効) クラスターと Redis (クラスターモードが有効) クラスターの一覧が表示されています。

  3. クラスターのプライマリエンドポイントや読み込みエンドポイントを検索するには、クラスターの名前の左にあるチェックボックスをオンにします。

    イメージ: Redis (クラスターモードが無効) クラスターのプライマリエンドポイント

    Redis (クラスターモードが無効) クラスターのプライマリエンドポイントと読み込みエンドポイント

    クラスターに 1 つのみのノードがある場合、プライマリエンドポイントはないため、次のステップに進むことができます。

  4. Redis (クラスターモードが無効) クラスターにレプリカノードがある場合は、クラスターの名前を選択して、クラスターのレプリカノードエンドポイントを検索できます。

    ノードの画面では、クラスター内のプライマリとレプリカの各ノードがそのエンドポイントと共に表示されます。

    イメージ: Redis (クラスターモードが無効) クラスターのノードエンドポイント

    Redis (クラスターモードが無効) クラスターのノードエンドポイント

  5. エンドポイントをクリップボードにコピーするには:

    1. 一度に 1 つのみ、コピーするエンドポイントを見つけ、ハイライトします。

    2. 強調表示されたエンドポイントを右クリックして、コンテキストメニューから [Copy] を選択します。

    強調表示されたエンドポイントがクリップボードにコピーされます。

Redis (クラスターモードが無効) プライマリエンドポイントは以下のように表示されます。転送時の暗号化が有効かどうかによって違いがあります。

転送時の暗号化が無効

clusterName.xxxxxx.nodeId.regionAndAz.cache.amazonaws.com:port redis-01.7abc2d.0001.usw2.cache.amazonaws.com:6379

転送時の暗号化が有効

master.clusterName.xxxxxx.regionAndAz.cache.amazonaws.com:port master.ncit.ameaqx.use1.cache.amazonaws.com:6379

Redis (クラスターモードが有効) クラスターでのエンドポイントの検索 ((コンソール))

設定エンドポイントを読み取りと書き込みの両方のオペレーションに使用します。Redis によってアクセス先のクラスターのノードが決定されます。

以下の手順では、Redis (クラスターモードが有効) クラスターエンドポイントを検索してコピーする方法を示しています。

Redis (クラスターモードが有効) クラスターの設定エンドポイントを検索するには

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

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

    Redis のいずれかのバージョンを実行しているクラスターのリストが表示されます。

  3. クラスターのリストから、"Clustered Redis" を実行中のクラスターの左にあるチェックボックスをオンにします。

    画面が展開されて、選択したクラスターの詳細が表示されます。

  4. 設定エンドポイントを見つけます。

    イメージ: Redis (クラスターモードが有効) クラスターの設定エンドポイント

    Redis (クラスターモードが有効) クラスターの設定エンドポイント

Redis (クラスターモードが有効) クラスターのノードエンドポイントを検索するには

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

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

    Redis のいずれかのバージョンを実行しているクラスターのリストが表示されます。

  3. クラスターのリストから、"Clustered Redis" を実行中のクラスターの名前を選択します。

    シャードのページが開きます。

  4. ノードエンドポイントの対応するシャードの名前を選択します。

    シャードのノードのリストには、各ノードのエンドポイントが表示されます。

  5. [Endpoint] 列で、各ノードのエンドポイントを確認します。

    イメージ: Redis (クラスターモードが有効) クラスターのノードエンドポイント

    Redis (クラスターモードが有効) クラスターのノードエンドポイント

エンドポイントをクリップボードにコピーするには

  1. 先ほどのいずれかの手順を使用して、コピーするエンドポイントを検索します。

  2. コピーするエンドポイントを選択します。

  3. 強調表示されたエンドポイントを右クリックして、コンテキストメニューから [Copy] を選択します。

    強調表示されたエンドポイントがクリップボードにコピーされます。

Redis (クラスターモードが有効) 設定エンドポイントは以下のように表示されます。

転送時の暗号化が無効

clusterName.xxxxxx.regionAndAz.cache.amazonaws.com:port rce.ameaqx.use1.cache.amazonaws.com:6379

転送時の暗号化が有効

clustercfg.clusterName.xxxxxx.regionAndAz.cache.amazonaws.com:port clustercfg.rce.ameaqx.use1.cache.amazonaws.com:6379

エンドポイントの検索 (AWS CLI)

AWS CLI for Amazon ElastiCache を使用して、ノード、クラスター、レプリケーショングループのエンドポイントを検索できます

ノードとクラスターのエンドポイントの検索 (AWS CLI)

AWS CLI で describe-cache-clusters コマンドを使用して、クラスターとそのノードのエンドポイントを検出できます。Redis クラスターでは、そのコマンドがクラスターエンドポイントを返します。 オプションのパラメータ --show-cache-node-info を含めた場合、コマンドはクラスター内の個々のノードにエンドポイントを返します。

次のコマンドは、単一ノードの Redis (クラスターモードが無効) クラスター mycluster に関するクラスター情報を取得します。

重要

--cache-cluster-id パラメーターは、単一ノードの Redis (クラスターモードが無効) クラスター ID または Redis レプリケーション グループ内の特定のノード ID で使用できます。Redis レプリケーショングループの --cache-cluster-id は、0001 のような 4 桁の値です。--cache-cluster-id が Redis レプリケーショングループ内のクラスター (ノード) の ID である場合は、replication-group-id が出力に含まれます。

Linux, macOS, or Unix 用:

aws elasticache describe-cache-clusters \ --cache-cluster-id redis-cluster \ --show-cache-node-info

Windows の場合:

aws elasticache describe-cache-clusters ^ --cache-cluster-id redis-cluster ^ --show-cache-node-info

上記のオペレーションからの出力は以下のような JSON 形式になります。

{ "CacheClusters": [ { "CacheClusterStatus": "available", "SecurityGroups": [ { "SecurityGroupId": "sg-77186e0d", "Status": "active" } ], "CacheNodes": [ { "CustomerAvailabilityZone": "us-east-1b", "CacheNodeCreateTime": "2018-04-25T18:19:28.241Z", "CacheNodeStatus": "available", "CacheNodeId": "0001", "Endpoint": { "Address": "redis-cluster.ameaqx.0001.use1.cache.amazonaws.com", "Port": 6379 }, "ParameterGroupStatus": "in-sync" } ], "AtRestEncryptionEnabled": false, "CacheClusterId": "redis-cluster", "TransitEncryptionEnabled": false, "CacheParameterGroup": { "ParameterApplyStatus": "in-sync", "CacheNodeIdsToReboot": [], "CacheParameterGroupName": "default.redis3.2" }, "NumCacheNodes": 1, "PreferredAvailabilityZone": "us-east-1b", "AutoMinorVersionUpgrade": true, "Engine": "redis", "AuthTokenEnabled": false, "PendingModifiedValues": {}, "PreferredMaintenanceWindow": "tue:08:30-tue:09:30", "CacheSecurityGroups": [], "CacheSubnetGroupName": "default", "CacheNodeType": "cache.t2.small", "EngineVersion": "3.2.10", "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "CacheClusterCreateTime": "2018-04-25T18:19:28.241Z" } ] }

詳細については、トピック「describe-cache-clusters」を参照してください。

レプリケーショングループのエンドポイントの検索 (AWS CLI)

AWS CLI で describe-replication-groups コマンドを使用して、レプリケーショングループとそのクラスターのエンドポイントを検出できます。このコマンドでは、読み込みエンドポイントと合わせて、レプリケーショングループのプライマリエンドポイント、レプリケーショングループ内のすべてのクラスター (ノード)、およびそのエンドポイントのリストが返ります。

次のオペレーションでは、レプリケーショングループ myreplgroup のプライマリエンドポイントと読み込みエンドポイントが取得されます。すべての書き込みオペレーションにプライマリエンドポイントを使用します。

aws elasticache describe-replication-groups \ --replication-group-id myreplgroup

Windows の場合:

aws elasticache describe-replication-groups ^ --replication-group-id myreplgroup

このオペレーションからの出力は以下のような JSON 形式になります。

{ "ReplicationGroups": [ { "Status": "available", "Description": "test", "NodeGroups": [ { "Status": "available", "NodeGroupMembers": [ { "CurrentRole": "primary", "PreferredAvailabilityZone": "us-west-2a", "CacheNodeId": "0001", "ReadEndpoint": { "Port": 6379, "Address": "myreplgroup-001.1abc4d.0001.usw2.cache.amazonaws.com" }, "CacheClusterId": "myreplgroup-001" }, { "CurrentRole": "replica", "PreferredAvailabilityZone": "us-west-2b", "CacheNodeId": "0001", "ReadEndpoint": { "Port": 6379, "Address": "myreplgroup-002.1abc4d.0001.usw2.cache.amazonaws.com" }, "CacheClusterId": "myreplgroup-002" }, { "CurrentRole": "replica", "PreferredAvailabilityZone": "us-west-2c", "CacheNodeId": "0001", "ReadEndpoint": { "Port": 6379, "Address": "myreplgroup-003.1abc4d.0001.usw2.cache.amazonaws.com" }, "CacheClusterId": "myreplgroup-003" } ], "NodeGroupId": "0001", "PrimaryEndpoint": { "Port": 6379, "Address": "myreplgroup.1abc4d.ng.0001.usw2.cache.amazonaws.com" }, "ReaderEndpoint": { "Port": 6379, "Address": "myreplgroup-ro.1abc4d.ng.0001.usw2.cache.amazonaws.com" } } ], "ReplicationGroupId": "myreplgroup", "AutomaticFailover": "enabled", "SnapshottingClusterId": "myreplgroup-002", "MemberClusters": [ "myreplgroup-001", "myreplgroup-002", "myreplgroup-003" ], "PendingModifiedValues": {} } ] }

詳細については、AWS CLI Command Referenceの「describe-replication-groups」を参照してください。

エンドポイントの検索 (ElastiCache API)

Amazon ElastiCache API を使用して、ノード、クラスター、レプリケーショングループのエンドポイントを検索できます。

ノードとクラスターのエンドポイントの検索 (ElastiCache API)

ElastiCache API を使用して、DescribeCacheClusters アクションでクラスターのエンドポイントとそのノードを検出することができます。Redis クラスターでは、そのコマンドがクラスターエンドポイントを返します。 オプションのパラメーター ShowCacheNodeInfo を含めた場合、アクションはクラスター内の個々のノードのエンドポイントも返します。

https://elasticache.us-west-2.amazonaws.com/ ?Action=DescribeCacheClusters &CacheClusterId=mycluster &ShowCacheNodeInfo=true &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &Version=2015-02-02 &X-Amz-Credential=<credential>

レプリケーショングループのエンドポイントの検索 (ElastiCache API)

ElastiCache API を使用して、DescribeReplicationGroups アクションでレプリケーショングループのエンドポイントとそのクラスターを検出できます。このアクションでは、読み込みエンドポイントに合わせて、レプリケーショングループのプライマリエンドポイント、レプリケーショングループのすべてのクラスター、およびそのエンドポイントのリストが返ります。

以下のオペレーションでは、レプリケーショングループ myreplgroup のプライマリエンドポイント (PrimaryEndpoint)、読み込みエンドポイント (ReaderEndpoint)、個々のノードのエンドポイント (ReadEndpoint) を取得します。すべての書き込みオペレーションにプライマリエンドポイントを使用します。

https://elasticache.us-west-2.amazonaws.com/ ?Action=DescribeReplicationGroups &ReplicationGroupId=myreplgroup &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &Version=2015-02-02 &X-Amz-Credential=<credential>

詳細については、「DescribeReplicationGroups」を参照してください。