本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
查找连接终端节点
您的应用程序使用终端节点连接到集群。终端节点是节点或集群的唯一的地址。
该使用哪些终端节点
-
Redis 独立节点:使用该节点的终端节点进行读取和写入操作。
-
Redis (已禁用集群模式)集群,使用主终端节点 进行所有写入操作。使用读取器终端节点 将在所有只读副本之间均匀地分配指向终端节点的传入连接。使用单独的节点终端节点 进行读取操作(在 API/CLI 中,它们被称作读取终端节点)。
-
Redis (已启用集群模式)集群:使用该集群的配置终端节点 进行所有操作。您必须使用支持 Redis 集群的客户端 (Redis 3.2)。您仍可以从独立的节点终端节点进行读取(在 API/CLI 中,它们被称作读取终端节点)。
以下部分将引导您发现正在运行的引擎所需的终端节点。
主题
(控制台)查找 Redis(已禁用集群模式) 集群的终端节点
如果 Redis (已禁用集群模式) 集群只有一个节点,则使用该节点的终端节点进行读取和写入操作。如果 Redis (已禁用集群模式) 集群具有多个节点,则有三种类型的终端节点,即主终端节点、读取器终端节点和节点终端节点。
主终端节点是一个 DNS 名称,始终解析为集群中的主节点。主终端节点不受集群更改的影响,如将只读副本提升为主角色。对于写入活动,我们建议您的应用程序连接到主终端节点,而不是直接连接到主集群。
读取器终端节点将在 ElastiCache for Redis 集群中的所有只读副本之间均匀地分配指向终端节点的传入连接。应用程序何时创建连接或应用程序如何(重复)使用连接等附加因素将决定流量分配。读取器终端节点会在添加或删除副本时实时跟踪集群更改。您可以将 ElastiCache for Redis 集群的多个只读副本置于不同的 AWS 可用区 (AZ) 中以确保读取器终端节点的高可用性。
对于读取活动,应用程序还可以连接到集群中的任何节点。与主终端节点不同,节点终端节点会解析为特定终端节点。如果您在您的集群中进行更改(例如添加或删除副本),则必须在您的应用程序中更新节点终端节点。
查找 Redis (已禁用集群模式)集群的终端节点
-
登录 AWS 管理控制台并通过以下网址打开 ElastiCache 控制台:https://console.amazonaws.cn/elasticache/
。 -
从导航窗格中,选择 Redis。
集群屏幕随即出现,其中显示 Redis (已禁用集群模式)和 Redis (已启用集群模式)集群的列表。
-
要查找集群的主终端节点和/或读取器终端节点,请选中集群名称左侧的框。
Redis (已禁用集群模式) 集群的主终端节点和读取器终端节点
如果该集群只有一个节点,则没有主终端节点,您可以继续下一步。
-
如果 Redis (已禁用集群模式) 集群有副本节点,您可以通过选择此集群的名称找到集群副本节点的终端节点。
此时会显示节点屏幕,其中列出了集群中的每个节点 (主节点和副本节点) 及其终端节点。
Redis (已禁用集群模式)集群的节点终端节点
-
将终端节点复制到剪贴板:
-
找到并突出显示要复制的终端节点,每次一个终端节点。
-
右键单击突出显示的终端节点,然后从上下文菜单中选择 Copy。
突出显示的终端节点现已复制到剪贴板。
-
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 决定该访问哪个集群节点。
以下过程演示如何查找和复制 Redis (已启用集群模式) 集群终端节点。
查找 Redis (已启用集群模式)集群的配置终端节点
-
登录 AWS 管理控制台并通过以下网址打开 ElastiCache 控制台:https://console.amazonaws.cn/elasticache/
。 -
从导航窗格中,选择 Redis。
此时会显示一个列表,其中包含运行任意版本 Redis 的集群。
-
从集群列表中,选择运行“集群 Redis”的集群左侧的复选框。
此时屏幕会展开,以显示有关选定集群的详细信息。
-
找到 Configuration endpoint。
Redis (已启用集群模式)集群的配置终端节点
查找 Redis (已启用集群模式)集群的节点终端节点
-
登录 AWS 管理控制台并通过以下网址打开 ElastiCache 控制台:https://console.amazonaws.cn/elasticache/
。 -
从导航窗格中,选择 Redis。
此时会显示一个列表,其中包含运行任意版本 Redis 的集群。
-
从集群列表中,选择运行“集群 Redis”的集群的名称。
此时会打开分片页面。
-
选择节点终端节点分片的名称。
此时会显示分片节点的列表,其中包含每个节点的终端节点。
-
找到 Endpoint 列,并读取每个节点的终端节点。
Redis (已启用集群模式)集群的节点终端节点
将终端节点复制到剪贴板
-
使用某个前面讲到的流程查找要复制的终端节点。
-
突出显示要复制的终端节点。
-
右键单击突出显示的终端节点,并从上下文菜单中选择 Copy。
突出显示的终端节点现已复制到剪贴板。
Redis (已启用集群模式) 配置终端节点类似以下内容。
未启用传输中加密
clusterName.xxxxxx
.regionAndAz
.cache.amazonaws.com:port
rce.ameaqx.use1.cache.amazonaws.com:6379
已启用传输中加密
clustercfg.clusterName.xxxxxx
.regionAndAz
.cache.amazonaws.com:port
clustercfg.rce.ameaqx.use1.cache.amazonaws.com:6379
(AWS CLI) 查找终端节点
您可以使用 AWS CLI for Amazon ElastiCache 来搜索节点、集群和复制组的终端节点。
(AWS CLI) 查找节点和集群的终端节点
您可以使用 AWS 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, OS X, or 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",
"EngineVersion": "3.2.10",
"ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
"CacheClusterCreateTime": "2018-04-25T18:19:28.241Z"
}
]
}
有关更多信息,请参阅主题 describe-cache-clusters。
(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.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": {}
}
]
}
有关更多信息,请参阅 AWS CLI Command Reference 中的 describe-replication-groups。
(ElastiCache API) 查找终端节点
您可以使用 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。