翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ElastiCache での接続エンドポイントの検索
アプリケーションは、エンドポイントを使用して ElastiCache クラスターに接続します。エンドポイントはノードまたはクラスターの一意のアドレスです。
AWS PrivateLink を介してインターフェイス VPC エンドポイントを作成し、VPC エンドポイントと ElastiCache API エンドポイントの間にプライベート接続を確立することもできます。詳細については、「ElastiCache API とインターフェイス VPC エンドポイント (AWS PrivateLink)」を参照してください。
Valkey または Redis OSS で使用するエンドポイント。
-
スタンドアロンノードの場合は、ノードのエンドポイントを読み取りと書き込みの両方のオペレーションに使用します。
-
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターの場合は、すべての書き込みオペレーションでプライマリエンドポイントを使用します。読み込みエンドポイントを使用して、すべてのリードレプリカ間でエンドポイントへの着信接続を均等に分割します。個々のノードエンドポイント (API/CLI ではリードエンドポイント) を読み取りオペレーションに使用します。
-
Valkey または Redis OSS (クラスターモードが有効) クラスターの場合は、クラスターモードが有効なコマンドをサポートするすべてのオペレーションで、クラスターの設定エンドポイントを使用します。Valkey クラスター、または Redis OSS 3.2 以上の Redis OSS クラスターをサポートするクライアントを使用する必要があります。個々のノードエンドポイント (API/CLI ではリードエンドポイント) から読み取ることもできます。
以下のセクションで、実行するエンジンに必要なエンドポイントの検索について説明します。
Memcached で使用するエンドポイント。
Memcached 用の ElastiCache サーバーレスキャッシュの場合は、コンソールからクラスターエンドポイントの DNS とポートを取得するだけです。
AWS CLI から describe-serverless-caches コマンドを使用してエンドポイント情報を取得します。
Linux
aws elasticache describe-serverless-caches --serverless-cache-name CacheName
Windows
aws elasticache describe-serverless-caches --serverless-cache-name CacheName
上記のオペレーションからの出力は以下のような JSON 形式になります。
{ "ServerlessCaches": [ { "ServerlessCacheName": "serverless-memcached", "Description": "test", "CreateTime": 1697659642.136, "Status": "available", "Engine": "memcached", "MajorEngineVersion": "1.6", "FullEngineVersion": "21", "SecurityGroupIds": [ "sg-083eda453e1e51310" ], "Endpoint": { "Address": "serverless-memcached-01.amazonaws.com", "Port":11211 }, "ARN": "<the ARN>", "SubnetIds": [ "subnet-0cf759df15bd4dc65", "subnet-09e1307e8f1560d17" ], "SnapshotRetentionLimit": 0, "DailySnapshotTime": "03:00" } ] }
インスタンスベースの Memcached クラスターの場合は、自動検出を使用すると、クラスターの設定エンドポイントを Memcached クライアントの設定に使用できます。つまり、自動検出をサポートするクライアントを使用する必要があります。
自動検出を使用しない場合は、読み取りと書き込みに個々のノードのエンドポイントを使用するようにクライアントを設定する必要があります。また、ノードの追加や削除時にはそれらのエンドポイントを更新する必要があります。
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターにノードが 1 つだけある場合、ノードのエンドポイントは読み取りと書き込みの両方に使用されます。Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターに複数のノードがある場合は、プライマリエンドポイント、リーダーエンドポイント、ノードエンドポイント の 3 種類のエンドポイントがあります。
プライマリエンドポイントは、常にクラスターのプライマリノードに解決される DNS 名です。プライマリエンドポイントは、リードレプリカのプライマリロールへの昇格など、クラスターに対する変更の影響を受けません。書き込みアクティビティの場合、アプリケーションをプライマリエンドポイントに接続することをお勧めします。
リーダーエンドポイントによって、ElastiCache for Redis OSS クラスター内のすべてのリードレプリカ間でエンドポイントへの着信接続が均等に分割されます。アプリケーションがいつ接続を作成するか、アプリケーションが接続をどのように (再) 利用するかなどの追加要因によって、トラフィックの分散が決定されます。レプリカが追加または削除されても、読み込みエンドポイントはリアルタイムでクラスターの変更に対応します。ElastiCache for Redis OSS クラスターの複数のリードレプリカを異なる AWS アベイラビリティーゾーン (AZ) に配置して、リーダーエンドポイントの高可用性を確保することができます。
注記
リーダーエンドポイントはロードバランサーではありません。これは、ラウンドロビン方式でレプリカノードの 1 つの IP アドレスに解決される DNS レコードです。
読み取りアクティビティの場合、アプリケーションはクラスター内のいずれのノードにも接続できます。プライマリエンドポイントとは異なり、ノードエンドポイントは特定のエンドポイントに解決されます。レプリカの追加または削除など、クラスターに変更を加えた場合は、アプリケーションでノードエンドポイントを更新する必要があります。
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターのエンドポイントを検索するには
-
AWS マネジメントコンソール にサインインして、ElastiCache コンソール (https://console.aws.amazon.com/elasticache/
) を開きます。 -
ナビゲーションペインで [Valkey クラスター] または [Redis OSS クラスター] を選択します。
クラスター画面には、Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターと、Valkey または Redis OSS (クラスターモードが有効) クラスターのリストが表示されます。
-
クラスターのプライマリエンドポイントや読み込みエンドポイントを検索するには、クラスターの名前 (左にあるボタンではない) を選択します。
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターのプライマリエンドポイントおよびリーダーエンドポイント
クラスターに 1 つのみのノードがある場合、プライマリエンドポイントはないため、次のステップに進むことができます。
-
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターにレプリカノードがある場合は、クラスターの名前を選択してから [ノード] タブを選択して、クラスターのレプリカノードエンドポイントを検索できます。
ノードの画面では、クラスター内のプライマリとレプリカの各ノードがそのエンドポイントと共に表示されます。
Valkey クラスターあるいは Valkey または Redis OSS (クラスターモードが無効) クラスターのノードエンドポイント
-
エンドポイントをクリップボードにコピーするには:
-
一度に 1 つのみ、コピーするエンドポイントを見つけます。
-
エンドポイントアドレスのすぐ前にあるコピーアイコンを選択します。
エンドポイントがクリップボードにコピーされます。エンドポイントを使用してノードに接続する方法については、「Memcached ノードに接続する」を参照してください。
-
Valkey あるいは Valkey または Redis OSS (クラスターモードが無効) のプライマリエンドポイントは以下のようになります。転送時の暗号化が有効かどうかによって違いがあります。
転送時の暗号化が無効
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:6379Valkey または Redis OSS (クラスターモードが有効) クラスターには、単一の設定エンドポイントがあります。設定エンドポイントに接続することで、アプリケーションはクラスター内のシャードごとにプライマリおよびリードエンドポイントを検出できます。
Valkey または Redis OSS (クラスターモードが有効) クラスターのエンドポイントを検索するには
-
AWS マネジメントコンソール にサインインして、ElastiCache コンソール (https://console.aws.amazon.com/elasticache/
) を開きます。 -
ナビゲーションペインで [Valkey クラスター] または [Redis OSS クラスター] を選択します。
クラスターの一覧が表示されています。接続するクラスターを選択します。
-
クラスターの設定エンドポイントを検索するには、ラジオボタンではなくクラスターの名前を選択します。
-
[Configuration endpoint] (設定エンドポイント) は [Cluster details] (クラスターの詳細) の下に表示されます。コピーするには、エンドポイントの左側にある [copy] (コピー) アイコンを選択します。
すべての Memcached エンドポイントは読み取り/書き込みエンドポイントです。Memcached クラスター内のノードに接続するには、アプリケーションは、各ノードのエンドポイントを使用できるか、クラスターの設定エンドポイントと自動検出を使用できる必要があります。自動検出を使用するには、自動検出をサポートするクライアントを使用する必要があります。
自動検出を使用するとき、クライアントアプリケーションは設定エンドポイントを使用して Memcached クラスターに接続します。ノードの追加や削除を行ってクラスターをスケーリングするたびに、アプリケーションは自動的にクラスターのすべてのノードを「検出して、それらのどのノードにも接続できます。アプリケーションで自動検出が行われない場合は、ノードを追加したり削除したりするたびにエンドポイントを手動で更新する必要があります。
エンドポイントをコピーするには、エンドポイントアドレスのすぐ前にあるコピーアイコンを選択します。エンドポイントを使用してノードに接続する方法については、「Memcached ノードに接続する」を参照してください。
設定エンドポイントとノードエンドポイントはよく似ています。その違いは以下の太字の部分です。
myclustername.xxxxxx.cfg.usw2.cache.amazonaws.com:port # configuration endpoint contains "cfg"
myclustername.xxxxxx.0001.usw2.cache.amazonaws.com:port # node endpoint for node 0001 重要
自動検出クライアントが設定エンドポイントとして CNAME を認識するように、Memcached 設定エンドポイントの CNAME を作成する場合は、CNAME に .cfg. を含める必要があります。
Memcached の場合、Amazon ElastiCache の AWS CLI を使用して、ノードおよびクラスターのエンドポイントを検出できます。
Redis OSS の場合、Amazon ElastiCache の AWS CLI を使用して、ノード、クラスター、レプリケーショングループのエンドポイントを検出できます。
ノードとクラスターのエンドポイントの検索(AWS CLI)
AWS CLI で describe-cache-clusters コマンドを使用して、クラスターとそのノードのエンドポイントを検出できます。Valkey または Redis OSS クラスターでは、このコマンドはクラスターエンドポイントを返します。Memcached クラスターでは、コマンドは設定エンドポイントを返します。オプションのパラメータ --show-cache-node-info を含めた場合、コマンドはクラスター内の個々のノードにエンドポイントを返します。
例
次のコマンドは、Memcached クラスター mycluster の設定エンドポイント (ConfigurationEndpoint) と個々のノードエンドポイント (Endpoint) を取得します。
Linux、macOS、Unix の場合:
aws elasticache describe-cache-clusters \ --cache-cluster-idmycluster\ --show-cache-node-info
Windows の場合:
aws elasticache describe-cache-clusters ^ --cache-cluster-idmycluster^ --show-cache-node-info
上記のオペレーションからの出力は以下のような JSON 形式になります。
{
"CacheClusters": [
{
"Engine": "memcached",
"CacheNodes": [
{
"CacheNodeId": "0001",
"Endpoint": {
"Port": 11211,
"Address": "mycluster.amazonaws.com"
},
"CacheNodeStatus": "available",
"ParameterGroupStatus": "in-sync",
"CacheNodeCreateTime": "2016-09-22T21:30:29.967Z",
"CustomerAvailabilityZone": "us-west-2b"
},
{
"CacheNodeId": "0002",
"Endpoint": {
"Port": 11211,
"Address": "mycluster.amazonaws.com"
},
"CacheNodeStatus": "available",
"ParameterGroupStatus": "in-sync",
"CacheNodeCreateTime": "2016-09-22T21:30:29.967Z",
"CustomerAvailabilityZone": "us-west-2b"
},
{
"CacheNodeId": "0003",
"Endpoint": {
"Port": 11211,
"Address": "mycluster.amazonaws.com"
},
"CacheNodeStatus": "available",
"ParameterGroupStatus": "in-sync",
"CacheNodeCreateTime": "2016-09-22T21:30:29.967Z",
"CustomerAvailabilityZone": "us-west-2b"
}
],
"CacheParameterGroup": {
"CacheNodeIdsToReboot": [],
"CacheParameterGroupName": "default.memcached1.4",
"ParameterApplyStatus": "in-sync"
},
"CacheClusterId": "mycluster",
"PreferredAvailabilityZone": "us-west-2b",
"ConfigurationEndpoint": {
"Port": 11211,
"Address": "mycluster.amazonaws.com"
},
"CacheSecurityGroups": [],
"CacheClusterCreateTime": "2016-09-22T21:30:29.967Z",
"AutoMinorVersionUpgrade": true,
"CacheClusterStatus": "available",
"NumCacheNodes": 3,
"ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
"CacheSubnetGroupName": "default",
"EngineVersion": "1.4.24",
"PendingModifiedValues": {},
"PreferredMaintenanceWindow": "mon:09:00-mon:10:00",
"CacheNodeType": "cache.m4.large",
"DataTiering": "disabled"
}
]
}重要
自動検出クライアントが設定エンドポイントとして CNAME を認識するように、Memcached 設定エンドポイントの CNAME を作成する場合は、CNAME に .cfg. を含める必要があります。例えば、php.ini ファイルの mycluster パラメータで .cfg.localsession.save_path を含めます。
例
Valkey および Redis OSS では、次のコマンドは単一ノードのクラスター mycluster に関するクラスター情報を取得します。
重要
--cache-cluster-id パラメータは、単一ノードの Valkey または Redis OSS (クラスターモードが無効) クラスター ID または Redis レプリケーショングループ内の特定のノード ID で使用できます。レプリケーショングループの --cache-cluster-id は、0001 のような 4 桁の値です。--cache-cluster-id がレプリケーショングループ内のクラスター (ノード) の ID である場合は、replication-group-id が出力に含まれます。
Linux、macOS、Unix の場合:
aws elasticache describe-cache-clusters \ --cache-cluster-idredis-cluster\ --show-cache-node-info
Windows の場合:
aws elasticache describe-cache-clusters ^ --cache-cluster-idredis-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.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",
"DataTiering": "disabled"
"EngineVersion": "3.2.10",
"ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
"CacheClusterCreateTime": "2018-04-25T18:19:28.241Z"
}
]
}詳細については、トピック「describe-cache-clusters」を参照してください。
Valkey または Redis OSS レプリケーショングループのエンドポイントを検索する (AWS CLI)
AWS CLI で describe-replication-groups コマンドを使用して、レプリケーショングループとそのクラスターのエンドポイントを検出できます。このコマンドでは、読み込みエンドポイントと合わせて、レプリケーショングループのプライマリエンドポイント、レプリケーショングループ内のすべてのクラスター (ノード)、およびそのエンドポイントのリストが返ります。
次のオペレーションでは、レプリケーショングループ myreplgroup のプライマリエンドポイントと読み込みエンドポイントが取得されます。すべての書き込みオペレーションにプライマリエンドポイントを使用します。
aws elasticache describe-replication-groups \ --replication-group-idmyreplgroup
Windows の場合:
aws elasticache describe-replication-groups ^ --replication-group-idmyreplgroup
このオペレーションからの出力は以下のような JSON 形式になります。
{
"ReplicationGroups": [
{
"Status": "available",
"Description": "test",
"NodeGroups": [
{
"Status": "available",
"NodeGroupMembers": [
{
"CurrentRole": "primary",
"PreferredAvailabilityZone": "us-west-2a",
"CacheNodeId": "0001",
"ReadEndpoint": {
"Port": 6379,
"Address": "myreplgroup-001.amazonaws.com"
},
"CacheClusterId": "myreplgroup-001"
},
{
"CurrentRole": "replica",
"PreferredAvailabilityZone": "us-west-2b",
"CacheNodeId": "0001",
"ReadEndpoint": {
"Port": 6379,
"Address": "myreplgroup-002.amazonaws.com"
},
"CacheClusterId": "myreplgroup-002"
},
{
"CurrentRole": "replica",
"PreferredAvailabilityZone": "us-west-2c",
"CacheNodeId": "0001",
"ReadEndpoint": {
"Port": 6379,
"Address": "myreplgroup-003.amazonaws.com"
},
"CacheClusterId": "myreplgroup-003"
}
],
"NodeGroupId": "0001",
"PrimaryEndpoint": {
"Port": 6379,
"Address": "myreplgroup.amazonaws.com"
},
"ReaderEndpoint": {
"Port": 6379,
"Address": "myreplgroup-ro.amazonaws.com"
}
}
],
"ReplicationGroupId": "myreplgroup",
"AutomaticFailover": "enabled",
"SnapshottingClusterId": "myreplgroup-002",
"MemberClusters": [
"myreplgroup-001",
"myreplgroup-002",
"myreplgroup-003"
],
"PendingModifiedValues": {}
}
]
}
詳細については、AWS CLI コマンドリファレンスの describe-replication-groups を参照してください。
Memcached の場合、Amazon ElastiCache API を使用して、ノードおよびクラスターのエンドポイントを検出できます。
Redis OSS の場合、Amazon ElastiCache API を使用して、ノード、クラスター、レプリケーショングループのエンドポイントを検出できます。
トピック
ノードとクラスターのエンドポイントの検索 (ElastiCache API)
ElastiCache API を使用して、DescribeCacheClusters アクションでクラスターのエンドポイントとそのノードを検出することができます。Valkey または Redis OSS クラスターでは、このコマンドはクラスターエンドポイントを返します。Memcached クラスターでは、コマンドは設定エンドポイントを返します。オプションのパラメータ ShowCacheNodeInfo を含めた場合、アクションはクラスター内の個々のノードのエンドポイントも返します。
例
Memcached の場合、次のコマンドは、Memcached クラスター mycluster の設定エンドポイント (ConfigurationEndpoint) と個々のノードエンドポイント (Endpoint) を取得します。
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>
重要
自動検出クライアントが設定エンドポイントとして CNAME を認識するように、Memcached 設定エンドポイントの CNAME を作成する場合は、CNAME に .cfg. を含める必要があります。例えば、php.ini ファイルの mycluster パラメータで .cfg.localsession.save_path を含めます。
Valkey または Redis OSS レプリケーショングループのエンドポイントを検索する (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」を参照してください。