微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我们如何使用 Cloud Formation 为 Lambda 设置动态变量

如何解决我们如何使用 Cloud Formation 为 Lambda 设置动态变量

我正在编写一个用于创建 Lambda 函数的 Cloud Formation 模板,“环境”参数可以包含任意数量的变量。 (事先不知道) 如何将其设为动态而不是指定静态键值对。

解决方法

正如 samtoddler 已经指出的那样,您不能为 Lambda 设置动态环境变量。但是,有一个简单的替代方法:

  1. 使用环境变量来指定配置的路径,例如parameter store value from Systems Manager 的名称。

  2. 在您的 Lambda 函数中,读取环境变量并从参数存储中检索实际值。这可以是 JSON 字符串或任何您需要的可以序列化为字符串的配置设置。优化:仅在第一次调用 Lambda 函数时检索值,并将其缓存在处理程序函数之外。

  3. 如果您需要更改配置,只需更新参数存储中的值。提示:如果您需要尽快将这个新值分配给您的 Lambda 函数,只需创建一个新版本的 Lambda 函数并使用这个新版本。它确保在下次为此新版本调用您的 Lambda 函数时创建新实例,然后使用您的新参数存储值。

AWS 在这篇博文中提供了一些非常相似场景的更多细节:https://aws.amazon.com/blogs/compute/sharing-secrets-with-aws-lambda-using-aws-systems-manager-parameter-store/

,

您不能动态更改它们。

Using AWS Lambda environment variables

当您发布一个版本时,该版本的环境变量以及其他特定于版本的配置都会被锁定。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。