新增功能:
2015-03-11
除pass(備份與更新)與start(啟動(dòng)服務(wù))外,實(shí)現(xiàn)一切自動(dòng)化。
注:pass與start設(shè)為業(yè)務(wù)類,由于各類業(yè)務(wù)不同,所以無(wú)法實(shí)現(xiàn)自動(dòng)化。同類業(yè)務(wù)除外,如更新的都是tomcat的war包等...
新增“list”快捷鍵,快速操作list規(guī)則文件。
簡(jiǎn)化代碼冗余,合拼原有exec工具類到tools。
修復(fù)上一輪版本配置文件亂碼問(wèn)題。
新增部署成功后系統(tǒng)版本監(jiān)控功能。
2015-01-28
邏輯與業(yè)務(wù)分離,完美實(shí)現(xiàn)邏輯與業(yè)務(wù)分離,業(yè)務(wù)實(shí)現(xiàn)統(tǒng)一shell腳本開發(fā),由框架統(tǒng)一調(diào)用。
并發(fā)多線程部署,不管多少臺(tái)服務(wù)器,多少個(gè)服務(wù),同時(shí)發(fā)起線程進(jìn)行更新、部署、啟動(dòng)。
提高list規(guī)則文件DIY程度,減少新增服務(wù)帶來(lái)的修改代碼,實(shí)現(xiàn)掃描list自動(dòng)化安裝部署。
完善回滾機(jī)制,可根據(jù)時(shí)間段進(jìn)行回滾,實(shí)現(xiàn)即時(shí)回滾即時(shí)使用。
1引言自動(dòng)化部署與統(tǒng)一安裝升級(jí),適用于多資源型分布/分離式部署項(xiàng)目。 隨著服務(wù)/業(yè)務(wù)的越來(lái)越多,配置文件更是眼花繚亂,每次不知道因?yàn)椴渴?安裝問(wèn)題浪費(fèi)多少時(shí)間,更不知道因?yàn)榕渲脝?wèn)題出過(guò)多少問(wèn)題。多臺(tái)服務(wù)器來(lái)回切換,如果服務(wù)需要依賴,啟動(dòng)更是問(wèn)題。 怎么實(shí)現(xiàn)自動(dòng)化安裝升級(jí),一鍵執(zhí)行統(tǒng)一安裝。
適用于多資源型分布式部署項(xiàng)目,隨著服務(wù)的越來(lái)越多,配置文件更是眼花繚亂,每次不知道因?yàn)椴渴饐?wèn)題浪費(fèi)多少時(shí)間,更不知道因?yàn)榕渲脝?wèn)題出過(guò)多少問(wèn)題。多臺(tái)服務(wù)器來(lái)回切換,如果服務(wù)需要依賴,啟動(dòng)更是問(wèn)題。
1.1 目的統(tǒng)一安裝、批量部署、統(tǒng)一監(jiān)控。
1.2 范圍本項(xiàng)目使用范圍包括:
- 基于多資源型開發(fā)項(xiàng)目
- 項(xiàng)目相關(guān)服務(wù)繁多
- 服務(wù)多依賴關(guān)系
1.3 讀者本需求規(guī)格說(shuō)明書的閱讀者或其他文檔干系人有平臺(tái)總監(jiān)、產(chǎn)品經(jīng)理、項(xiàng)目總監(jiān)、項(xiàng)目經(jīng)理、開發(fā)人員、測(cè)試人員、運(yùn)維人員、用戶體驗(yàn)設(shè)計(jì)人員等。
2項(xiàng)目總體描述2.1 系統(tǒng)總體功能框架執(zhí)行統(tǒng)一安裝前,首先備份上一輪項(xiàng)目并提取涉及配置文件,再是檢查SVN更新版本,確認(rèn)無(wú)誤后執(zhí)行統(tǒng)一安裝。
實(shí)現(xiàn)一鍵執(zhí)行統(tǒng)一安裝,執(zhí)行完畢展示服務(wù)進(jìn)程及相關(guān)版本。
2.2 系統(tǒng)功能列表編號(hào) | 模塊 | 功能 | 說(shuō)明 |
unifyDeploy_0.1 | Exec | 建立信任、初始命令 | 初始 |
unifyDeploy_0.2 | Tools | 服務(wù)介入List規(guī)則 | 掃描提供服務(wù)列表,獲取配置信息 |
unifyDeploy_0.3 | Conf | 配置文件處理優(yōu)化展示 | 自動(dòng)生成 |
unifyDeploy_0.4 | Bin | 執(zhí)行工具 | 提供總執(zhí)行與單一執(zhí)行 |
unifyDeploy_0.5 | New | 存放修改后配置文件 | 與bak保留文件成反比 |
unifyDeploy_0.6 | Bak | 存放原始配置文件 | 便于問(wèn)題分析 |
unifyDeploy_0.7 | Temp | 存放臨時(shí)文件 | 臨時(shí)文件將及時(shí)刪除無(wú)任何冗積 |
unifyDeploy_0.8 | Workapp | 存放安裝包 | 上傳安裝包 |
unifyDeploy_0.9 | Workbak | 備份安裝包 | 統(tǒng)一回滾 |
通過(guò)本系統(tǒng)統(tǒng)一安裝部署非常簡(jiǎn)單,只需用戶根據(jù)list模版提供服務(wù)列表,其他無(wú)需操作。服務(wù)列表如下:
名詞解釋:
server :服務(wù)名稱 ip :服務(wù)器ip指向 path :部署路徑指向 config :配置項(xiàng) cfpath:配置路徑
執(zhí)行腳本,“conf”目錄自動(dòng)生成用戶所需修改配置文件,配置文件是通過(guò)處理篩選后生成,所以一個(gè)服務(wù)不管需要配置多少文件,這里只生成一個(gè),方便修改與管理。配置文件沿用上一輪版本配置文件,在新一輪版本沒有新增配置項(xiàng)情況,無(wú)需修改跳過(guò)此步。
3.2 自動(dòng)化統(tǒng)一安裝部署自動(dòng)化統(tǒng)一安裝部署,包括:主機(jī)信任、SVN安裝包下載、上傳解壓安裝包、同步配置、上一輪安裝備份、啟動(dòng)服務(wù)、監(jiān)控服務(wù)等。
list.sh init.sh pass.war startup.sh syn.sh exec.sh thread.py
部署支持統(tǒng)一安裝于分布式安裝,每個(gè)腳本可以拆分開任意組合使用,比如:
1)一套新環(huán)境中還未部署服務(wù),只需調(diào)整上傳安裝包腳本順序,先上傳安裝包后,后續(xù)操作正常執(zhí)行。
2)迭代更新,功能稍作修改,原配置項(xiàng)無(wú)需修改,也只需調(diào)整上傳安裝包包腳本順序,先獲取原有配置,再上傳更新安裝包包,后續(xù)操作正常執(zhí)行。
3.3 與Ansible優(yōu)缺點(diǎn)對(duì)比
優(yōu)點(diǎn):
1) 框架開源,業(yè)務(wù)腳本基于shell開發(fā),不像Ansible封裝的那么嚴(yán)重,只能按照他的格式去寫
2)將一個(gè)服務(wù)下的多個(gè)配置文件處理成一個(gè)配置模板,與Ansible相比更加的方便修改與檢查
3)支持更多的DIY功能,更好的實(shí)現(xiàn)監(jiān)控進(jìn)程、檢查版本等
4)可根據(jù)時(shí)間段進(jìn)行回滾,實(shí)現(xiàn)即時(shí)回滾即時(shí)使用
5)不僅適用于更新部署同樣適用于第一次部署
缺點(diǎn):
1)Ansible商業(yè)化要久,更多人在用
自動(dòng)化部署與統(tǒng)一安裝升級(jí) - 類ansible工具 unifyDeploy0.3版本發(fā)布 (更新時(shí)間2014-12-24)
unifyDeploy0.4下載
新聞熱點(diǎn)
疑難解答
圖片精選