當(dāng)前位置: 主頁 > 科技 >

        原來Zuul可以這樣簡化測試流程

        時間:2020-06-10來源:互聯(lián)網(wǎng) 作者:編輯 點擊:
        原標(biāo)題:原來Zuul可以這樣簡化測試流程 OpenTelekomCloud是一個大型的歐洲OpenStack公有云。其子公司T-SystemsInternationalGmbH為德國電信集團提供服務(wù)。 OpenTelekomCloud架構(gòu)師ArtemGoncharov分享了Ope

        原標(biāo)題:原來Zuul可以這樣簡化測試流程

        OpenTelekomCloud是一個大型的歐洲OpenStack公有云。其子公司T-SystemsInternationalGmbH為德國電信集團提供服務(wù)。

        OpenTelekomCloud架構(gòu)師ArtemGoncharov分享了OpenTelekomCloud為什么選擇Zuul,以及他們?nèi)绾螌⑵渑cGitHub和OpenStack一起使用。

        Q:你的組織是怎么開始使用Zuuk的?

        A:我們最開始使用Zuul開發(fā)OpenStack客戶端組件,如SDK、CLIs和其他內(nèi)部運維軟件組件。在設(shè)法將一些更改合并到Zuul中之后,我們將其高效地部署為我們的持續(xù)集成系統(tǒng)。現(xiàn)在,它是我們的CI系統(tǒng),用于開發(fā)提供給客戶的所有開源工具。此外,Zuul目前用于監(jiān)控平臺服務(wù)質(zhì)量。為此,我們定期執(zhí)行一組測試。它還永久監(jiān)控我們的RefStack合規(guī)性。

        我們?yōu)榘裐uul作為德國電信其他部門的內(nèi)部服務(wù)做準(zhǔn)備。我們在自己的公有云上運行Zuul,即OpenTelekomCloud,并在那里生成虛擬機。我們?nèi)际荗penStack!

        Q:你們是如何使用Zuul的?

        A:目前,我們有在與GitHub交互的公共域上工作的Zuul。盡管Gerrit的CI工作流非常強大,但我們注意到一些用戶困擾于其復(fù)雜性。因此,我們決定留在GitHub,讓更多的社區(qū)成員參與我們項目的開發(fā)。Nodepool為簡化OpenStack驅(qū)動程序的作業(yè)啟動虛擬機。

        Q:你們現(xiàn)在的規(guī)模多大?

        A:我們有一個五節(jié)點的zookeeper集群,每個節(jié)點有一個調(diào)度器、一個nodepool-builder和一個nodepool-launcher。目前兩個Zuul執(zhí)行器滿足了我們的需要。我們有大約10個項目由Zuul管理,但計劃很快增加到50個。我們平均每天生成50個build。

        Q:你們從使用Zuul得到了什么好處?

        A:我們在快速成長,項目在規(guī)模和復(fù)雜性上都有了清晰的布局,而且預(yù)計性會增加得很快。門控到位,確保所有的軟件始終都是經(jīng)過測試和一致的——這讓我們很放心,使我們能夠擴大所覆蓋的項目的數(shù)量。

        其次,我們可以更好地控制構(gòu)建和測試過程在何處以及如何進行。我們正在測試真實的云場景,因此有實際云資源的憑據(jù)和訪問權(quán)限。通過Zuul和Nodepool,我們可以更好地控制這些虛擬機和存儲的數(shù)據(jù)。

        最后,我們有一個相當(dāng)復(fù)雜的集成和部署工作流。我們構(gòu)建和打包的不僅僅是軟件,我們還創(chuàng)建其他工件,比如文檔、PyPI包,還有更多需要額外步驟的東西。我們喜歡使用Ansibleplaybook定義這些工作流所帶來的靈活性。

        Q:挑戰(zhàn)是什么(你們是如何解決的)?

        A:測試公有云的所有方面對我們來說都很重要。功能測試包括登錄域、創(chuàng)建資源和處理憑證的所有方面。由于這個安裝程序連接到GitHub,可以間接地供公眾訪問,因此我們對在執(zhí)行實際測試和構(gòu)建的同一平臺上運行Zuul安裝程序有點不安。因此,我們通過幾個專用的OpenStack域來隔離這些作用域,其中只有Zuul有API訪問權(quán)限。在最壞的情況下,如果憑據(jù)泄漏,我們只需清理并重置一個測試域,但Zuul基礎(chǔ)設(shè)施本身不受影響。為此,我們促進了OpenStackSDK的“項目清理”功能,我們也為此做出了貢獻。

        我們還經(jīng)歷了refstack的功能測試或驗證,經(jīng)常會留下很多碎片——這些碎片沒有被代碼清理掉,有時甚至是因為OpenStack本身的API調(diào)用失敗。我們還利用“項目清理”來減輕這種行為。

        Zuul還將日志文件中的許多信息發(fā)布到公共可讀的Swift容器中。我們的安全團隊對此表示不滿,即使大部分信息是無害的。在某些情況下,我們修補了Zuul或其作業(yè),因此這些數(shù)據(jù)不會先累積。

        出于運維和安全原因,我們希望盡可能地包含所有工作負(fù)載。Zuul配備了一組Docker容器。不幸的是,Nodepool-builder需要很多特權(quán),這很難用普通的舊Docker實現(xiàn)。我們的方法是利用Podman作為替代方案。

        Q:關(guān)于Zuul的未來計劃是什么?

        A:Gerrit代碼審查系統(tǒng)實現(xiàn)了一個復(fù)雜的角色模型,它允許用戶進行代碼審查、升級修訂或授權(quán)最終合并。僅用GitHub實現(xiàn)這些訪問控制功能是一個大挑戰(zhàn)。作為暫時的解決方法,我們對拉取請求使用“/merge”注釋。

        盡管Zuul的主要目的是實現(xiàn)自動化,但有時能夠手動干預(yù)也不錯。不幸的是,目前還沒有一個真正的UI來執(zhí)行管理任務(wù),比如重新構(gòu)建一些工件。這將有助于遷移更多的Jenkins作業(yè)。

        Zuul的運維很復(fù)雜,我們目前沒有一個專門的小組。我們通過實現(xiàn)Ansibleplaybooks來減少運維的工作量,但這是一項持續(xù)的工作。

        我們致力于將Zuul轉(zhuǎn)變?yōu)槠渌聡娦抛庸竞晚椖康膬?nèi)部產(chǎn)品。我們也非常有興趣讓Kubernetes和OpenShift成為Zuul的運維平臺。這樣的挑戰(zhàn)來自于高可用性所需的多云問題。

        Q:Zuul有沒有特別的功能吸引到你們?

        A:Zuul推動了OpenStack的發(fā)展,這是一項了不起的工作,也是一個相當(dāng)大的責(zé)任。它的可伸縮性和靈活性給我們留下了深刻的印象,其架構(gòu)適應(yīng)了我們的內(nèi)部項目。相信還有更多的事情要做。

        https://superuser.openstack.org/articles/zuul-a-t-systems-case-study/

        頂一下
        (0)
        0%
        踩一下
        (0)
        0%
        ------分隔線----------------------------
        發(fā)表評論
        請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動的言論。
        評價:
        文章導(dǎo)航
        推薦內(nèi)容
        主站蜘蛛池模板: 再深点灬舒服灬太大了快点h视频| 日韩精品一区二区三区视频| 国产农村妇女毛片精品久久| 中文字幕不卡免费视频| 男男GayGays熟睡入侵视频| 在线播放无码高潮的视频| 亚洲人成在线影院| 蜜臀av免费一区二区三区| 女性高爱潮有声视频| 亚洲小视频在线播放| 青草青草久热精品视频在线观看| 在线a亚洲视频播放在线观看| 亚洲一区二区免费视频| 色综合五月婷婷| 夜夜爽夜夜叫夜夜高潮漏水| 乱人伦精品视频在线观看| 狼人无码精华AV午夜精品| 国产欧美va欧美va香蕉在线| 中文字幕在线观看你懂的| 狂野欧美激情性xxxx| 国产手机在线视频| 三上悠亚ssni_229在线播放| 最近中文字幕高清2019中文字幕 | 国产精品一二三区| 中文字幕在线免费看线人| 欧美乱子伦一区二区三区| 你是我的城池营垒免费观看完整版| 中文字幕制服丝袜| 天海翼大乱欲在线观看| 久草视频在线网| 真实调教奇优影院在线观看| 国产激情一区二区三区| 东北女人下面痒大叫| 日韩国产成人精品视频| 免费黄色欧美视频| 亚洲精品老司机| 成人免费看片又大又黄| 亚洲最大成人网色| 精品一区二区三区在线视频| 国产特黄特色的大片观看免费视频| AAAAA级少妇高潮大片免费看|