【问题标题】:Rollback for Production deployment回滚生产部署
【发布时间】:2013-01-09 06:27:36
【问题描述】:

我即将自动部署到测试服务器和生产环境。

我有一个 ci-server(构建、编译、junit)和一个工件存储库管理器(存储要部署/发布的构建)。

目前我可以使用脚本部署到测试服务器(使用 ci-server 执行)。当前没有回滚、数据库备份或数据库更新。所有服务器都有 Suse (linux)。

我想知道是否有更好的部署方式,具有回滚能力?也许是其他免费软件工具?否则,即使只是一些注释也有助于弄清楚我必须做什么才能进行回滚并且不搞乱生产。

【问题讨论】:

    标签: linux deployment continuous-deployment continuous-delivery


    【解决方案1】:

    回滚包含关系数据库的应用程序非常棘手。传统上,这是通过在升级之前执行的备份恢复来完成的。

    一种更现代的方法是将数据库迁移工具(例如 liquibase)集成到应用程序的安装过程中。 liquibase 跟踪对数据库架构的每次更改,使其能够生成用于升级和回滚的脚本。

    【讨论】:

    • 当我制定部署计划时,我也注意到了 liquibase。现在一位同事已经有了备份和回滚的脚本,所以我想知道我是应该继续使用它还是使用该工具作为它未来的更多用途?目前不能说优缺点。
    • @user1338413 我个人会支持这两种方法。从备份恢复(前提是正确完成)会将您带回到已知时间点。问题是数据丢失,备份和回滚之间的时间。具有回滚模式更改(保留数据)的附加功能非常有用。最后,像 liquibase 这样的工具对于构建开发和测试系统非常有用
    • “像 liquibase 这样的工具对于构建开发和测试系统非常宝贵”。对于生产服务器?或者环境之间有什么区别?
    • @user1338413 生产。我的观点是,大多数人只考虑生产,而忘记了复制系统设置的重要性
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-27
    • 2017-12-30
    相关资源
    最近更新 更多