查找连接端点
您的应用程序使用端点连接到集群。端点是节点或集群的唯一的地址。
该使用哪些端点
-
Redis 独立节点:使用该节点的端点进行读取和写入操作。
-
Redis(已禁用集群模式)集群,使用主端点执行所有写入操作。使用读取器端点 将在所有只读副本之间均匀地分配指向端点的传入连接。使用单独的节点端点 进行读取操作(在 API/CLI 中,它们被称作读取端点)。
-
Redis(已启用集群模式)集群,使用集群的配置端点执行所有支持已启用集群模式命令的操作。您必须使用支持 Redis 集群的客户端(Redis 3.2)。您仍可以从独立的节点端点进行读取(在 API/CLI 中,它们被称作读取端点)。
以下部分将引导您发现正在运行的引擎所需的端点。
如果 Redis(已禁用集群模式)集群只有一个节点,则使用该节点的端点进行读取和写入操作。如果 Redis(已禁用集群模式)集群具有多个节点,则有三种类型的端点,即主端点、读取器端点和节点端点。
主端点是一个 DNS 名称,始终解析为集群中的主节点。主端点不受集群更改的影响,如将只读副本提升为主角色。对于写入活动,我们建议您的应用程序连接到主端点。
读取器端点将在 ElastiCache for Redis 集群中的所有只读副本之间均匀地分配指向端点的传入连接。应用程序何时创建连接或应用程序如何(重复)使用连接等附加因素将决定流量分配。读取器端点会在添加或删除副本时实时跟踪集群更改。您可以将 ElastiCache for Redis 集群的多个只读副本置于不同的 Amazon 可用区(AZ)中以确保读取器端点的高可用性。
注意
读取器端点不是负载均衡器。它是一个 DNS 记录,将以循环方式解析为副本节点之一的 IP 地址。
对于读取活动,应用程序还可以连接到集群中的任何节点。与主端点不同,节点端点会解析为特定端点。如果您在您的集群中进行更改(例如添加或删除副本),则必须在您的应用程序中更新节点端点。
查找 Redis(已禁用集群模式)集群的端点
-
登录 Amazon Web Services Management Console 并打开 ElastiCache 控制台(https://console.aws.amazon.com/elasticache/
)。 -
从导航窗格中,选择 Redis clusters(Redis 集群)。
集群屏幕将显示 Redis(已禁用集群模式)和 Redis(已启用集群模式)集群的列表。
-
要查找集群的主端点和/或读取器端点,请选中集群的名称(而不是其左侧的按钮)。
Redis(已禁用集群模式)集群的主端点和读取器端点
如果该集群只有一个节点,则没有主端点,您可以继续下一步。
-
如果 Redis(已禁用集群模式)集群有副本节点,您可以通过选择此集群的名称、然后选择 Nodes(节点)选项卡来找到集群副本的节点端点。
此时会显示节点屏幕,其中列出了集群中的每个节点(主节点和副本节点)及其端点。
Redis(已禁用集群模式)集群的节点端点
-
将端点复制到剪贴板:
-
逐一找到要复制的端点。
-
直接选择端点前面的复制图标。
端点现已复制到剪贴板。有关使用端点连接到节点的信息,请参阅 连接到节点。
-
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(已启用集群模式)集群的端点
-
登录 Amazon Web Services Management Console 并打开 ElastiCache 控制台(https://console.aws.amazon.com/elasticache/
)。 -
从导航窗格中,选择 Redis clusters(Redis 集群)。
集群屏幕将显示 Redis(已禁用集群模式)和 Redis(已启用集群模式)集群的列表。选择要连接的 Redis(已启用集群模式)集群。
-
要查找集群的配置端点,请选择集群的名称(不是单选按钮)。
-
Cluster details(集群详细信息)下将显示 Configuration endpoint(配置端点)。要复制它,请选择位于端点左侧的 copy(复制)图标。
您可以使用 Amazon CLI for Amazon ElastiCache 来搜索节点、集群和复制组的端点。
查找节点和集群的端点(Amazon CLI)
您可以使用 Amazon CLI,通过 describe-cache-clusters
命令查找集群及其节点的端点。对于 Redis 集群,此命令将返回集群端点。如果包含可选参数 --show-cache-node-info
,则此命令还将返回集群中的单个节点的端点。
以下命令会检索单节点 Redis(已禁用集群模式)集群 mycluster 的集群信息。
重要
参数 --cache-cluster-id
可与 Redis 复制组中的单节点 Redis(已禁用集群模式)集群 ID 或特定节点 ID 配合使用。Redis 复制组的 --cache-cluster-id
是一个四位值,例如 0001
。如果 --cache-cluster-id
是 Redis 复制组中集群(节点)的 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.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",
"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。
查找复制组的端点(Amazon CLI)
您可以使用 Amazon 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": {}
}
]
}
有关更多信息,请参阅 Amazon CLI 命令参考中的 describe-replication-groups。
您可以使用 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。