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

開發(fā)者如何利用有效工具開啟Kubernetes之旅?

開發(fā) 開發(fā)工具
2021年,作為新手開發(fā)者,該如何把握趨勢(shì),邁向Kubernetes之旅呢?本文將重點(diǎn)介紹關(guān)于Kubernetes的主流應(yīng)用工具,即Helm、Kustomize和Skaffold。

過(guò)去幾年,為了讓Kubernetes做到開箱即用,各種各樣的開發(fā)工具如洪水般涌向市場(chǎng)。這也不難理解,沒有誰(shuí)愿意錯(cuò)過(guò)新的技術(shù)趨勢(shì)。但一味追新,有時(shí)候也會(huì)付出慘重代價(jià)。隨著Kubernetes生態(tài)的不斷完善,有的工具可以繼續(xù)發(fā)展,而有一些工具則被時(shí)代拋棄,或者被并入新的產(chǎn)品研發(fā)規(guī)劃中。那么,2021年,作為新手開發(fā)者,該如何把握趨勢(shì),邁向Kubernetes之旅呢?本文將重點(diǎn)介紹關(guān)于Kubernetes的主流應(yīng)用工具,即Helm、Kustomize和Skaffold。

[[393188]]

Helm

Helm是Kubernetes的包管理器,是打包、共享和部署k8s應(yīng)用的事實(shí)標(biāo)準(zhǔn)。Helm允許你把多個(gè)YAML配置片段以一致的、結(jié)構(gòu)化的方式組合成一個(gè)邏輯包,即 "chart"。這樣,開發(fā)者在部署應(yīng)用時(shí)可以使用自定義參數(shù),來(lái)確保應(yīng)用程序可配置。另外,你還可以將你的應(yīng)用程序以版本化和可跟蹤的方式發(fā)布到私有或公有存儲(chǔ)庫(kù)中。換言之,Helm為我們提供了強(qiáng)大的封裝機(jī)制,可以確保你的應(yīng)用程序按預(yù)期部署。

另外,通過(guò)Helm,你可以去訪問(wèn)廣泛公開可用的圖表庫(kù),并為你的組織提供任何的chart;你也可以根據(jù)軟件包作者提供的設(shè)置來(lái)定制應(yīng)用程序。最重要的是,我們不必?fù)?dān)心Kubernetes規(guī)范語(yǔ)言的復(fù)雜性,Helm能支持Atomic操作,能最大限度地降低應(yīng)用程序和集群風(fēng)險(xiǎn)。也就是說(shuō),Helm為我們提供了一個(gè)易于理解和隨時(shí)可使用的應(yīng)用程序包。

問(wèn)題是,Helm有哪些新的應(yīng)用功能?

在2019年底,我們看到Helm v3正式發(fā)布,其中刪除了集群側(cè)組件(Tiller)和其他一系列功能。在2020年底,Helm v2被廢止,大多數(shù)chart已經(jīng)遷移到v3格式。如果你還在使用Helm v2,一定要合理分配時(shí)間,在近期規(guī)劃升級(jí)。

在過(guò)去的幾個(gè)版本中,Helm團(tuán)隊(duì)一直忙于解決Helm用戶經(jīng)常抱怨的問(wèn)題,即YAML模板使用問(wèn)題。Helm新增的另一個(gè)完整的功能是后期渲染功能,可以允許我們使用Kustomize等工具時(shí)自定義chart。

最后,但并非最不重要的是,2020年,我們還見證了向更分散方向發(fā)展的chart管理方式的轉(zhuǎn)變,并推出了公共Helm Charts的中央存儲(chǔ)庫(kù)。

Helm有很多優(yōu)勢(shì),但有有一個(gè)最大的弊端,那就是應(yīng)用程序的定制化能力僅限于預(yù)先存在的配置選項(xiàng)。不僅如此,還得用模板化的方式實(shí)現(xiàn)這些自定義選項(xiàng),非常繁瑣,而Kustomize可以彌補(bǔ)這一劣勢(shì)。

Kustomize

kustomize 是一個(gè)更方便我們基于模版進(jìn)行配置和自定義的工具,允許開發(fā)者將Kubernetes應(yīng)用構(gòu)建分成一系列的層和補(bǔ)丁,并且具有無(wú)限廣闊的定制化能力。

Kustomize使用基于YAML的Kubernetes感知的補(bǔ)丁格式來(lái)添加/刪除/更新應(yīng)用清單的任何部分。Kustomize在1.14版本上已成為了kubectl的一個(gè)組成部分,你所要做的就是執(zhí)行kubectl -k來(lái)調(diào)用它。

簡(jiǎn)單理解,Kustomize是一個(gè)更強(qiáng)大的應(yīng)用工具,它能最大化賦予我們修改Kubernetes應(yīng)用程序的權(quán)限。但同樣,Kustomize也有不足之處,那就是無(wú)形中加大了開發(fā)者的學(xué)習(xí)曲線。另外,無(wú)限制的定制意味著錯(cuò)誤配置應(yīng)用程序的可能性增加。

關(guān)于Kustomize,有一個(gè)使用Helm的新功能,那就是通過(guò)post-render功能來(lái)修補(bǔ)現(xiàn)有的Helm chart缺陷,并且不需要分拆,能讓版本升級(jí)變得更加無(wú)縫。

目前,Kubernetes生態(tài)系統(tǒng)中的許多工具都已經(jīng)嵌入了Kustomize,如ArgoCD、Flux和Kubestack編排和持續(xù)部署工具。如果你搜索類似Kustomize的補(bǔ)丁功能,會(huì)看到很多新功能已經(jīng)存在于你的CD工具中。

尤其作為新手開發(fā)者,如果不熟悉Kubernetes構(gòu)建過(guò)程,就可以考慮使用Kustomize作為一個(gè)獨(dú)立的CLI工具。

Skaffold

創(chuàng)建Kubernetes原生應(yīng)用程序,通常要花很長(zhǎng)的時(shí)間跨注冊(cè)中心構(gòu)建和管理容器映像、手動(dòng)更新Kubernetes清單文件,以及每次進(jìn)行哪怕極小的代碼更改都要重新部署其應(yīng)用程序。如何通過(guò)創(chuàng)建一個(gè)專有工具來(lái)自動(dòng)執(zhí)行這些任務(wù),而不是重復(fù)管理編輯-調(diào)試-部署這樣一個(gè)步驟。于是,Skaffold由此誕生了。

Skaffold遵循DevOps最佳實(shí)踐,即在SDLC中保持開發(fā)環(huán)境和工作流的一致性。Skaffold為開發(fā)者帶來(lái)了工作流和持續(xù)集成(CI)和持續(xù)部署(CD)能力,可以幫助企業(yè)快速構(gòu)建和部署Kubernetes應(yīng)用。

在構(gòu)建部分,Skaffold可以利用Dockerfiles、Buildpacks、Bazel,甚至是自定義腳本,實(shí)現(xiàn)快速構(gòu)建目標(biāo)。而在部署時(shí),基于Skaffold模板引擎,可以調(diào)用kubectl、Helm或Kustomize,實(shí)現(xiàn)應(yīng)用的快速落地。

在2020年,Skaffold團(tuán)隊(duì)專注于各種工作流程的適配,努力其他工具更具互操作性。包括在CI/CD和GitOps方面的能力賦予,以及對(duì)Python和Java提供更好的支持。

此外,Skaffold現(xiàn)在有一個(gè)新的測(cè)試版--skaffold debug。基于新版本應(yīng)用,Skaffold會(huì)嘗試在自動(dòng)配置應(yīng)用程序時(shí)可進(jìn)行遠(yuǎn)程調(diào)試。

總結(jié)

總之,當(dāng)你看到關(guān)于Kubernetes的各種應(yīng)用工具無(wú)從下手時(shí),請(qǐng)不必糾結(jié)。不妨先看看Kubernetes的主流應(yīng)用工具,沒準(zhǔn)已經(jīng)能滿足您的業(yè)務(wù)需求。比如通過(guò)使用Helm,我們可以打包、共享和安裝定義好的Kubernetes應(yīng)用。而使用Kustomize使用補(bǔ)丁,可以修改現(xiàn)有的Kubernetes應(yīng)用。同時(shí),Skaffold也是一個(gè)很受歡迎的工具,可以更好地管理Kubernetes環(huán)境。 

 

責(zé)任編輯:趙寧寧 來(lái)源: IT168網(wǎng)站
相關(guān)推薦

2015-07-23 10:07:22

PHPPHP開發(fā)Docker

2015-09-15 16:10:45

PythonPython 開發(fā)Docker

2011-12-29 17:09:08

開發(fā)者沙龍

2014-04-08 09:58:26

PythonPython教程

2013-11-06 09:18:44

異構(gòu)計(jì)算移動(dòng)計(jì)算高通

2024-02-01 09:37:42

Kubernetes服務(wù)網(wǎng)格? 命令

2016-03-25 09:29:24

Apple開發(fā)工具開發(fā)者

2023-08-28 13:34:00

KuberneteIDP安全

2015-11-18 19:03:27

開發(fā)者Linux容器

2015-11-19 14:48:01

LinuxLinux容器虛擬機(jī)

2019-11-14 14:44:32

開發(fā)者工具

2015-10-13 09:24:24

Chrome開發(fā)者工具

2025-06-16 07:35:00

云原生Kubernetes開發(fā)

2013-11-13 07:19:19

2021-08-01 22:59:16

Python工具開發(fā)

2023-11-30 15:30:19

Python編程語(yǔ)言

2010-10-19 11:14:06

點(diǎn)贊
收藏

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

主站蜘蛛池模板: 狠狠综合久久av一区二区老牛 | 在线播放国产一区二区三区 | 欧美1区| 超碰日本 | 剑来高清在线观看 | 日韩欧美视频免费在线观看 | 日韩在线精品 | 天天插天天操 | 欧美一区二区大片 | www.一区二区 | 国产视频欧美 | 在线中文字幕第一页 | 99久久婷婷国产综合精品电影 | 成人在线不卡 | 天天干天天谢 | 日本黄色免费视频 | 国产精品极品美女在线观看免费 | 午夜影院中文字幕 | 日韩欧美国产综合 | www.97zyz.com| 日韩精品免费在线 | 99精品99| 日本三级日产三级国产三级 | 九九久久精品视频 | 在线观看国产视频 | 在线观看第一区 | 亚洲综合久久精品 | 男女羞羞视频网站 | 国产精品久久久久一区二区三区 | 亚洲网站在线观看 | 国产精品成人一区二区 | 91亚洲欧美| 久色| 日韩欧美国产一区二区三区 | 99re免费 | 成人免费视频网站在线看 | 成人在线视频观看 | 一区二区三区在线免费观看 | 99久久婷婷国产综合精品首页 | 91精品国产91久久久久游泳池 | 性做久久久久久免费观看欧美 |