【问题标题】:Running cloud formation code in AWS Lambda? Is this possible?在 AWS Lambda 中运行云形成代码?这可能吗?
【发布时间】:2021-01-19 13:56:45
【问题描述】:

在 AWS Lambda 中是否可以运行云形成代码?
基本上,我想使用 CloudWatch 观看一些 ec2 实例。当 EC2 的使用率(CPU)超过某个阈值一段时间后,我希望引发一个 Cloudwatch 事件,这反过来会触发一个 Lamba,这反过来又会提供更多的 ec2 实例。

这可能吗?

我知道还有其他服务,如 Autoscaling 组、ECS 等,但只是想知道上述可能性。

(欢迎任何关于根据负载/cpu 使用情况动态配置更多 ec2 实例的最佳方法的建议)

【问题讨论】:

  • 您可以只使用您的 lambda 函数中的 CloudFormation API,使用适用于您正在使用的编程语言的 AWS 开发工具包。不过,这似乎是一个可以通过 EC2 Auto-Scaling 解决的问题。
  • 是的,这是可能的,您几乎可以使用 lambda 中的 SDK 配置任何资源,包括 cloudformation 堆栈。你应该?可能不是;您的用例听起来非常适合自动缩放组,这正是它们的目的,请参阅 Paolo 的回答

标签: amazon-web-services amazon-ec2 aws-lambda amazon-cloudformation


【解决方案1】:

这里最好的方法是对自动缩放组使用动态缩放。 来自文档:

配置动态扩展时,您可以定义如何扩展 Auto Scaling 组的容量以响应不断变化的需求。

https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scale-based-on-demand.html

【讨论】:

    【解决方案2】:

    我还没有使用 Lambdas 完成此操作,但我已经看到它使用 EC2 完成了,并且您可以通过服务的 API 和 Lambda 上的开发工具包访问几乎任何 AWS 服务。如果您在此处查看documentation for the Javascript SDK Cloudformation API,您将在“方法”下看到:

    createStack(params = {}, callback) ⇒ AWS.Request

    updateStack(params = {}, callback) ⇒ AWS.Request

    这应该是一个很好的起点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-28
      • 1970-01-01
      • 1970-01-01
      • 2017-05-21
      • 2019-01-21
      • 1970-01-01
      • 2019-01-23
      • 2021-07-29
      相关资源
      最近更新 更多