日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

什么是持續(xù)集成 源程序量( 六 )


說得更遠(yuǎn)一些,DevOps 建議實(shí)現(xiàn)管道的基礎(chǔ)架構(gòu)也會被視為代碼 。也就是說,它應(yīng)該自動配置、可跟蹤、易于修改,并在管道發(fā)生變化時觸發(fā)新一輪運(yùn)行 。這可以通過將管道實(shí)現(xiàn)為代碼來完成 。
什么是“管道即代碼”?管道即代碼(pipeline-as-code)是通過編寫代碼創(chuàng)建管道作業(yè)/任務(wù)的通用術(shù)語,就像開發(fā)人員編寫代碼一樣 。它的目標(biāo)是將管道實(shí)現(xiàn)表示為代碼,以便它可以與代碼一起存儲、評審、跟蹤,如果出現(xiàn)問題并且必須終止管道,則可以輕松地重建 。有幾個工具允許這樣做,如 Jenkins 2。
DevOps 如何影響生產(chǎn)軟件的基礎(chǔ)設(shè)施?傳統(tǒng)意義上,管道中使用的各個硬件系統(tǒng)都有配套的軟件(操作系統(tǒng)、應(yīng)用程序、開發(fā)工具等) 。在極端情況下,每個系統(tǒng)都是手工設(shè)置來定制的 。這意味著當(dāng)系統(tǒng)出現(xiàn)問題或需要更新時,這通常也是一項(xiàng)自定義任務(wù) 。這種方法違背了持續(xù)交付的基本理念,即具有易于重現(xiàn)和可跟蹤的環(huán)境 。
多年來,很多應(yīng)用被開發(fā)用于標(biāo)準(zhǔn)化交付(安裝和配置)系統(tǒng) 。同樣,虛擬機(jī)(virtual machine)被開發(fā)為模擬在其它計算機(jī)之上運(yùn)行的計算機(jī)程序 。這些 VM 要有管理程序才能在底層主機(jī)系統(tǒng)上運(yùn)行,并且它們需要自己的操作系統(tǒng)副本才能運(yùn)行 。
后來有了 容器(container) 。容器雖然在概念上與 VM 類似,但工作方式不同 。它們只需使用一些現(xiàn)有的操作系統(tǒng)結(jié)構(gòu)來劃分隔離空間,而不需要運(yùn)行單獨(dú)的程序和操作系統(tǒng)的副本 。因此,它們的行為類似于 VM 以提供隔離但不需要過多的開銷 。
VM 和容器是根據(jù)配置定義創(chuàng)建的,因此可以輕易地銷毀和重建,而不會影響運(yùn)行它們的主機(jī)系統(tǒng) 。這允許運(yùn)行管道的系統(tǒng)也可重建 。此外,對于容器,我們可以跟蹤其構(gòu)建定義文件的更改 —— 就像對源代碼一樣 。
因此,如果遇到 VM 或容器中的問題,我們可以更容易、更快速地銷毀和重建它們,而不是在當(dāng)前環(huán)境嘗試調(diào)試和修復(fù) 。
這也意味著對管道代碼的任何更改都可以觸發(fā)管道新一輪運(yùn)行(通過 CI),就像對代碼的更改一樣 。這是 DevOps 關(guān)于基礎(chǔ)架構(gòu)的核心理念之一 。
via: http://img8888.yunnanlong.com/2023/1156/nbizrjx14l0
作者: Brent Laster 選題: lujun9972 譯者: pityonline 校對: wxy
本文由 LCTT 原創(chuàng)編譯,Linux中國 榮譽(yù)推出
點(diǎn)擊“了解更多”可訪問文內(nèi)鏈接

推薦閱讀