【问题标题】:how to setup tables of aws aurora mysql using aws cloudformation or aws cdk?如何使用 aws cloudformation 或 aws cdk 设置 aws aurora mysql 表?
【发布时间】:2019-09-15 01:39:31
【问题描述】:

如何使用 aws cloudformation 或 aws cdk 设置 aws aurora mysql 的表?

在我的设置中,我有一个使用 lambda 用于各种微服务的无服务器应用程序。数据库是一个无服务器的 aurora mysql 数据库。为了配置 aws 基础设施,我将使用 aws CDK。我喜欢使用一些迁移工具(如 liquibase 或 sequelize)来设置数据库。

目前我正在使用一个单独的 lambda 函数。 lambda 函数执行 liquibase 以设置数据库更改。但是在使用 CDK 部署成功后,我必须单独执行该功能。

在执行 cloudformation 堆栈(cdk 堆栈)后触发的执行将是最佳的?!我想通过代码管道避免 CI / CD 堆栈。

有没有人在提供时设置数据库的最佳实践?

【问题讨论】:

    标签: amazon-cloudformation amazon-aurora aws-cdk aws-aurora-serverless


    【解决方案1】:

    我使用 Cloudformation 自定义资源在部署时运行数据库迁移和初始数据库设置脚本。

    如果您不想依赖 CI/CD 管道为您完成迁移,这是为无服务器应用程序运行数据库迁移的推荐方法。

    这是Alex DeBrie 写的一篇关于 CF 自定义资源的好博文:https://www.alexdebrie.com/posts/cloudformation-custom-resources/

    【讨论】:

      【解决方案2】:

      云看规则

      基于 cloudformation 事件的云监视规则可用于路由事件以处理 lambda。云监视规则可以是 CDK 部署描述的一部分。

      触发的函数然后可以执行 liquibase、flyway、sequelize 或其他东西来启动或更改数据库。

      ----或----

      Cloudformation 自定义资源

      AWS cloudformation 自定义资源可以在 cloudformation 生命周期内执行 lambda 函数。

      然后触发的函数可以执行 liquibase、flyway、sequelize 或其他东西来启动或更改 db。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-09-29
        • 1970-01-01
        • 2021-03-10
        • 2019-09-27
        • 1970-01-01
        • 1970-01-01
        • 2019-12-09
        • 1970-01-01
        相关资源
        最近更新 更多