01. 軟件部署的定義
軟件應(yīng)用一般由開發(fā)人員進行程序源代碼的編寫,調(diào)試,集成構(gòu)建,打包提交給測試人員。測試通過后程序包發(fā)布,最后由運維人員進行軟件應(yīng)用的部署。簡單的說,軟件部署就是把開發(fā)好的軟件應(yīng)用給到用戶正常使用的過程。
傳統(tǒng)的部署方式一般是開發(fā)人員通過QQ/FTP將程序包發(fā)送給運維人員,運維人員通過rz上傳的方式將包上傳到目標服務(wù)器,然后執(zhí)行重命名原包、拷貝新包到目標目錄,執(zhí)行服務(wù)應(yīng)用重啟命令完成整個部署過程。
上述過程看起來非常簡單,不是很麻煩,但隨著數(shù)字化轉(zhuǎn)型的發(fā)展,企業(yè)線下業(yè)務(wù)逐漸線上化,應(yīng)用數(shù)量與日俱增,部署活動也變得更加頻繁。這種傳統(tǒng)的部署方式就顯得無能為力了,不但浪費人力同時部署過程中也容易出現(xiàn)各類問題。
02. 傳統(tǒng)部署方式的缺陷
1)效率低
隨著數(shù)據(jù)中心規(guī)模越來越大,應(yīng)用服務(wù)器的數(shù)量也在不斷增加,在大規(guī)模批量部署時,運維人員需要花費大量時間去做軟件應(yīng)用部署這類重復(fù)的事情,非常浪費人力、財力。
2)易出錯
在手工部署時,由于運維人員要大量執(zhí)行重復(fù)性的操作,導(dǎo)致人為誤操作的幾率增加,每次軟件部署時運維人員承受較大壓力。
03. 自動化部署的定義與優(yōu)勢
一句話概括自動化部署就是:部署過程無需人工手工操作,將過程中的每一個步驟都自動化。將運維人員從耗時、耗力、瑣碎的工作中解放出來,提升工作效率。同時也能避免因人為操作失誤帶來的風(fēng)險問題。自動化部署有以下幾點優(yōu)勢:
1)效率高
自動化部署大大提升了運維人員的工作效率,將部署過程中簡單、重復(fù)的操作,用自動化的方式替代人工執(zhí)行,過程中減少了人工干預(yù),解放運維人員的雙手,讓他們把精力投入到更專業(yè)的工作中去。
2)易操作
一鍵化的傻瓜式操作使得任何人都可以完成操作,不需要專門學(xué)習(xí)一本很厚的部署操作說明書才能進行軟件的部署。
04. 自動化部署工具推薦
嘉為藍鯨應(yīng)用發(fā)布中心ADC是與藍鯨配置平臺CMDB天然集成的應(yīng)用部署平臺。支持單體、SOA、微服務(wù)、容器化應(yīng)用的發(fā)布與管理;支持程序包、配置文件及其實例化、模板集(K8s YAML文件)的發(fā)布;支持多應(yīng)用、多實例、多環(huán)境、多集群發(fā)布;支持定時、并行、滾動、分批發(fā)布等方式;可快速發(fā)布或回滾,具備靈活的可視化編排引擎。能夠幫助企業(yè)高效、快速、規(guī)范、穩(wěn)定地實現(xiàn)自動化部署。
接下來,我們將通過一個案例展示如何用嘉為藍鯨應(yīng)用發(fā)布中心將復(fù)雜的手工部署流程轉(zhuǎn)化為安全可靠的自動化部署流程:
第一步:定義發(fā)布對象
首先,新增程序包,將開發(fā)好的軟件程序上傳,并將程序包綁定到業(yè)務(wù)系統(tǒng)的模塊上面。
第二步:定義原子執(zhí)行流程
將單個發(fā)布節(jié)點的腳本流配置成原子執(zhí)行流程。
第三步:定義軟件應(yīng)用自動化發(fā)布流程
接下來,我們將創(chuàng)建一條發(fā)布任務(wù)模板,這個發(fā)布任務(wù)模板會定義一個完整應(yīng)用系統(tǒng)內(nèi)所有模塊的發(fā)布對象,原子執(zhí)行流程,發(fā)布依賴,發(fā)布策略,一次配置可重復(fù)多次使用。
第四步:一鍵執(zhí)行發(fā)布任務(wù)
通過上一步中創(chuàng)建好的發(fā)布任務(wù)模板可一鍵執(zhí)行發(fā)布任務(wù),并查看執(zhí)行的結(jié)果。
CMDB治理:CMDB消費場景規(guī)劃指南
查看詳細
CTest測試管理平臺:上新用例結(jié)構(gòu)化設(shè)計
查看詳細
CCode代碼管理平臺:代碼合并前CI任務(wù)狀態(tài)校驗
查看詳細
嘉為藍鯨WeOps:高效監(jiān)控Kubernetes集群的三大關(guān)鍵點
查看詳細
CFlow價值流管理平臺:從流程線上化到價值可視化,研運黑盒破解之道
查看詳細
CPack制品庫:制品黑白名單,為軟件供應(yīng)鏈安全護航
查看詳細
申請演示