我正在使用AWS Lambda迁移到无服务器。我已经到了#34;你好世界"至今。我曾经有过一个开发代码库,我在其上工作,测试,然后升级到生产。使用Lambda有一种简单的方法吗?
答案 0 :(得分:1)
我为dev
,staging
和prod
使用不同的AWS账户。在部署Lambda时,我只选择要使用的AWS配置文件,以便将其部署到正确的环境中。
如果您使用的是单个AWS账户,Lambda功能的每个部署都将拥有一个版本。你可以使用它们。
如果您在Lambda中使用API网关,则可以使用API网关"阶段"。
您应该使用serverless等部署框架,这样可以让您更轻松。
答案 1 :(得分:1)
使用像serverless这样的框架可以轻松地为AWS开发,配置和部署lambdas,API网关和其他事件。我强烈建议您调整无服务器框架。这样可以更轻松地与当前CI系统集成和使用无服务部署。
现在,如果您在一个AWS账户中拥有所有环境,那么您可以使用阶段来表示每个环境。使用无服务器,您只需使用--stage(-s)参数将lambdas部署到不同的env。
serverless deploy -s <env/stage name>
您在配置无服务器yaml文件时需要一些智能来根据您的阶段获取配置文件(假设您需要访问差异资源,例如db,s3存储桶等用于差异环境)
如果您使用不同的AWS账户进行prod和nonprod(推荐),那么您需要做的就是为配置文件提供一个额外的参数。
serverless deploy --profile <prod/nonprod profile> --stage <prod/nonprod stage>