AWS CloudFormation的全局环境变量

时间:2019-10-07 12:42:38

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

是否可以在Lambdas的AWS CloudFormation yaml文件中包含全局环境变量?

当前,我们正在使用SSM参数存储来存储全局变量,但我们不想再使用它了。

我希望有这样的东西:

Environment:
  Variables:
    variable1: xxx // local variables
    variable2: xxx
    ...
  ${file(./globalvariables.yml)} // global variables

甚至更好:每个lambda都默认包含全局环境变量,而无需显式调用它。

这可能吗?或您会建议什么方法?预先感谢!

1 个答案:

答案 0 :(得分:1)

可悲的是,我没有意识到要通过CloudFormation for Lambdas设置环境变量的预定义默认值,但是-一种可能的选择是在CloudFormation中使用env变量而不是使用env变量,并为所有配置添加lambda层并从中获取值。

这样做的好处是,如果值更改,则只需更新一次图层即可,然后更新lambda以使用可能是单个参数的新图层,而不必手动更新每个参数。

此处的文档:https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html

另一种选择是按照建议的ServerMonkey使用AWS Secrets Manager或SSM参数存储。