新增功能:shell
2015-03-11tomcat
除pass(備份與更新)與start(啓動服務)外,實現一切自動化。服務器
注:pass與start設爲業務類,因爲各種業務不一樣,因此沒法實現自動化。同類業務除外,如更新的都是tomcat的war包等...多線程
新增「list」快捷鍵,快速操做list規則文件。併發
簡化代碼冗餘,合拼原有exec工具類到tools。app
修復上一輪版本配置文件亂碼問題。框架
新增部署成功後系統版本監控功能。運維
2015-01-28 分佈式
邏輯與業務分離,完美實現邏輯與業務分離,業務實現統一shell腳本開發,由框架統一調用。工具
併發多線程部署,無論多少臺服務器,多少個服務,同時發起線程進行更新、部署、啓動。
提升list規則文件DIY程度,減小新增服務帶來的修改代碼,實現掃描list自動化安裝部署。
完善回滾機制,可根據時間段進行回滾,實現即時回滾即時使用。
自動化部署與統一安裝升級,適用於多資源型分佈/分離式部署項目。
隨着服務/業務的愈來愈多,配置文件更是眼花繚亂,每次不知道由於部署/安裝問題浪費多少時間,更不知道由於配置問題出過多少問題。多臺服務器來回切換,若是服務須要依賴,啓動更是問題。
怎麼實現自動化安裝升級,一鍵執行統一安裝。
適用於多資源型分佈式部署項目,隨着服務的愈來愈多,配置文件更是眼花繚亂,每次不知道由於部署問題浪費多少時間,更不知道由於配置問題出過多少問題。多臺服務器來回切換,若是服務須要依賴,啓動更是問題。
統一安裝、批量部署、統一監控。
本項目使用範圍包括:
- 基於多資源型開發項目
- 項目相關服務繁多
- 服務多依賴關係
本需求規格說明書的閱讀者或其餘文檔干係人有平臺總監、產品經理、項目總監、項目經理、開發人員、測試人員、運維人員、用戶體驗設計人員等。
執行統一安裝前,首先備份上一輪項目並提取涉及配置文件,再是檢查SVN更新版本,確認無誤後執行統一安裝。
實現一鍵執行統一安裝,執行完畢展現服務進程及相關版本。
編號 |
模塊 |
功能 |
說明 |
udeploy 1.0_0.1 |
Exec |
創建信任、初始命令 |
初始 |
udeploy 1.0_0.2 |
Tools |
服務介入List規則 |
掃描提供服務列表,獲取配置信息 |
udeploy 1.0_0.3 |
Conf |
配置文件處理優化展現 |
自動生成 |
udeploy 1.0_0.4 |
Bin |
執行工具 |
提供總執行與單一執行 |
udeploy 1.0_0.5 |
New |
存放修改後配置文件 |
與bak保留文件成反比 |
unifyDeploy_0.6 |
Bak |
存放原始配置文件 |
便於問題分析 |
unifyDeploy_0.7 |
Temp |
存放臨時文件 |
臨時文件將及時刪除無任何冗積 |
udeploy 1.0_0.8 |
Workapp |
存放安裝包 |
上傳安裝包 |
unifyDeploy_0.9 |
Workbak |
備份安裝包 |
統一回滾 |
經過本系通通一安裝部署很是簡單,只需用戶根據list模版提供服務列表,其餘無需操做。服務列表以下:
名詞解釋:
server :服務名稱 ip :服務器ip指向 path :部署路徑指向 config :配置項 cfpath:配置路徑
執行腳本,「conf」目錄自動生成用戶所需修改配置文件,配置文件是經過處理篩選後生成,因此一個服務無論須要配置多少文件,這裏只生成一個,方便修改與管理。配置文件沿用上一輪版本配置文件,在新一輪版本沒有新增配置項狀況,無需修改跳過此步。
自動化統一安裝部署,包括:主機信任、SVN安裝包下載、上傳解壓安裝包、同步配置、上一輪安裝備份、啓動服務、監控服務等。
list.sh init.sh pass.war startup.sh syn.sh exec.sh thread.py
部署支持統一安裝於分佈式安裝,每一個腳本能夠拆分開任意組合使用,好比:
1) 一套新環境中還未部署服務,只需調整上傳安裝包腳本順序,先上傳安裝包後,後續操做正常執行。
2) 迭代更新,功能稍做修改,原配置項無需修改,也只需調整上傳安裝包包腳本順序,先獲取原有配置,再上傳更新安裝包包,後續操做正常執行。
3.3 與Ansible優缺點對比
優勢:
1) 框架開源,業務腳本基於shell開發,不像Ansible封裝的那麼嚴重,只能按照他的格式去寫
2)將一個服務下的多個配置文件處理成一個配置模板,與Ansible相比更加的方便修改與檢查
3)支持更多的DIY功能,更好的實現監控進程、檢查版本等
4)可根據時間段進行回滾,實現即時回滾即時使用
5)不只適用於更新部署一樣適用於第一次部署
缺點:
1)Ansible商業化要久,更多人在用
自動化部署與統一安裝升級 - 類ansible工具 udeploy 1.0版本發佈 (更新時間2014-12-24)
udeploy 1.0下載