隨著互聯(lián)網(wǎng)、數(shù)字化的發(fā)展,公司機(jī)構(gòu)與各類企業(yè)往往需要進(jìn)行大量頻繁的軟件部署,部署設(shè)備類型多樣,如:本地機(jī)器、云上裸金屬服務(wù)器、云上虛擬機(jī)與容器等。面對(duì)多種部署模式、分布式復(fù)雜運(yùn)行環(huán)境,如何用最短時(shí)間、高質(zhì)量、安全可靠的進(jìn)行軟件部署,這已經(jīng)成為一個(gè)普遍關(guān)注的課題。
持續(xù)部署,通過頻繁的、標(biāo)準(zhǔn)化、自動(dòng)化的方式,將軟件快速交付到生產(chǎn)環(huán)境。從開發(fā)人員提交代碼到編譯、測(cè)試、部署,全流程無人干預(yù),完全自動(dòng)化執(zhí)行。這種模式與部署能力,可以大幅加快軟件版本上線速度,保證新功能第一時(shí)間被用戶使用。
2月27日,華為云發(fā)布持續(xù)部署服務(wù)CodeArts Deploy,通過模塊化自由編排部署流程,實(shí)現(xiàn)軟件的自動(dòng)化部署,幫助企業(yè)軟件產(chǎn)品的快速、高效、高質(zhì)量交付。
傳統(tǒng)部署怎么做?
當(dāng)開發(fā)者把代碼構(gòu)建打包后,軟件包需要被安裝到具體的服務(wù)器上,才能夠?qū)ν馓峁┓?wù)從而實(shí)現(xiàn)商業(yè)變現(xiàn)。軟件被安裝到服務(wù)器這一過程,在軟件開發(fā)活動(dòng)中通常被稱為部署。
現(xiàn)在多數(shù)應(yīng)用程序,其部署過程都比較復(fù)雜,經(jīng)常包含很多步驟,且步驟間夾雜著人工確認(rèn)等動(dòng)作,很容易發(fā)生意外情況。
即便一個(gè)簡(jiǎn)單的部署動(dòng)作,也可能會(huì)因?yàn)榉?wù)器版本的不同、文件目錄結(jié)構(gòu)的差異、權(quán)限的不一致、配置項(xiàng)繁瑣而導(dǎo)致應(yīng)用程序無法正常啟動(dòng);
同時(shí),部署項(xiàng)的數(shù)量、服務(wù)器數(shù)量、每次部署的步驟數(shù)也會(huì)直接影響軟件的部署效率,三個(gè)維度的復(fù)雜性共同導(dǎo)致軟件部署的工作量呈指數(shù)級(jí)增長(zhǎng);
而且,一個(gè)軟件產(chǎn)品從開發(fā)出來到最終入網(wǎng),往往需要經(jīng)過開發(fā)環(huán)境、集成測(cè)試環(huán)境、預(yù)發(fā)模擬環(huán)境、生產(chǎn)環(huán)境等多輪測(cè)試驗(yàn)證。
從多個(gè)角度分析得知,傳統(tǒng)的部署方式無法實(shí)現(xiàn)軟件規(guī)?;渴?。
簡(jiǎn)而言之,傳統(tǒng)的部署方式存在效率低、周期長(zhǎng),可重復(fù)性差、易錯(cuò)、成功率低等問題;也存在著部署責(zé)任和權(quán)限不清晰、上線頻度低、嚴(yán)重依賴執(zhí)行部署動(dòng)作的人和經(jīng)驗(yàn)等大量的短板。從趨勢(shì)上看,更加頻繁的交付新特性,快速閉環(huán)反饋,是軟件開發(fā)一致追求的目標(biāo)。
華為云CodeArts Deploy
助力安全、高效持續(xù)部署
華為云CodeArts Deploy采用沙箱技術(shù),提供可視化UI頁面,通過封裝技術(shù)對(duì)用戶屏蔽繁瑣的操作配置流程,用戶只需填寫關(guān)鍵的參數(shù),即可實(shí)現(xiàn)應(yīng)用的部署。
基于其易入門、功能全、集成度高、自動(dòng)化、可靠的部署能力,CodeArts Deploy能夠幫助大量客戶快速實(shí)現(xiàn)業(yè)務(wù)上云,全面提升軟件的交付效率,顯著提升交付質(zhì)量。
具體來看,華為云CodeArts Deploy有以下5大優(yōu)勢(shì):
特性一:內(nèi)嵌豐富系統(tǒng)模板,配置簡(jiǎn)單,開箱即用
面對(duì)多種新技術(shù)所衍生出的多種部署方式,華為云CodeArts Deploy將各種部署能力進(jìn)行UI化提取,通過系統(tǒng)模板集成的方式,將紛亂繁雜的部署工程配置標(biāo)準(zhǔn)化并向用戶開放。
目前,CodeArts Deploy內(nèi)嵌超過15個(gè)系統(tǒng)模板,包含主機(jī)、容器、Serverless等多種部署形態(tài),覆蓋了Tomcat、Springboot、Go、NodeJs、Docker、Kubernetes等多種語言和技術(shù)棧。
除提供豐富的系統(tǒng)模板外,還支持用戶開發(fā)自定義模板,將具有相同部署流程的應(yīng)用通過模板進(jìn)行歸檔復(fù)用,減少重復(fù)配置工作,極大提升持續(xù)部署效率。
特性二:步驟自由組裝,靈活編排,滿足各行業(yè)部署訴求
一次完整的部署過程通常會(huì)包含多個(gè)步驟。對(duì)于不同的用戶和行業(yè),涉及到的部署場(chǎng)景可能會(huì)存在巨大的差異,導(dǎo)致部署工程的配置以及步驟間依賴關(guān)系也不盡相同。
例如,一款大型軟件通常由多個(gè)部件組成,對(duì)于大型軟件的部署,會(huì)涉及多個(gè)部署步驟和軟件包的安裝,且存在復(fù)雜的前后依賴關(guān)系;同時(shí),不同技術(shù)棧的部署步驟也不盡相同。所以開發(fā)一套能夠覆蓋全部行業(yè)和場(chǎng)景的標(biāo)準(zhǔn)部署方案無法行得通。
華為云CodeArts Deploy服務(wù)可對(duì)部署過程進(jìn)行拆分提取,將每一個(gè)動(dòng)作封裝為一個(gè)獨(dú)立的插件,以部署步驟的方式提供給用戶。用戶可以基于步驟進(jìn)行自由組裝,只需輸入必要的參數(shù)即可實(shí)現(xiàn)工程配置,避免手動(dòng)編寫部署腳本。同時(shí),用戶可根據(jù)部署場(chǎng)景需要,用托拽的方式自定義編排部署工程。
目前,CodeArts Deploy已集成40多個(gè)部署步驟,涵蓋多種技術(shù)棧的部署,以及文件操作、軟件安裝等附加通用能力,通過豐富的部署步驟,以及自由靈活編排功能的加持,使得應(yīng)用部署更輕松。
特性三:橫縱向權(quán)限隔離,多環(huán)境一鍵式自動(dòng)化部署,助力企業(yè)安全、高效生產(chǎn)
DevOps敏捷模式下,通常包括Alpha、Beta、Gamma、Production等四種環(huán)境。軟件在上線過程中,根據(jù)測(cè)試階段軟件會(huì)被部署不同環(huán)境,每個(gè)環(huán)境都需要經(jīng)過嚴(yán)格的測(cè)試,滿足當(dāng)前環(huán)境的驗(yàn)證標(biāo)準(zhǔn),才能進(jìn)入到下個(gè)環(huán)境。
華為云CodeArts Deploy提供以應(yīng)用為中心的環(huán)境管理能力,將同一應(yīng)用下的各個(gè)環(huán)境進(jìn)行統(tǒng)一管理,在多環(huán)境部署的場(chǎng)景下,使每個(gè)環(huán)境采用相同的部署流程,保證交付的一致性。
生產(chǎn)故障是軟件開發(fā)不可碰觸的紅線,環(huán)境作為其中最關(guān)鍵的一環(huán),其安全管理顯的尤為重要。CodeArts Deploy采用橫向和縱向的權(quán)限隔離機(jī)制,嚴(yán)守安全部署底線。
橫向鑒權(quán)限制部署時(shí)只可選擇當(dāng)前應(yīng)用關(guān)聯(lián)的環(huán)境,避免在復(fù)雜的軟件開發(fā)中應(yīng)用和環(huán)境交叉部署導(dǎo)致安全事故。另外,每個(gè)環(huán)境的職責(zé)不同,面向的成員角色也會(huì)有所差異,所以對(duì)環(huán)境的權(quán)限需要做差異化的配置。
縱向鑒權(quán)采用更加精細(xì)化的“角色-權(quán)限”二維矩陣模型,支持環(huán)境實(shí)例級(jí)別的權(quán)限隔離,精準(zhǔn)把控每個(gè)環(huán)境的安全。
基于環(huán)境管理,CodeArts Deploy提供一鍵式自動(dòng)化部署能力,部署過程可視化,可隨時(shí)觀察部署狀態(tài),如果部署過程中發(fā)生異常,支持一鍵回滾到上一版本,實(shí)現(xiàn)安全部署。CodeArts Deploy天然與流水線無縫對(duì)接,當(dāng)代碼提交時(shí)可自動(dòng)觸發(fā)實(shí)現(xiàn)環(huán)境的實(shí)時(shí)升級(jí),真正實(shí)現(xiàn)無人值管理。
特性四:支持多種部署形態(tài),滿足各種部署場(chǎng)景
基于企業(yè)部署環(huán)境和業(yè)務(wù)多元化的需要,華為云CodeArts Deploy提供主機(jī)、容器、微服務(wù)以及函數(shù)流等多種部署形態(tài)。
CodeArts Deploy開發(fā)了大量的部署步驟,涵蓋基礎(chǔ)軟件安裝、文件操作、軟件部署等方面。在支持Linux操作系統(tǒng)多個(gè)主流發(fā)行版本的同時(shí),也支持基于Windows操作系統(tǒng)為平臺(tái)的軟件部署場(chǎng)景。
CodeArts Deploy支持華為云CCE集群、用戶自有集群以及三方供應(yīng)商提供的通用Kubernetes集群,實(shí)現(xiàn)云上云下協(xié)同部署。提供基于Kubernetes Manifest描述的全量部署和基于鏡像迭代的快速部署能力。
另外,CodeArts Deploy也提供基于Helm客戶端(Kubernetes包管理器開源軟件)、Kubectl命令行以及原生Docker命令等多種容器部署能力。
CodeArts Deploy通過打通華為云上下游,實(shí)現(xiàn)CodeArts與華為云Servicestage服務(wù)的對(duì)接,滿足用戶基于微服務(wù)架構(gòu)應(yīng)用的部署。Servicestage天然集成SpringCloud、ServiceComb等開源框架,配合CSE微服務(wù)引擎,助力微服務(wù)應(yīng)用更好、更快的部署。
對(duì)于期望直接運(yùn)行代碼源文件,對(duì)底層運(yùn)行資源不關(guān)注的用戶。CodeArts Deploy通過對(duì)接新一代Serverless函數(shù)計(jì)算與編排服務(wù)FunctionGraph,以事件驅(qū)動(dòng)函數(shù)的方式實(shí)現(xiàn)軟件的發(fā)布。
特性五:多地域?yàn)?zāi)備部署,多賬號(hào)協(xié)同部署
一次宕機(jī)或者一段時(shí)間的停服,可能會(huì)給公司或企業(yè)帶來巨大的負(fù)面影響,造成無法挽回的損失,所以災(zāi)備部署功能已成為部署工具的必要能力之一。
華為云CodeArts Deploy支持跨region的災(zāi)備部署能力,使用同一套部署配置,將應(yīng)用同時(shí)部署到生產(chǎn)環(huán)境和其他region搭建的容災(zāi)環(huán)境,極大降低緊急情況下長(zhǎng)時(shí)間停服的概率,確保產(chǎn)品安全可靠。
CodeArts Deploy同時(shí)支持云上跨賬號(hào)部署能力。大型企業(yè)通常會(huì)有多個(gè)職能部門,企業(yè)上云后出于對(duì)IT系統(tǒng)的精細(xì)化治理,每個(gè)部門會(huì)被分配各自的華為云賬號(hào),用于維護(hù)該部門的物理資源和部署應(yīng)用。另一方面,企業(yè)希望使用統(tǒng)一的DevOps賬號(hào)來管理所有部門的軟件開發(fā)活動(dòng),其中包含應(yīng)用的部署行為。
例如,要求所有部門遵守相同的需求管理規(guī)范、代碼提交規(guī)則、發(fā)布門禁以及部署流程等開發(fā)標(biāo)準(zhǔn),還需要統(tǒng)計(jì)各個(gè)部門、各開發(fā)人員的工作質(zhì)量和工作進(jìn)度等效能指標(biāo)。針對(duì)上述的部署治理場(chǎng)景,基于CodeArts Deploy跨賬號(hào)部署能力,開發(fā)人員使用DevOps賬號(hào)可將編譯過的軟件包部署到所屬部門賬號(hào)的資源中,在獨(dú)立IT治理的場(chǎng)景下,依然可以滿足開發(fā)活動(dòng)的統(tǒng)一治理。
得益于以上特性,華為云CodeArts Deploy已服務(wù)華為內(nèi)部以及廣大公有云客戶,覆蓋金融、物流、能源、汽車等多個(gè)行業(yè),幫助用戶實(shí)現(xiàn)應(yīng)用的高效迭代和快速部署。
例如,華為內(nèi)部使用CodeArts Deploy后,應(yīng)用部署一次性成功率直線提升超過80%;某頭部大型物流企業(yè),其全部產(chǎn)品線100多套系統(tǒng)平臺(tái)使用CodeArts Deploy進(jìn)行部署交付,效率較之前提升超過30%,大大縮短軟件交付周期。
面向未來,華為云CodeArts Deploy將打造提供可灰度、可回滾、可監(jiān)控、可追溯的輕量化軟件發(fā)布上線能力,助力企業(yè)實(shí)現(xiàn)應(yīng)用的高可靠快速發(fā)布。
華為云CodeArtsDeploy服務(wù)已上線
識(shí)別下方二維碼立即體驗(yàn)
▼
原文標(biāo)題:化繁為簡(jiǎn),高效部署!華為云發(fā)布部署服務(wù)CodeArts Deploy
文章出處:【微信公眾號(hào):華為DevCloud】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
華為
+關(guān)注
關(guān)注
216文章
34433瀏覽量
251697
原文標(biāo)題:化繁為簡(jiǎn),高效部署!華為云發(fā)布部署服務(wù)CodeArts Deploy
文章出處:【微信號(hào):華為DevCloud,微信公眾號(hào):華為DevCloud】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論