AWS AutoScaling:升级实例能力,而不是更多实例
AWS AutoScaling: Upgrade Instance power, not more instances
阅读http://aws.amazon.com/autoscaling/ Amazon 似乎允许您根据您的 CloudWatch 指标将更多 EC2 实例创建到负载均衡器和 AutoScaling 组中。
但是,我希望单个 EC2 实例在机器 processing/memory 使用率高时变得更强大,具有更多 CPU、内存等。我该怎么做?
首先我在想你为什么要摆脱自动缩放?这是我真正喜欢 Cloud 的最好的事情之一。无论如何,如果您想要一个功能强大的单一 EC2 实例,您可以 select 许多不同的 EC2 实例类型之一。请查看不同的 EC2 实例类型 here
如果不关闭实例以进行必要的更改,然后重新启动它,则无法执行此操作。自动缩放也不支持它。
基本上,你不会。这是考虑可扩展性和可靠性的错误方式。
单个 EC2 实例是单点故障。更改实例类型需要重启,因此您的站点在重启时将不可用。即使您确实采用这种方法,您也会被限制在单个 AZ 中的实例,这又会成为单点故障。
最后,由于您希望最大限度地减少停机时间,因此您可能会在大部分时间内供应不足或供应过多 - 因此您的用户性能会很差,或者您会付出太多代价。
我建议先阅读 The Well Architected Framework 以更好地理解您为什么要这样做。
你不需要自动缩放来做到这一点,你可以简单地在 EC2 实例上设置一个 cloudwatch 警报 CPU,当警报触发时你可以获得一个 Lambda 脚本来 运行 停止实例,更改实例大小 (up/down),然后启动实例。但是正如上面其他人所解释的那样,您将不得不有一些停机时间。
如果您想避免停机,那么您可能需要考虑至少部署一个其他 EC2 实例。
阅读http://aws.amazon.com/autoscaling/ Amazon 似乎允许您根据您的 CloudWatch 指标将更多 EC2 实例创建到负载均衡器和 AutoScaling 组中。
但是,我希望单个 EC2 实例在机器 processing/memory 使用率高时变得更强大,具有更多 CPU、内存等。我该怎么做?
首先我在想你为什么要摆脱自动缩放?这是我真正喜欢 Cloud 的最好的事情之一。无论如何,如果您想要一个功能强大的单一 EC2 实例,您可以 select 许多不同的 EC2 实例类型之一。请查看不同的 EC2 实例类型 here
如果不关闭实例以进行必要的更改,然后重新启动它,则无法执行此操作。自动缩放也不支持它。
基本上,你不会。这是考虑可扩展性和可靠性的错误方式。
单个 EC2 实例是单点故障。更改实例类型需要重启,因此您的站点在重启时将不可用。即使您确实采用这种方法,您也会被限制在单个 AZ 中的实例,这又会成为单点故障。
最后,由于您希望最大限度地减少停机时间,因此您可能会在大部分时间内供应不足或供应过多 - 因此您的用户性能会很差,或者您会付出太多代价。
我建议先阅读 The Well Architected Framework 以更好地理解您为什么要这样做。
你不需要自动缩放来做到这一点,你可以简单地在 EC2 实例上设置一个 cloudwatch 警报 CPU,当警报触发时你可以获得一个 Lambda 脚本来 运行 停止实例,更改实例大小 (up/down),然后启动实例。但是正如上面其他人所解释的那样,您将不得不有一些停机时间。
如果您想避免停机,那么您可能需要考虑至少部署一个其他 EC2 实例。