比Ansible更吊的自動化運維工具,自動化統一安裝部署_自動化部署udeploy 1.0

新增功能:shell

2015-03-11tomcat

除pass(備份與更新)與start(啓動服務)外,實現一切自動化。服務器

注:pass與start設爲業務類,因爲各種業務不一樣,因此沒法實現自動化。同類業務除外,如更新的都是tomcat的war包等...多線程

新增「list」快捷鍵,快速操做list規則文件。併發

簡化代碼冗餘,合拼原有exec工具類到tools。app

修復上一輪版本配置文件亂碼問題。框架

新增部署成功後系統版本監控功能。運維

 2015-01-28 分佈式

邏輯與業務分離,完美實現邏輯與業務分離,業務實現統一shell腳本開發,由框架統一調用。工具

併發多線程部署,無論多少臺服務器,多少個服務,同時發起線程進行更新、部署、啓動。

提升list規則文件DIY程度,減小新增服務帶來的修改代碼,實現掃描list自動化安裝部署。

完善回滾機制,可根據時間段進行回滾,實現即時回滾即時使用。

 

1  引言

      自動化部署與統一安裝升級,適用於多資源型分佈/分離式部署項目。
   隨着服務/業務的愈來愈多,配置文件更是眼花繚亂,每次不知道由於部署/安裝問題浪費多少時間,更不知道由於配置問題出過多少問題。多臺服務器來回切換,若是服務須要依賴,啓動更是問題。
      怎麼實現自動化安裝升級,一鍵執行統一安裝。  

  適用於多資源型分佈式部署項目,隨着服務的愈來愈多,配置文件更是眼花繚亂,每次不知道由於部署問題浪費多少時間,更不知道由於配置問題出過多少問題。多臺服務器來回切換,若是服務須要依賴,啓動更是問題。

1.1 目的

        統一安裝、批量部署、統一監控。

1.2 範圍

本項目使用範圍包括:

-          基於多資源型開發項目

-          項目相關服務繁多

-      服務多依賴關係

1.3 讀者

本需求規格說明書的閱讀者或其餘文檔干係人有平臺總監、產品經理、項目總監、項目經理、開發人員、測試人員、運維人員、用戶體驗設計人員等。

2  項目整體描述

2.1 系統整體功能框架

執行統一安裝前,首先備份上一輪項目並提取涉及配置文件,再是檢查SVN更新版本,確認無誤後執行統一安裝。

實現一鍵執行統一安裝,執行完畢展現服務進程及相關版本。

2.2 系統功能列表

編號

模塊

功能

說明

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

備份安裝包

統一回滾

 

3  功能描述

3.1 獲取配置文件

         經過本系通通一安裝部署很是簡單,只需用戶根據list模版提供服務列表,其餘無需操做。服務列表以下:

名詞解釋:

server :服務名稱  ip    :服務器ip指向  path :部署路徑指向  config :配置項  cfpath:配置路徑

         執行腳本,「conf」目錄自動生成用戶所需修改配置文件,配置文件是經過處理篩選後生成,因此一個服務無論須要配置多少文件,這裏只生成一個,方便修改與管理。配置文件沿用上一輪版本配置文件,在新一輪版本沒有新增配置項狀況,無需修改跳過此步。

3.2 自動化統一安裝部署

         自動化統一安裝部署,包括:主機信任、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下載

相關文章
相關標籤/搜索