根据请求计数使用云形成自动缩放

Ana*_*oni 7 amazon-ec2 amazon-web-services aws-cloudformation amazon-cloudwatch

我们根据负载均衡器RequestCount指标使用云形成进行自动缩放.目前,如果请求在1分钟内增加到1500(每个实例每分钟可处理1500个请求),我们会扩展实例.问题是,由于自动调节组不断检查RequestCount,并且如果请求计数大于1500持续1分钟,则添加新实例.但它不是必需的,因为我现在有2个实例可以处理3000 req.每分钟.是否有任何设施可以制作矩阵?即如果添加了新实例,则扩展策略将更改为3000 req.

示例场景:

  1. 最初有1个ELB,1个连接到ELB的tomcat实例(每分钟可处理1500个请求).
  2. 如果要求,1云计算的行动规模扩大ploicy.ELB的计数增加到1500分钟.
  3. 目前,ELB上的请求负载为1500,持续1分钟.现在要求.负载增加到1700分钟.所以它会在ELB上附加一个新的tomcat实例.所以我有2个实例可以处理3000 req.最少
  4. 但现在云观看还有什么问题还是检查了要求.依靠ELB以及是否需要.负载是1700分钟.它将添加一个不需要的新tomcat实例.

我怎么能摆脱这个问题呢?

bwi*_*ght 4

您想要做的是将平均值用于负载均衡器。您可以有不同类型的指标。总和、平均值、最小值、最大值和样本。如果您选择“平均值”,它将为您提供负载均衡器下所有实例的平均值。因此,只有当组中的所有服务器达到每分钟 1500 个请求时,它才会触发新实例启动。

类型的快速描述:

  • 平均值 - 负载均衡器的平均值
  • Sum - 请求总数(例如:3000)
  • 最大 - 任何服务器的最大请求数(因为它可能不完全平衡)
  • 最小值 - 任何服务器的最小请求数(因为它可能不完全平衡)
  • 示例 - 用于计算平均值的服务器数量(本质上是负载均衡器上有多少服务器)

您也可以创建自己的自定义指标,但您需要创建一个应用程序来告诉亚马逊这些值是什么。使用云手表 API,您可以轻松创建自己的手表。看看这里http://docs.amazonwebservices.com/AmazonCloudWatch/latest/DeveloperGuide/Welcome.html?r=1540

  • 请注意,RequestCount 只能求和或采样,并且在使用 RequestCount 时,最好的办法是缩放到“所需容量”,而不是递增/递减(请参阅 https://forums.aws.amazon.com /thread.jspa?threadID=86073)。 (2认同)