aws elasticache redis,当我有一个只有一个节点的redis(集群模式被禁用)而它失败时会发生什么

ss2ws0br  于 2021-06-10  发布在  Redis
关注(0)|答案(2)|浏览(638)

我读过aws elasticache redis的自动故障切换功能。该文档告诉我,故障转移过程需要至少有1个副本节点(即至少总共有2个节点),以便它可以使用副本节点替换发生故障的主节点。
但是如果我只有一个节点并且它失败了,我就找不到关于会发生什么的细节。它是自动重新创建的,还是需要手动删除并重新创建?
我打算使用下面的cloudformation模板在我的测试环境中创建一个只有1个节点的redis组(集群模式被禁用)。

"ReplicationGroup": {
        "Type": "AWS::ElastiCache::ReplicationGroup",
        "Properties": {
            "ReplicationGroupId" : "my-redis",
            "ReplicationGroupDescription" : "My Redis",
            "NumCacheClusters": 1,
            "AutomaticFailoverEnabled": false,
            "CacheNodeType": "cache.t3.medium",
            "CacheParameterGroupName" : "default.redis5.0",
            "Engine": "redis",
            "EngineVersion" : "5.0.6",
            "Port": "6379",
            "AtRestEncryptionEnabled" : true,
            "TransitEncryptionEnabled" : true,
            "AuthToken" : {"Ref": "AuthToken"},
            "CacheSubnetGroupName": {"Ref": "SubnetGroup"},
            "SecurityGroupIds": [
                {"Ref": "RedisSecurityGroup"}
            ],
            "SnapshotRetentionLimit": 0,
            "MultiAZEnabled" : {"Fn::If": ["ConditionMultiAZEnabled", true, false]}
        }
    },
piah890a

piah890a1#

我们以前也遇到过这个问题。当aws试图安装一个重要的安全更新时,我们丢失了所有的数据(服务更新sla不符合要求)。它是一个单节点elasticache示例。以下是回复,包含了aws支持的所有细节;
如您所说,我发现集群上有事件消息,ByteUsedForCache被删除为0。当我调查redis节点时,我能够看到来自elasticache服务的健康检查失败,因为硬件故障和节点损坏 ***** 被替换为健康的新节点以恢复redis服务。由于redis集群 ***** 只有一个节点 ***** ,每当节点像这种情况一样发生故障时,都可能发生数据丢失。
为了提高redis集群的高可用性,并在节点故障的情况下保持数据,您应该通过向集群至少添加一个副本节点来创建复制组。请阅读此链接以详细了解复制组。https://docs.aws.amazon.com/amazonelasticache/latest/red-ug/replication.html
副本节点只能用于读取请求,但数据总是从主节点复制到副本节点。另外,当主节点出现故障时,可以将副本节点升级到新的主节点,然后您可以保护数据。此链接提供如何添加副本节点。https://docs.aws.amazon.com/amazonelasticache/latest/red-ug/replication.addreadreplica.html
此外,您还可以通过复制组启用具有自动故障切换功能的multi-az。它可以在主节点发生故障时自动进行故障切换。它还可以提高redis集群的高可用性。https://docs.aws.amazon.com/amazonelasticache/latest/red-ug/autofailover.html

xlpyo6sf

xlpyo6sf2#

这一过程将取决于具体情况。
az中只有一个节点,因此如果az有问题,那么您的节点可能会受到影响,而您几乎无法采取任何措施来缓解它。如果要恢复访问权限,则需要在另一个az中创建另一个节点。
如果是基础主机故障(例如机架断电、物理服务器需要重新启动等),aws将尝试将其迁移到同一可用性区域中的另一台主机。
大多数托管服务都遵循与ec2主机相同的恢复过程,因为这些都是在后台运行的服务。

相关问题