我正在寻找如何在单实例部署中指定要部署到的区域,使用自动扩展,同时还有自动故障转移到另一个区域 - 是否存在任何选项来实现此目的?
由于保留实例如何链接到单个可用区(AZ),我们发现它是一个很好的策略(从“易管理性”/简单性的角度来看),在为我们的开发环境购买预留实例时,在一个区域中购买它们,然后在该区域中启动所有dev实例。 (在生产中,我们跨区域购买并使用指定跨所有区域部署的自动缩放组运行)。
我正在寻找如何:
同时
问题是我可以看到你如何能够同时达到1或2,而不是1和2。
要实现1,我将指定要部署到的单个子网(因此也是AZ),作为自动缩放组配置的一部分。
要实现2,我将在不同的AZ中指定多个子网,同时将最小/最大/容量设置保持为1.如果实例非确定性部署的AZ失败,则自动缩放组将启动另一个AZ中的实例。
如果服务器所在的区域出现故障,则不能同时执行1和2以优先选择部署最小/最大/容量为1的自动缩放组的区域,同时还具有自动故障转移功能。他们是竞争解决方案。
答案 0 :(得分:1)
此解决方案使用所有AWS机制来达到预期效果:
如果您不希望得到不健康的主机警报,除非在实际主机发生故障或AZ发生故障的情况下 - 在我们的情况下这是正确的 - 这是一个可行的解决方案。
答案 1 :(得分:0)
正如您已经想到的那样,(截至2015年中),这是不可能的。严格来说,自动缩放没有故障转移的概念。如果您希望获得高可用性,它希望您在每个AZ中提供足够多的AZ和机器。如果你不这样做,那么你就不会得到它。
我能想象到的唯一可能的解决方法是自己设置一个看门狗,一旦AZ变得不可用,它就会更改自动扩展组的子网。不是那么难做,但也不那么可靠。