翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ElastiCache での接続エンドポイントの検索
アプリケーションは、エンドポイントを使用して ElastiCache クラスターに接続します。エンドポイントはノードまたはクラスターの一意のアドレスです。
インターフェイス VPC エンドポイントを作成することで、VPC と ElastiCache API エンドポイント間のプライベート接続を確立することもできます AWS PrivateLink。詳細については、「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
コマンドを使用してエンドポイント情報を取得します。
リナックス
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 Management Console にサインインして、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 (クラスターモードが無効) クラスターにレプリカノードがある場合は、クラスターの名前を選択し、Nodes タブを選択することで、クラスターのレプリカノードエンドポイントを見つけることができます。
ノードの画面では、クラスター内のプライマリとレプリカの各ノードがそのエンドポイントと共に表示されます。
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:6379
Valkey または Redis OSS (クラスターモードが有効) クラスターには、単一の設定エンドポイントがあります。設定エンドポイントに接続することで、アプリケーションはクラスター内のシャードごとにプライマリおよびリードエンドポイントを検出できます。
Valkey または Redis OSS (クラスターモードが有効) クラスターのエンドポイントを検索するには
-
にサインイン AWS Management Console し、ElastiCache コンソールを https://console.aws.amazon.com/elasticache/
://https://https://https://https://https://https://https://https://https://https://https://https://http -
ナビゲーションペインで [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-id
mycluster
\ --show-cache-node-info
Windows の場合:
aws elasticache describe-cache-clusters ^ --cache-cluster-id
mycluster
^ --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-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.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-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.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」を参照してください。