服务器升级脚本

时间:2010-10-15 15:16:41

标签: python django sysadmin

是否有人拥有或知道进行自动服务器升级的良好模板/计划?在这种情况下,我正在升级python / django服务器,但我将不得不将此更新应用于许多机器,并且希望确保操作完全可测试并且可以在出现任何问题时恢复。

我想象的是:

  • 远程提取新代码
  • 验证代码下载(例如文件的哈希)
  • 取下服务器,显示“您正在升级对话框”
  • 备份数据库
  • 备份代码目录
  • 应用新代码更新
  • 验证代码更新(例如文件的哈希)
  • 应用数据库更新(如有必要)
  • 运行测试
  • 如果成功
    • 启动服务器
    • 验证服务器更新
  • 否则
    • 恢复旧数据库
    • 恢复旧代码
    • 报告错误
    • 启动服务器
    • 验证服务器还原

我确信这不是详尽无遗的,并且还有许多其他错误情况要考虑,但我想知道这样的事情是否已经作为正式的流程/最佳实践检查表存在?理想情况下,这一切当然应该通过一个脚本调用完成。

2 个答案:

答案 0 :(得分:2)

一旦你有了一个计划(你的计划看起来很不错),Fabric site应该是你的下一站。

答案 1 :(得分:0)

我认为你几乎涵盖了一切。确定对您来说重要的是什么以及您的业务实践:这才重要。