查找连接端点 - Amazon ElastiCache
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查找连接端点

您的应用程序使用端点连接到集群。端点是节点或集群的唯一的地址。

该使用哪些端点

对于使用 Memcached 的 ElastiCache 无服务器缓存,只需从控制台获取集群端点 DNS 和端口。

从 Amazon 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 客户端。这意味着您必须使用支持 Automatic Discovery 的客户端。

如果您不使用 Automatic Discovery,则必须对客户端进行配置,以便针对读取和写入使用不同的节点端点。此外,在添加或删除节点时,您还必须跟踪它们的情况。

以下部分将引导您发现正在运行的引擎所需的端点。

所有 Memcached 端点都是读写端点。要连接到 Memcached 集群中的节点,您的应用程序可以使用每个节点的端点或将集群的配置端点与 Automatic Discovery 结合使用。要使用 Automatic Discovery,您必须使用支持 Automatic Discovery 的客户端。

在使用 Automatic Discovery 时,您的客户端应用程序将使用配置端点连接到 Memcached 集群。当您通过添加或移除节点来扩展集群,应用程序将自动“获知”集群中的所有节点并能够连接到其中任一节点。如果没有 Automatic Discovery,应用程序将必须执行此操作,否则,您在每次添加或移除节点时,必须手动更新应用程序中的端点。

要复制端点,请直接选择端点地址前面的复制图标。有关使用端点连接到节点的信息,请参阅连接到节点

配置端点和节点端点看上非常相似。不同之处以粗体 形式突出显示。

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
重要

如果您选择为 Memcached 配置端点创建别名记录,以使自动发现客户端可以识别别名记录作为配置端点,则必须在别名记录中包含 .cfg.

您可以使用 Amazon CLI for Amazon ElastiCache 来搜索节点和集群的端点。

查找节点和集群的端点(Amazon CLI)

您可以使用 Amazon CLI,通过 describe-cache-clusters 命令查找集群及其节点的端点。对于 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", } ] }
重要

如果您选择为 Memcached 配置端点创建别名记录,以使自动发现客户端可以识别别名记录作为配置端点,则必须在别名记录中包含 .cfg.。例如,php.ini 文件中的 session.save_path 参数的 mycluster.cfg.local

有关更多信息,请参阅主题 describe-cache-clusters

您可以使用 Amazon ElastiCache API 来搜索节点和集群的端点。

查找节点和集群的端点(ElastiCache API)

您可以使用 ElastiCache API,通过 DescribeCacheClusters 操作查找集群及其节点的端点。对于 Memcached 集群,此命令将返回配置端点。如果包含可选参数 ShowCacheNodeInfo,则此操作还将返回集群中的各个节点的端点。

以下命令会检索 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>
重要

如果您选择为 Memcached 配置端点创建别名记录,以使自动发现客户端可以识别别名记录作为配置端点,则必须在别名记录中包含 .cfg.。例如,php.ini 文件中的 session.save_path 参数的 mycluster.cfg.local