Linux基金會(huì)下的OPNFV項(xiàng)目是通過(guò)集成,部署和測(cè)試促進(jìn)各種開(kāi)源生態(tài)系統(tǒng)網(wǎng)絡(luò)功能虛擬化(NFV)組件的開(kāi)發(fā)和演進(jìn)的開(kāi)源項(xiàng)目,該項(xiàng)目目前宣布了其跨社區(qū)持續(xù)集成(XCI)方案,意圖通過(guò)增加OPNFV社區(qū)和上游社區(qū)之間的協(xié)作來(lái)實(shí)現(xiàn)創(chuàng)新。
通過(guò)XCI,OPNFV能夠定期整合來(lái)自選定的上游社區(qū)項(xiàng)目的每個(gè)支持的分支的最新信息,縮短實(shí)施新功能的時(shí)間和解決問(wèn)題的時(shí)間。OPNFV項(xiàng)目通過(guò)構(gòu)建復(fù)雜的持續(xù)集成(CI)來(lái)支持DevOps開(kāi)發(fā)模式,目前已經(jīng)整合了OpenStack、OpenDaylight、FD.io等上游項(xiàng)目的主要版本,這些項(xiàng)目的主要版本更新周期可能會(huì)很長(zhǎng),延遲了OPNFV成員對(duì)上游項(xiàng)目的應(yīng)用,同時(shí)也延遲了上游社區(qū)從OPNFV測(cè)試中獲得有價(jià)值的反饋的速度。XCI計(jì)劃通過(guò)定期集成和測(cè)試多個(gè)上游項(xiàng)目的最新軟件版本來(lái)解決這個(gè)問(wèn)題。
Orange NFV架構(gòu)師Morgan Richomme表示:“開(kāi)源社區(qū)需要XCI來(lái)解決OPNFV中復(fù)雜的測(cè)試挑戰(zhàn),從壓力、穩(wěn)健性、彈性、VNF和端到端測(cè)試入手,XCI已經(jīng)成為OPNFV DNA的一部分,使OPNFV的成員能夠盡快地從上游進(jìn)行測(cè)試,以提供真實(shí)的電信級(jí)的反饋和編排。”
面臨的挑戰(zhàn)
最新的針對(duì)通信服務(wù)提供商(CSP)的調(diào)查顯示,80%的受訪者認(rèn)為DevOps軟件開(kāi)發(fā)模式對(duì)NFV的成功至關(guān)重要。DevOps最主要的實(shí)現(xiàn)方式是評(píng)估DevOps工具鏈、自動(dòng)化和測(cè)試基礎(chǔ)設(shè)施。
從OPNFV的角度看,DevOps意味著通過(guò)應(yīng)用CI/CD原則、自動(dòng)化和實(shí)踐來(lái)開(kāi)發(fā)、測(cè)試、部署和監(jiān)控軟件系統(tǒng),開(kāi)發(fā)和運(yùn)維團(tuán)隊(duì)協(xié)同工作,從而實(shí)現(xiàn)文化和思維方式的轉(zhuǎn)變。持續(xù)集成和持續(xù)部署(CI/CD)作為DevOps的重要組成部分,是OPNFV項(xiàng)目成立以來(lái)一直在努力的方向。OPNFV的CI管道使得社區(qū)從DevOps方式中受益,用戶可以快速訪問(wèn)新功能,開(kāi)發(fā)人員能夠快速收到反饋,整個(gè)軟件堆棧以漸進(jìn)式的方式得到改進(jìn)。
目前OPNFV CI渠道可以概括如下:
OPNFV項(xiàng)目帶動(dòng)了上游項(xiàng)目的主要版本的發(fā)展,例如OPNFV集成了OpenStack的Newton版本對(duì)發(fā)送給OPNFV Gerrit的補(bǔ)丁進(jìn)行審查,向提交者和審閱者提供對(duì)該補(bǔ)丁的反饋通過(guò)OPNFV Pharos項(xiàng)目,在多個(gè)硬件平臺(tái)的各種環(huán)境中進(jìn)行自動(dòng)部署。CI渠道目前每天都集成并安裝堆棧組件、項(xiàng)目和配置的不同組合,并對(duì)每個(gè)方案執(zhí)行煙霧測(cè)試(smoke test),并針對(duì)該場(chǎng)景附加自動(dòng)化測(cè)試。下圖總結(jié)了這三個(gè)流程:
現(xiàn)有的途徑雖然相對(duì)先進(jìn),但總是可以改進(jìn)的,現(xiàn)有方法的主要挑戰(zhàn)是上游項(xiàng)目的代碼不是最新的,下圖顯示上游項(xiàng)目融入OPNFV的方式。
下面將介紹目前的方式存在的缺陷:
· 對(duì)上游最新版本概念驗(yàn)證(PoC)周期非常長(zhǎng),如上圖所示,一旦開(kāi)發(fā)人員提交代碼,可能需要2到8個(gè)月的時(shí)間才能在OPNFV中顯示特性,然后還需要4個(gè)月左右的時(shí)間才能在OPNFV的版本中實(shí)現(xiàn)該功能,總體時(shí)間長(zhǎng)達(dá)7個(gè)月至12個(gè)月。以O(shè)penStack為例,假設(shè)在2016年3月底或4月初為Newton版本合并的補(bǔ)丁將在2017年4月4日在OPNFV Danube上出現(xiàn)。
· 上游項(xiàng)目中的新功能存在錯(cuò)誤,OPNFV用戶想要提交一個(gè)修復(fù)補(bǔ)丁,這個(gè)周期可能需要3到8個(gè)月。然后可能還需要5到10個(gè)月才能在下一個(gè)上游項(xiàng)目的版本中才能修復(fù),然后再過(guò)6個(gè)月會(huì)在OPNFV的下一個(gè)版本中出現(xiàn)。因此,要開(kāi)發(fā)、調(diào)試并最終出現(xiàn)在OPNFV版本中的新功能可能需要14-24個(gè)月的時(shí)間。
很明顯,這么長(zhǎng)的整合周期不利于社區(qū)的快速整合、驗(yàn)證并實(shí)現(xiàn)驗(yàn)證目標(biāo),XCI的目標(biāo)是改變這種狀況。
XCI方案簡(jiǎn)介
XCI計(jì)劃定期集成來(lái)自所有支持的上游社區(qū)的最新版本,而不是等待主要的發(fā)布版本。該舉措將從OpenStack、OpenDaylight控制器和FD.io虛擬交換機(jī)的定期集成開(kāi)始。下圖顯示了XCI的工作機(jī)制:
XCI涉及到兩個(gè)主要的集成和測(cè)試任務(wù):
· 對(duì)于社區(qū)成員上傳的補(bǔ)丁,OPNFV XCI將根據(jù)項(xiàng)目和補(bǔ)丁進(jìn)行驗(yàn)證,以+1/-1的形式向上游社區(qū)提供反饋
· OPNFV XCI將定期使用來(lái)自所有支持的版本的最新信息,將其集成并安裝到場(chǎng)景中,并針對(duì)這些場(chǎng)景執(zhí)行CI測(cè)試
這有效解決了上述提到的關(guān)鍵問(wèn)題,能夠快速利用上游項(xiàng)目的變化,可以迅速提供反饋,功能開(kāi)發(fā)或錯(cuò)誤修復(fù)將會(huì)縮短到幾天時(shí)間內(nèi)完成。
XCI利用RelEng和Pharos項(xiàng)目中的大部分當(dāng)前工具。此外,XCI使用兩種OpenStack基礎(chǔ)設(shè)施工具:Bifrost和OpenStack-Ansible(OSA),用于配置節(jié)點(diǎn),并安裝由最新支持的OpenStack,ODL和FD.io分支構(gòu)建的不同方案:
· Bifrost:Bifrost是OpenStack配置服務(wù)器節(jié)點(diǎn)的裸機(jī)配置項(xiàng)目,建立在OpenStack Ironic項(xiàng)目的基礎(chǔ)之上,除了獨(dú)立于其他OpenStack服務(wù)之外,該項(xiàng)目提供了一套Ansible操作手冊(cè),以自動(dòng)方式將基本映像部署到裸機(jī)硬件上。
· OpenStack-Ansible:OSA也是一個(gè)OpenStack項(xiàng)目,它使用Ansible在預(yù)配節(jié)點(diǎn)上部署OpenStack環(huán)境。該項(xiàng)目創(chuàng)建Ansible可以部署核心和可選的OpenStack服務(wù),OSA用于安裝ODL和FD.io的不同場(chǎng)景。
借助上述工具,XCI將支持三種基本的操作系統(tǒng):Ubuntu 16.04,CentOS 7和OpenSUSE 42.2。XCI計(jì)劃還有其他復(fù)雜性:因?yàn)锽ifrost和OSA實(shí)際上是OpenStack項(xiàng)目,所以它們也必須定期固定和測(cè)試,因?yàn)榕f版本可能無(wú)法部署最新的代碼。因此,用戶可能需要安裝CI軟件和CI工具。
XCI開(kāi)發(fā)者沙箱
除了上述自動(dòng)化流程之外,開(kāi)發(fā)人員還能夠根據(jù)最新版本的上游項(xiàng)目進(jìn)行本地開(kāi)發(fā)和測(cè)試,XCI沙箱環(huán)境使得開(kāi)發(fā)人員使用最新的上游代碼或他們本地開(kāi)發(fā)的代碼來(lái)實(shí)施方案。而且XCI沙箱環(huán)境還能夠讓開(kāi)發(fā)人員在單個(gè)節(jié)點(diǎn),甚至在筆記本電腦上實(shí)現(xiàn)這些功能,而不需要完整的Pharos POD。其功能包括:
· 提供自動(dòng)化設(shè)置開(kāi)發(fā)和測(cè)試環(huán)境的方式
· 提供不同風(fēng)格的環(huán)境
· 支持不同版本的上游組件
· 支持同一種機(jī)制來(lái)啟用或禁用額外的OpenStack或其他上游項(xiàng)目
目前來(lái)看,沙箱環(huán)境有四種選擇(xci-aio,xci-mini,xci-noha,xci-ha),隨著硬件需求的增加,這些不同的沙箱環(huán)境消耗1-6個(gè)虛擬機(jī)。例如,xci-ha的風(fēng)格是最耗資源的,每個(gè)虛擬機(jī)需要8個(gè)vCPU,16GB RAM和80GB磁盤(pán),安裝需要2個(gè)小時(shí)10分鐘。
總之,XCI計(jì)劃將CI管道的連續(xù)性延伸到上游項(xiàng)目。 而最初的上游項(xiàng)目XCI將整合在一起OpenStack,ODL和FD.io,未來(lái)還將努力擴(kuò)展到其他上游項(xiàng)目,如ONAP。
- 蜜度索驥:以跨模態(tài)檢索技術(shù)助力“企宣”向上生長(zhǎng)
- 2025年生成式人工智能將如何影響眾行業(yè)
- 報(bào)告:人工智能推動(dòng)數(shù)據(jù)中心系統(tǒng)支出激增25%
- 千家早報(bào)|馬斯克預(yù)測(cè):人工智能或?qū)⒊絾蝹€(gè)人類;鴻蒙生態(tài)(武漢)創(chuàng)新中心啟用,推動(dòng)鴻蒙軟硬件在武漢首試首用——2024年12月27日
- 中移建設(shè)被拉入軍采“黑名單”
- 大理移動(dòng)因違規(guī)套現(xiàn)等問(wèn)題,擬被列入軍采失信名單
- ??低晹M回購(gòu)不超過(guò)25億元股份 首次回購(gòu)成交金額1.26億元
- 海格通信4800萬(wàn)元收購(gòu)控股子公司海格恒通30%股權(quán)
- 聯(lián)通再度集中任命四省“一把手”:涉及海南、江西、新疆、內(nèi)蒙古
- 衛(wèi)星互聯(lián)網(wǎng)新星鴻擎科技完成A1輪融資 估值已達(dá)16.4億元
- 電信又驚喜躺贏,但這次是移動(dòng)中標(biāo)被投訴
免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。