amazon-web-services - AWS CloudFormation 的全局环境变量
问题描述
有没有办法在 Lambdas 的 AWS CloudFormation yaml 文件中包含全局环境变量?
目前我们正在将 SSM 参数存储用于全局变量,但我们不想再使用它了。
我期待有这样的东西:
Environment:
Variables:
variable1: xxx // local variables
variable2: xxx
...
${file(./globalvariables.yml)} // global variables
甚至更好:每个 lambda 都默认包含全局环境变量,而无需显式调用它。
这可能吗?或者你会建议什么方法?提前致谢!
解决方案
遗憾的是,我不知道通过 CloudFormation 为 Lambdas 设置环境变量的预定义默认值 - 一种可能的选择是在 CloudFormation 中添加一个包含所有配置的 lambda 层并从那里提取值,而不是在 CloudFormation 中使用 env 变量。
这样做的好处是,如果值发生更改,您只需更新一次图层,然后更新 lambda 以使用新图层,该图层可能是单个参数,而不是手动更新每个参数。
此处的文档:https ://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html
另一种选择是按照 ServerMonkey 的建议使用 AWS Secrets Manager 或 SSM Parameter Store。
推荐阅读
- bash - 如何优化 bash 脚本中的函数
- python - bs4抓取python无法获得锚标签的完整href
- ios - 点击 tabBar 项目应该总是打开第一个视图控制器
- python - Qthread中的Python访问父类的小部件
- java - 使用以下递归方法时获取 java.lang.OutOfMemoryError 异常
- javascript - 想要使用批处理脚本从 html 文件中提取数据。但我收到一个错误,因为 Object 不支持此属性或方法
- stanford-nlp - 斯坦福 CoreNLP 在存档中缺少无壳模型
- python - Django在保存中获取m2m字段的旧值和新值
- c# - 十进制不转换指数值( jsonConverter 从 JSON 到 C#) - 映射
- php - “无法打开流或文件“laravel.log”:无法打开流:权限被拒绝”