Amazon web services AWS EC2是否立即扩大?

Amazon web services AWS EC2是否立即扩大?,amazon-web-services,amazon-ec2,autoscaling,Amazon Web Services,Amazon Ec2,Autoscaling,我有一个web服务在几个EC2盒上运行。基于Cloudwatch延迟度量,我想扩展其他框。但是,考虑到从AMI启动EC2需要几分钟(使用启动代码下载最新的应用程序JAR和应用操作系统补丁),有没有一种方法可以让“冷”服务器立即打开/关闭?而不是使用自动缩放。至少不是,就像你描述的那样。但是,通过在放置JAR和最新操作系统补丁的地方制作自己的修改过的AMI映像,您可以使其更快。这些AMI可以作为构建管道的一部分生成。在这种情况下,您唯一的实际等待时间是操作系统和服务启动,类似于“冷”服务器 是一种

我有一个web服务在几个EC2盒上运行。基于Cloudwatch延迟度量,我想扩展其他框。但是,考虑到从AMI启动EC2需要几分钟(使用启动代码下载最新的应用程序JAR和应用操作系统补丁),有没有一种方法可以让“冷”服务器立即打开/关闭?

而不是使用自动缩放。至少不是,就像你描述的那样。但是,通过在放置JAR和最新操作系统补丁的地方制作自己的修改过的AMI映像,您可以使其更快。这些AMI可以作为构建管道的一部分生成。在这种情况下,您唯一的实际等待时间是操作系统和服务启动,类似于“冷”服务器

是一种常用于此类用例的工具


或者,您可以自己管理它,关闭服务器,然后编写一些由Cloudwatch警报触发的自定义Lambda脚本来启动它们。但是,由于停止运行的服务器也不是完全免费的,出于成本原因,我建议您不要这样做。

在您开始自动扩展基础设施和花费时间/精力之前。也许你应该逐日、逐周、逐月地对交通模式进行一点分析,看看是否有必要?试着回答其中一些问题

  • 你的应用程序处理过的最高流量是多少?考虑到流量,服务器的表现如何?用户响应时间如何

  • 你的交通何时会增加或达到高峰?一些应用程序在工作时间获得流量,而另一些则在晚上

  • 您目前的吞吐量是多少?例如,您可以每分钟处理1k请求,两台EC2主机的CPU平均为20%。如果请求增加三倍至3k请求/分钟,您是否能够看到大约60%-70%的平均cpu?这是一个很好的迹象,表明您的应用程序使用是可预测的,可以通过添加更多主机线性扩展。但是,如果您从未见过这样的流量激增,那么在资源调配方面就没有意义了

  • 除非你有一个类似Zynga的应用程序,你可以一次看到大量的流量,也许更好地了解你的流量模式,并投入一个额外的主机作为保险可能会有所帮助。我做这些假设是因为我不知道你们公司的性质

    如果您确实希望自动缩放,一种解决方案是使用Docker将应用程序容器化,或者像其他人建议的那样创建自己的AMI。不过,启动它们需要几分钟的时间。下一个选项是保持主机处于待机状态,但使用脚本(或lambda函数)将这些主机添加到负载平衡器中,脚本监视您定义的指标(我假设您的应用程序在负载平衡器后面运行)

    祝你好运