查找连接端点
您的应用程序使用端点连接到集群。端点是节点或集群的唯一的地址。
该使用哪些端点
-
Memcached 集群:如果您使用 Automatic Discovery,则可以使用该集群的配置端点 来配置 Memcached 客户端。这意味着您必须使用支持 Automatic Discovery 的客户端。
如果您不使用 Automatic Discovery,则必须对客户端进行配置,以便针对读取和写入使用不同的节点端点。此外,在添加或删除节点时,您还必须跟踪它们的情况。
以下部分将引导您发现正在运行的引擎所需的端点。
所有 Memcached 端点都是读写端点。要连接到 Memcached 集群中的节点,您的应用程序可以使用每个节点的端点或将集群的配置端点与 Automatic Discovery 结合使用。要使用 Automatic Discovery,您必须使用支持 Automatic Discovery 的客户端。
在使用 Automatic Discovery 时,您的客户端应用程序将使用配置端点连接到 Memcached 集群。当您通过添加或移除节点来扩展集群,应用程序将自动“获知”集群中的所有节点并能够连接到其中任一节点。如果没有 Automatic Discovery,应用程序将必须执行此操作,否则,您在每次添加或移除节点时,必须手动更新应用程序中的端点。有关 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.1abc4d.0001.usw2.cache.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.1abc4d.0002.usw2.cache.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.1abc4d.0003.usw2.cache.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.1abc4d.cfg.usw2.cache.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