当前位置: 首页 > 知识库问答 >
问题:

群集模式下的自动故障转移处理已禁用Redis ElastiCache

云捷
2023-03-14

我想从节点endpoint的角度来理解故障转移案例https://forums.aws.amazon.com/,案件的IP地址

  1. 主故障切换和副本升级
  2. 副本故障切换

该配置被禁用为群集模式:只有1个碎片(1个主碎片和2个副本)启用了多个AZ。比如-

PRIMARY ENDPOINT - xxx.dktrm8.ng.0001.usw2.cache.amazonaws.com
READER ENDPOINT - xxx-ro.dktrm8.ng.0001.usw2.cache.amazonaws.com
NODE ENDPOINTS - {
xxx-a.dktrm8.0001.usw2.cache.amazonaws.com -> master,
xxx-b.dktrm8.0001.usw2.cache.amazonaws.com -> replica,
xxx-c.dktrm8.0001.usw2.cache.amazonaws.com -> replica
}

问题-

  1. 节点endpoint是DNS名称吗?
  2. 已在IP地址级别或节点endpoint级别处理故障转移?
  3. 故障转移后,主endpoint可以指向不同的节点endpoint(提升的主endpoint)还是仅仅改变IP地址映射?
  4. 如果使用节点endpoint作为读取流量而不是读取器endpoint,是否有可能将节点endpoint的角色更改为MASTER?在故障转移或维护的情况下。

共有1个答案

史经业
2023-03-14

从技术上讲,每个问题都应该放在自己的帖子中(请参阅:如何提出好问题),但由于这些都是非常相关的,我认为没关系。

首先,是的,这些DNS名称将得到查询的答案,以及主/副本GSLB(我不认为它们真的是GSLB,与您用于web应用程序的上下文相同,但它们确保主节点始终位于主endpoint,副本始终位于副本endpoint之后)。

其次,由于实际的节点名(而不是伪GSLB)解析为IP地址,所以使用哪个并不重要。

故障转移后,主/主和副本GSLBendpoint都将更新。主/主终结点将指向已升级为主的复制副本。副本终结点将暂时只包含一个未升级的副本。一旦原始主/主endpoint恢复联机,它将被重新配置为副本,然后添加到副本GSLBendpoint。这是假设总共有3个节点。如果有更多节点,副本endpoint将少一个节点,直到原始主节点恢复联机。

最后,是的,您应该始终使用GSLBendpoint,因为它们在其中始终具有最新的主副本和副本。如果直接连接到节点,则可能会有尝试写入主节点(成为副本)、副本(成为主节点)或刚刚脱机的节点的风险。除非所有三个(如果使用更多节点,则三个以上)都处于脱机状态,否则主endpoint和副本endpoint将始终指向正确的位置。

 类似资料:
  • 我正在尝试用6台机器实现一个Redis集群。我有一个由六台机器组成的流浪集群: 运行redis服务器 我编辑了上述所有服务器的/etc/redis/redis.conf文件,添加了这个 然后我在六台机器中的一台上运行了这个程序; Redis集群已启动并运行。我通过在一台机器上设置值手动检查它显示在其他机器上。 我的问题是,当我关闭或停止任何一台主机上的redis server时,整个集群都会停止运

  • 故障自动转移是指在 TiDB 集群的某些节点出现故障时,TiDB Operator 会自动添加一个节点,保证 TiDB 集群的高可用,类似于 K8s 的 Deployment 行为。 由于 TiDB Operator 基于 StatefulSet 来管理 Pod,但 StatefulSet 在某些 Pod 发生故障时不会自动创建新节点来替换旧节点,所以,TiDB Operator 扩展了 Stat

  • 因此,如果我理解正确的话,在检测并重新启动失败代理的环境中运行Artemis代理集群将提供与运行每个活动服务器都与备份配对的集群相同的语义(以及类似的可用性)。对吗?

  • 我注意到,当连接的Artemis节点宕机时,连接到节点2-4的客户机不会故障转移到其他3个可用的主节点,基本上不会发现其他节点。即使在原始节点恢复之后,客户端仍然无法建立连接。我从一个单独的堆栈溢出帖子中看到,不支持主到主故障转移。这是否意味着对于每个主节点,我也需要创建一个从节点来处理故障转移?这是否会导致两个实例点失败,而不是集群中有许多节点? 在一个单独的基本测试中,使用一个主从两个节点的集

  • 目前,我正在使用ActiveMQ,并计划将系统迁移到ActiveMQ Artemis。目前,我有3个生产者和3个消费者,只有一个ActiveMQ服务器/代理。

  • 配置:三个redis集群分区,跨越三组一主一从。当主机停机时,莴苣立即检测到停机并开始重试。然而,莴苣没有检测到关联的从属服务器已将自己升级为主服务器,并继续使用无法访问且最终超时的旧主服务器重试。尝试将各种拓扑刷新选项设置为无效。 建议的解决方案:在第一次重试失败(这是一行中第二次重试失败)后,使用提供的任何节点的拓扑(因为它们都具有相同的拓扑信息)重新运行拓扑刷新(用于在初始化期间导出拓扑)。