2010-10-15 274 views
0

有沒有人有或知道一個很好的模板/計劃進行自動服務器升級?在這種情況下,我升級了一個python/django服務器,但是我們不得不將這個更新應用到很多機器上,並且要確保該操作是完全可測試的,並且在出現任何問題時可以恢復。服務器升級腳本

我想象的線沿線的東西:

  • 遠程獲取新的代碼
  • 驗證碼下載(如文件的哈希)
  • 取下來的服務器,顯示「正在升級對話框」
  • 備份數據庫
  • 備份代碼目錄
  • 應用新代碼更新
  • 驗證碼更新(例如文件的哈希)
  • 應用數據庫更新(如果需要)
  • 運行測試
  • 如果成功
    • 啓動服務器
    • 驗證服務器更新
  • 其他
    • 恢復舊數據庫
    • 恢復舊代碼
    • 報錯
    • 啓動服務器
    • 驗證服務器恢復

我敢肯定,這並不詳盡,而且有很多其他錯誤情況來考慮,但我想知道如果像這樣的東西已經存在作爲一個正式的流程/最佳實踐檢查清單遵循?理想情況下,這整個事情當然應該由一個腳本調用完成。

+0

你可能會有更多的運氣問這個http://serverfault.com – 2010-10-15 15:28:49

回答

2

一旦你有一個計劃(你的看起來很不錯),Fabric site應該是你的下一站。

+0

我使用fabric來將代碼部署到EC2,因爲我輸入了。 – 2010-10-16 00:26:23

0

我覺得你幾乎涵蓋了一切。確定對你而言重要的是什麼,你是商業實踐:這就是重中之重。