成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Jenkins X的“前世今生”

譯文
開(kāi)源 項(xiàng)目管理
Jenkins X能夠給開(kāi)發(fā)人員帶來(lái)諸如:更快的軟件交付版本,更簡(jiǎn)單的安裝與配置,以及隨著時(shí)間的推移,不斷增強(qiáng)的業(yè)務(wù)連續(xù)性等優(yōu)勢(shì)。在本文中,我將總結(jié)并回答一些關(guān)于Jenkins X的最常見(jiàn)問(wèn)題,以及它的各種重要特性與優(yōu)勢(shì)。

【51CTO.com快譯】Jenkins X是一個(gè)開(kāi)源項(xiàng)目,它為Kubernetes上的各種云原生應(yīng)用提供了自動(dòng)化的CI/CD。自從云原生基金會(huì)(https://cd.foundation/projects/)去年發(fā)布了Jenkins X以來(lái),它在應(yīng)用實(shí)現(xiàn)上的創(chuàng)新,讓越來(lái)越多的開(kāi)發(fā)人員愿意主動(dòng)了解此項(xiàng)技術(shù)及其具體的功能。

[[266915]]

Jenkins X能夠給開(kāi)發(fā)人員帶來(lái)諸如:更快的軟件交付版本,更簡(jiǎn)單的安裝與配置,以及隨著時(shí)間的推移,不斷增強(qiáng)的業(yè)務(wù)連續(xù)性等優(yōu)勢(shì)。

在本文中,我將總結(jié)并回答一些關(guān)于Jenkins X的最常見(jiàn)問(wèn)題,以及它的各種重要特性與優(yōu)勢(shì)。

Jenkins X是什么?

CloudBees公司的杰出工程師、及Jenkins X的***設(shè)計(jì)師,James Strachan將Jenkins X定義為:針對(duì)Kubernetes原生應(yīng)用的一種開(kāi)源式持續(xù)交付的方式,其用戶(hù)不必過(guò)于關(guān)注各種底層的架構(gòu)。Jenkins X支持包括Amazon、Azure、Google、IBM Cloud、OpenShift、以及Pivotal等主流云平臺(tái)。作為Jenkins的一個(gè)子項(xiàng)目,Jenkins X通過(guò)自動(dòng)化、工具化和DevOps的***實(shí)踐,提高了開(kāi)發(fā)的速度,并改進(jìn)了CI/CD。

有了Jenkins X,我們便可以輕松快捷地使用Kubernetes來(lái)配置復(fù)雜的生態(tài)系統(tǒng)。它不但在系統(tǒng)內(nèi)部減少了操作的復(fù)雜性,還提供了簡(jiǎn)單易學(xué)的對(duì)于工具的選擇方法(https://www.cloudbees.com/blog/business-value-jenkins-x-automating-continuous-everything-kubernetes)。因此,Jenkins X可以確保在項(xiàng)目啟動(dòng)時(shí),我們不必花費(fèi)大量的時(shí)間去創(chuàng)建結(jié)構(gòu)、或收集所需的各種文件。如果您需要一個(gè)Kubernetes集群的話(huà),那么就不必?fù)?dān)心相關(guān)的安裝與配置,所有的工具都能夠自動(dòng)化地工作在該環(huán)境之中。事實(shí)上,您只需要在Jenkins X中輸入一條jx命令(請(qǐng)參見(jiàn)https://jenkins-x.io/commands/jx/),它就能創(chuàng)建出CD管道、Git存儲(chǔ)庫(kù)、以及設(shè)置好webhookes。

Jenkins和Jenkins X有什么區(qū)別?

不同于Jenkins,Jenkins X經(jīng)歷了重塑,能夠更好地與Docker以及Kubernetes協(xié)同工作。當(dāng)然,Jenkins和Jenkins X也有著密切的相關(guān)性,那些Jenkins X能夠?qū)崿F(xiàn)的功能,Jenkins通過(guò)使用各種插件與集成,也能完成。不過(guò),Jenkins X在許多方面都進(jìn)行了簡(jiǎn)化。通過(guò)賦能,您可以使用Helm、Draft、Monocular、ChartMuseum、Nexus、以及Docker Registry等開(kāi)源工具,來(lái)輕松地構(gòu)建云原生應(yīng)用。

具體說(shuō)來(lái),Jenkins X直接定義了各種過(guò)程,而Jenkins則需要去按需適應(yīng)各種過(guò)程。憑借著配置即代碼(Configuration-as-Code)的特性,Jenkins X采用了CLI和API優(yōu)先的方法,并包含了諸如Helm和Monocular等外部工具。然而,Jenkins采用的是UI優(yōu)先的方法。通過(guò)UI的配置,各項(xiàng)功能都是由內(nèi)部插件來(lái)驅(qū)動(dòng)的。此外,Jenkins X的預(yù)覽環(huán)境能夠讓開(kāi)發(fā)人員協(xié)同驗(yàn)證各種變更,并集成到那些基于拉取請(qǐng)求(Pull Request)所創(chuàng)建的運(yùn)行系統(tǒng)的代碼庫(kù)中。

Jenkins X由何而來(lái)?

近幾年來(lái),軟件開(kāi)發(fā)過(guò)程得到了徹底的變化與發(fā)展。通過(guò)使用DevOps,開(kāi)發(fā)人員在應(yīng)用程序與配置管理方面的責(zé)任增強(qiáng)了許多。雖然DevOps的宗旨是提升開(kāi)發(fā)的速度、降低宕機(jī)的時(shí)間風(fēng)險(xiǎn),但是從開(kāi)發(fā)角色轉(zhuǎn)變?yōu)檫\(yùn)營(yíng)角色,對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)并非總是一帆風(fēng)順。DevOps在被廣泛采用與接納的同時(shí),也給各個(gè)行業(yè)帶來(lái)了如下變革:

微服務(wù)體系結(jié)構(gòu):雖然公共云、私有云和混合云的部署模式,已在業(yè)界廣為推行,但是對(duì)于應(yīng)用程序的部署、管理和更新,仍存在著尚未解決的問(wèn)題。在此背景下,微服務(wù)架構(gòu)應(yīng)運(yùn)而生。與單體應(yīng)用不同,基于微服務(wù)的應(yīng)用程序可以被部署到較小的、可獨(dú)立發(fā)布與擴(kuò)容的主機(jī)上。如今,Amazon、eBay、PayPal和Netflix之類(lèi)的大型企業(yè),都將應(yīng)用程序從單體模式(monolithic)遷到了微服務(wù)架構(gòu)中。

容器生態(tài)系統(tǒng):如今,提供操作系統(tǒng)虛擬化的容器,也被普遍地應(yīng)用到了解決與微服務(wù)相關(guān)的問(wèn)題上。在同一臺(tái)主機(jī)里,由于我們能夠使用具有不同技術(shù)與框架的容器,來(lái)部署和構(gòu)建不同的微服務(wù)。因此開(kāi)發(fā)人員既可以使用他們所熟悉的編程語(yǔ)言,又能夠在容器的內(nèi)部封裝各種依賴(lài)關(guān)系。同時(shí),容器也會(huì)比僅做硬件虛擬化的虛機(jī)(VM)更加高效。而能夠移動(dòng)容器的Docker,在其Dockerhub的公共存儲(chǔ)庫(kù)中擁有著預(yù)先配置好的各種Docker鏡像,它們可供各大開(kāi)源社區(qū)廣泛地使用。這些優(yōu)勢(shì)都使得容器成為了云端代碼部署的默認(rèn)選擇。

Kubernetes的崛起:當(dāng)然,容器在管理和編排事務(wù)方面卻面臨著與VM相似的挑戰(zhàn)。對(duì)于任何組織來(lái)說(shuō),為了合理地利用好從云服務(wù)商處購(gòu)置來(lái)的內(nèi)存、CPU或存儲(chǔ)空間,他們需要具有自動(dòng)化移動(dòng)容器的能力,進(jìn)而提升效率并優(yōu)化各種操作。Google就是通過(guò)Kubernetes這種開(kāi)源的解決方案,簡(jiǎn)化了容器的安裝、升級(jí)和編排。與其他云服務(wù)商的容器協(xié)調(diào)方案相比,Kubernetes提供了一個(gè)通用的平臺(tái),能夠處理所有類(lèi)型的云服務(wù),甚至是一些內(nèi)部基礎(chǔ)架構(gòu)的容器。

然而,上述工具往往是針對(duì)某個(gè)特定問(wèn)題的一小部分所構(gòu)建的。因此,面對(duì)各種玲瑯滿(mǎn)目的生態(tài)系統(tǒng),開(kāi)發(fā)人員經(jīng)常無(wú)法選擇出最適合自己的CI/CD工具。他們往往需要將時(shí)間花費(fèi)在了解、甚至是調(diào)整自己的CI/CD設(shè)置上,而不是真正的開(kāi)發(fā)之中。可見(jiàn),他們渴望有一種直截了當(dāng)?shù)姆椒ǎ瑏?lái)管理Kubernetes集群,并對(duì)生產(chǎn)環(huán)境中的Kubernetes進(jìn)行有效的監(jiān)控。

話(huà)說(shuō)回來(lái),雖然Jenkins可以幫助開(kāi)發(fā)人員充分地利用Kubernetes的CI/CD設(shè)置,但是在選擇真正能夠與代碼協(xié)同工作的插件組合、及其配置方面可并不輕松。因此,很少有開(kāi)發(fā)者會(huì)認(rèn)為:建立Jenkins管道是在Kubernetes上實(shí)現(xiàn)CD的***實(shí)踐。

面對(duì)這些挑戰(zhàn),開(kāi)源社區(qū)開(kāi)始考慮通過(guò)改進(jìn)Jenkins,來(lái)方便在云端自動(dòng)化地實(shí)現(xiàn)Kubernetes的CI/CD,這便催生了Jenkins X項(xiàng)目(https://jenkins-x.io/)。

Jenkins X的主要特點(diǎn)是什么?

遵循DevOps***實(shí)踐的Jenkins X是為開(kāi)發(fā)人員所創(chuàng)建的,它旨在加快代碼的轉(zhuǎn)化。它可以提供預(yù)覽的環(huán)境,簡(jiǎn)化DevEx的集群創(chuàng)建,并能夠運(yùn)行在不同云服務(wù)商的集群環(huán)境之中。使用Jenkins X的***優(yōu)點(diǎn)是:在無(wú)需對(duì)Kubernetes的內(nèi)部構(gòu)造深入了解的情況下,開(kāi)發(fā)人員便可以立刻上手其生態(tài)系統(tǒng)。由于所有的組件都已經(jīng)在Git中被版本化了,因此如果需要通過(guò)定制安裝,以適應(yīng)特定的環(huán)境或工作流的話(huà),我們可以對(duì)底層的Docker文件、Jenkins X管道、Jenkins文件、以及Helm圖表進(jìn)行調(diào)整。下面是社區(qū)里經(jīng)常提及的Jenkins X的主要特征:

自動(dòng)化CI/CD:Jenkins X提供了一整套jx命令行工具,允許用戶(hù)將Jenkins X安裝在現(xiàn)有的或全新的Kubernetes集群上,通過(guò)導(dǎo)入各個(gè)項(xiàng)目之中,進(jìn)而最終引導(dǎo)到新的應(yīng)用里。此外,Jenkins X還能夠?yàn)楦鞣N項(xiàng)目自動(dòng)地創(chuàng)建管道。

GitOps改進(jìn)環(huán)境:Jenkins X允許用戶(hù)使用Kubernetes的命名空間,來(lái)創(chuàng)建不同的虛擬環(huán)境,以用于研發(fā)、后續(xù)階段、以及產(chǎn)品之中。每一種環(huán)境都能夠獲取到特定的配置、應(yīng)用版本化的列表、以及存儲(chǔ)在Git庫(kù)里的配置。在這些環(huán)境之間,應(yīng)用對(duì)于新版本的promotion(對(duì)Git環(huán)境產(chǎn)生拉取請(qǐng)求),能夠通過(guò)遵循GitOps的各種實(shí)踐(https://www.cloudbees.com/blog/gitops-dev-dash-ops),來(lái)自動(dòng)完成。此外,開(kāi)發(fā)人員也能夠手動(dòng)將代碼從一個(gè)環(huán)境提交到另一個(gè)環(huán)境,并按需改變或配置新的環(huán)境。

預(yù)覽環(huán)境:雖然用戶(hù)可以手動(dòng)創(chuàng)建預(yù)覽的環(huán)境,但是Jenkins X也會(huì)自動(dòng)為每個(gè)拉取請(qǐng)求創(chuàng)建一個(gè)預(yù)覽環(huán)境。籍此,用戶(hù)可以在合并之前,就預(yù)覽到變更的效果。此外,為了方便預(yù)覽,Jenkins X還會(huì)為拉取請(qǐng)求添加一個(gè)帶有鏈接的注釋。

您可以通過(guò)鏈接,來(lái)了解更多有關(guān)Jenkins X的特點(diǎn)。

Jenkins X有哪5大優(yōu)勢(shì)?

易于設(shè)置:Jenkins X為不同類(lèi)型的項(xiàng)目提供構(gòu)建包、自動(dòng)化安裝、以及用于配置和升級(jí)的外部工具(包括:Helm、Skaffold和Monocular等)。開(kāi)發(fā)人員不但能夠通過(guò)單行的jx命令實(shí)現(xiàn)快速啟動(dòng),而且可以按需掌握J(rèn)enkins X的內(nèi)部管道狀態(tài)。

隔離性:無(wú)論是在共享的集群中,還是在相互獨(dú)立的集群里,每個(gè)團(tuán)隊(duì)都能夠運(yùn)行自己的Jenkins X實(shí)例。其中,在共享的集群中,每個(gè)團(tuán)隊(duì)不但可以擁有自己的命名空間、能有效地共享資源,而且擁有與其他團(tuán)隊(duì)不同的管道、數(shù)據(jù)流和配置。而在單獨(dú)的集群里,每個(gè)團(tuán)隊(duì)都能得到自己的一組資源,完全不會(huì)受到其他團(tuán)隊(duì)工作流的影響。

更快速度:為了加速開(kāi)發(fā)的進(jìn)程,Jenkins X提供了強(qiáng)大的命令集來(lái)提速各項(xiàng)任務(wù),并提供了與云端或SCM的無(wú)縫集成。例如:我們可以使用“jx create cluster gke”這一簡(jiǎn)單的命令,在Google云上安裝Jenkins X。如果將參數(shù)改為eks則適用于AWS。同理,在Azure中可以使用aks、而Oracle里則可使用oke。此外,各種應(yīng)用程序的代碼、以及與容器、包、管道的配套文件,都可以被存儲(chǔ)在一個(gè)公共的庫(kù)中,開(kāi)發(fā)人員開(kāi)箱即用(out of the box)便可。

更快恢復(fù):GitOps創(chuàng)建了單一的“真相”源,以保證每一次拉取請(qǐng)求都能夠得到代碼所對(duì)應(yīng)的版本與注釋。通過(guò)Jenkins X和用戶(hù)環(huán)境中的配置即代碼,開(kāi)發(fā)人員能夠獲取正確的上下文、和可追蹤的信息,進(jìn)而更快地解決各種中斷問(wèn)題。

可預(yù)測(cè)版本:Jenkins X通過(guò)“jx create devpod”命令,來(lái)創(chuàng)建各種開(kāi)發(fā)與測(cè)試環(huán)境,以便開(kāi)發(fā)人員在Jenkins X集群中獲取自己的沙箱。由于開(kāi)發(fā)構(gòu)建環(huán)境中的pod與生產(chǎn)環(huán)境中管道里的pod相同,因此,它能夠確保代碼以一種可預(yù)測(cè)的方式被執(zhí)行。此外,在代碼被提交到生產(chǎn)環(huán)境之前,Jenkins X還有利于預(yù)覽環(huán)境的spin up。總的說(shuō)來(lái),所有這些特性都有助于開(kāi)發(fā)人員交付出穩(wěn)定的程序代碼。

原文標(biāo)題:All You Need to Know About Jenkins X,作者:Parker Ennis

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

責(zé)任編輯:未麗燕 來(lái)源: 51CTO.com
相關(guān)推薦

2011-08-23 09:52:31

CSS

2015-11-18 14:14:11

OPNFVNFV

2014-07-30 10:55:27

2025-02-12 11:25:39

2014-07-21 12:57:25

諾基亞微軟裁員

2016-12-29 18:21:01

2014-07-15 10:31:07

asyncawait

2021-06-17 07:08:19

Tapablewebpack JavaScript

2016-12-29 13:34:04

阿爾法狗圍棋計(jì)算機(jī)

2012-05-18 16:54:21

FedoraFedora 17

2013-05-23 16:23:42

Windows Azu微軟公有云

2016-11-03 13:33:31

2016-11-08 19:19:06

2021-04-15 07:01:28

區(qū)塊鏈分布式DLT

2011-05-13 09:43:27

產(chǎn)品經(jīng)理PM

2015-06-11 11:10:09

對(duì)象存儲(chǔ)云存儲(chǔ)

2019-08-05 10:08:25

軟件操作系統(tǒng)程序員

2013-11-14 16:03:23

Android設(shè)計(jì)Android Des

2019-04-28 09:34:06

2022-11-07 14:23:35

RPA人工智能流程自動(dòng)化管理
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久一级免费视频 | 精品国产乱码久久久久久丨区2区 | 日韩中文不卡 | 精品亚洲91| 免费高潮视频95在线观看网站 | 成人依人 | 国产成人一区二区三区电影 | 日韩精品一区二区三区中文在线 | 男女午夜激情视频 | 黄色免费在线网址 | 亚洲一区二区三区在线视频 | 亚州毛片 | 国产精品视频网站 | 亚洲视频免费在线观看 | 九九热精品视频 | 国产线视频精品免费观看视频 | 中文字幕中文字幕 | xnxx 日本免费 | 成人黄视频在线观看 | 中文字幕在线观看一区 | a级在线免费视频 | 97伦理影院 | 免费视频成人国产精品网站 | 91av视频在线观看 | 久久99精品久久久久婷婷 | 日韩成人一区 | 在线观看日韩精品视频 | 欧美久久综合 | 国产日韩av一区二区 | 国产福利视频导航 | 国产成人艳妇aa视频在线 | 亚洲视频免费观看 | 香蕉视频在线播放 | 日本一区二区不卡 | 国产精品久久久久久久久久久久久 | 欧美黄色一区 | 国产精品观看 | 黄色片在线 | 久久精品亚洲精品国产欧美kt∨ | 99久久精品免费看国产四区 | 国产一区二区三区免费 |