偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Kubernetes 原生 CI/CD 管道入門(mén)

云計(jì)算
為 Kubernetes 設(shè)置 CI/CD 具有挑戰(zhàn)性。在此博客中,作者介紹了使用 Devtron 創(chuàng)建 k8s 原生 CI/CD 管道的過(guò)程。
為 Kubernetes 設(shè)置 CI/CD 具有挑戰(zhàn)性。在此博客中,作者介紹了使用 Devtron 創(chuàng)建 k8s 原生 CI/CD 管道的過(guò)程。

為 Kubernetes設(shè)置CI/CD 管道很復(fù)雜。設(shè)置后,當(dāng)您的團(tuán)隊(duì)和基礎(chǔ)架構(gòu)快速增長(zhǎng)時(shí),管理 CI/CD 會(huì)變得非常具有挑戰(zhàn)性。高效且完全自動(dòng)化的 CI/CD 在確保您更快地交付功能方面發(fā)揮著重要作用。通過(guò)利用 CI/CD,您可以保證應(yīng)用程序團(tuán)隊(duì)更快地交付功能,同時(shí)確保代碼庫(kù)的最佳實(shí)踐。

在這篇微博中,我們將看到使用 Devtron 創(chuàng)建和管理 CI/CD 管道是多么容易,但在此之前,讓我們快速回顧一下 CI/CD。

什么是 CI/CD?

CI 代表“持續(xù)集成”,這是我們驗(yàn)證和測(cè)試開(kāi)發(fā)人員推動(dòng)的更改的階段。它是您運(yùn)行所有測(cè)試用例的地方,即單元測(cè)試和集成測(cè)試。在我們驗(yàn)證和測(cè)試代碼庫(kù)之后,我們可以在此步驟中構(gòu)建軟件工件;例如,我們可以構(gòu)建一個(gè)容器鏡像,或者它可以是一個(gè)二進(jìn)制可執(zhí)行文件。

CD 代表“持續(xù)交付”,即您在自動(dòng)化過(guò)程中將軟件工件推送到生產(chǎn)/暫存環(huán)境。在這種情況下,在構(gòu)建容器鏡像并將其推送到容器注冊(cè)表后,我們?cè)?Devtron 的幫助下將相同的鏡像部署到 Kubernetes 集群中。

什么是 Kubernetes 原生 CI/CD?

Kubernetes 本機(jī) CI/CD 通過(guò)成為 Kubernetes 集群的一部分來(lái)利用軟件交付工作流。使用 Kubernetes 原生 CI/CD 的好處是您的構(gòu)建步驟將在 pod 內(nèi)發(fā)生,您不需要為 CI 在外部配置或連接任何其他計(jì)算資源。從安全角度來(lái)看,建議使用此方法,因?yàn)槲覀兯械臋C(jī)密和外部憑證都在集群中。

Kubernetes 原生 CI/CD 與 Devtron

當(dāng)您使用 YAML 管理管道時(shí),您需要編寫(xiě)工作流并反復(fù)更新它。了解 YAML、檢查構(gòu)建過(guò)程、學(xué)習(xí)不同的 Linux 命令、手動(dòng)部署代碼以及學(xué)習(xí) Kubernetes 對(duì)開(kāi)發(fā)人員來(lái)說(shuō)都很難。他們需要直觀、簡(jiǎn)單且不需要領(lǐng)域?qū)I(yè)知識(shí)的東西。即使您不太了解 Kubernetes,您也應(yīng)該能夠開(kāi)發(fā)、執(zhí)行和觸發(fā)您的構(gòu)建和部署。

這就是我們?cè)噲D使用 Devtron 解決的問(wèn)題。它為您提供了一個(gè)直觀的儀表板,可幫助您在 Kubernetes 上快速設(shè)置和管理 CI/CD 管道。讓我們安裝 Devtron 并為我們的應(yīng)用程序設(shè)置一些 CI/CD 管道。

Devtron 的安裝請(qǐng)參考安裝文檔。安裝 Devtron 后,我們將端口轉(zhuǎn)發(fā) Devtron 服務(wù)以獲取儀表板 URL,因?yàn)槲覀儗⑺惭b在本地機(jī)器上。

kubectl -n devtroncd port-forward service/devtron-service 8000:80 &

在此之后,您應(yīng)該能夠訪問(wèn) 上的 Devtron 儀表板localhost port 8080。

為了演示 CI/CD 管道,讓我們使用Devtron 在 GitHub 存儲(chǔ)庫(kù)上提供的nodejs 演示應(yīng)用程序。

得到這個(gè)之后,你需要為你的應(yīng)用程序設(shè)置全局配置。要設(shè)置全局配置,請(qǐng)參閱文檔。

第 1 步:?jiǎn)⒂?GitOps

要啟用 GitOps,請(qǐng)轉(zhuǎn)到全局配置,然后使用任何 Git 提供程序進(jìn)行身份驗(yàn)證。在我們的案例中,我們使用了 GitHub。建議為所有 GitOps 配置創(chuàng)建一個(gè)新的 GitHub 組織。

第 2 步:創(chuàng)建應(yīng)用程序

現(xiàn)在讓我們繼續(xù)在 Devtron 上創(chuàng)建我們的第一個(gè)應(yīng)用程序。提供應(yīng)用程序名稱(chēng),即demo-application,為其分配一個(gè)項(xiàng)目devtron-demo,即,然后單擊Create App。

第 3 步:添加 GitHub 存儲(chǔ)庫(kù)和構(gòu)建配置

下一步是添加托管源代碼的 Git Repo URL。如果要部署私有存儲(chǔ)庫(kù)中的應(yīng)用程序,請(qǐng)瀏覽Git 帳戶(hù)文檔。

現(xiàn)在,一旦我們?cè)O(shè)置了存儲(chǔ)庫(kù),我們就需要設(shè)置構(gòu)建配置。構(gòu)建配置是拉取和推送容器鏡像所必需的。您可以更改注冊(cè)表以使用 docker、ECR、GCR 等,這些可以從Global Configurations 下的容器注冊(cè)表進(jìn)行配置。

我們現(xiàn)在已經(jīng)集成了Buildpacks它,您可以直接從您的代碼構(gòu)建符合 OCI 標(biāo)準(zhǔn)的容器鏡像。

如果你想構(gòu)建一個(gè)特定于平臺(tái)的鏡像,那么你可以在Build Configurations.

第 4 步:配置基礎(chǔ)部署模板

基礎(chǔ)部署模板是所有魔法發(fā)生的地方。Devtron 顯示了一個(gè)細(xì)粒度的配置,抽象出所有 Kubernetes 配置的復(fù)雜性并將模板打包在一個(gè) helm chart 中。部署模板包含生產(chǎn)級(jí)微服務(wù)所需的幾乎所有主要配置,并帶有兩個(gè)顯示選項(xiàng)——基本(GUI 模式)和高級(jí)(YAML 配置)。

您可以配置ContainerPort、設(shè)置Requests & Limits部署、提供Environment Variables等。還有一個(gè)高級(jí)選項(xiàng),您可以從中獲取詳細(xì)的 YAML 配置,Devtron 將在部署期間使用這些配置并覆蓋它們。下面是部署模板的概覽。

只需在預(yù)定義模板中進(jìn)行一些調(diào)整,您就可以配置Horizontal Pod Autoscaling、Ingress、Security Context、Keda Autoscaling以及Volume Mounts更多 Kubernetes 配置。使用 Devtron 的部署模板,您不必?fù)?dān)心為您的 Kubernetes 配置編寫(xiě)大量的 YAML 文件。

第 5 步:創(chuàng)建和觸發(fā) CI/CD 管道

配置部署模板后,您就可以構(gòu)建 CI/CD 工作流了。讓我們繼續(xù)配置持續(xù)集成。要了解有關(guān)創(chuàng)建管道的不同方式的更多信息,請(qǐng)隨時(shí)閱讀工作流編輯器文檔。在此示例中,我們將從 Devtron Dashb 構(gòu)建和部署

現(xiàn)在,讓我們創(chuàng)建CI Build Pipeline并配置管道詳細(xì)信息。在 CI 管道中,您可以配置vulnerabilities scanning, pre/ post build stages, 給source typeie, Branch Fixed, Regex, Pull Request 或 Tag Creation 來(lái)構(gòu)建圖像,等等。

現(xiàn)在在創(chuàng)建構(gòu)建管道之后,讓我們創(chuàng)建Deployment Pipeline. 使用+同一頁(yè)面上的圖標(biāo)添加您的部署管道。使用 Devtron,您可以根據(jù)需要?jiǎng)?chuàng)建任意數(shù)量的管道,無(wú)論是順序管道還是從同一構(gòu)建部署到多個(gè)環(huán)境。

Deployment Pipeline您可以在pre/ post deployment stages其中配置開(kāi)箱即用的集成deployment strategies,即 Rolling、Recreate、Blue-Green 和 Canary。它還允許您為同一應(yīng)用程序中的不同環(huán)境選擇不同的部署策略。默認(rèn)部署策略Rolling如下圖所示。

在這篇博客中,我們將繼續(xù)Blue-Green deployment strategy。您可以檢查部署策略配置并根據(jù)您的用例進(jìn)行更改。此配置更改適用于所有其他部署策略。

配置 CI 和 CD 管道后,整個(gè)管道如下所示。我們可以為不同的環(huán)境創(chuàng)建具有不同配置的多個(gè)工作流程,并在同一應(yīng)用程序中構(gòu)建類(lèi)型。

是不是很有趣!!

現(xiàn)在管道已創(chuàng)建,我們需要觸發(fā)我們的管道,為此我們必須轉(zhuǎn)到 部分Build & Deploy。

要構(gòu)建圖像,請(qǐng)單擊Select Material->Select the Commit您要構(gòu)建的圖像 -> 單擊Start Build。

構(gòu)建啟動(dòng)后,我們可以檢查構(gòu)建過(guò)程的日志,當(dāng)構(gòu)建成功時(shí),我們可以在工件部分驗(yàn)證構(gòu)建的圖像。它還允許您檢查以前的構(gòu)建,以及儀表板中所需的所有必要審計(jì)信息,如下圖所示。

讓我們觸發(fā)部署管道。select image構(gòu)建流水線成功后,頁(yè)面會(huì)有一個(gè)選項(xiàng)Build & Deploy。選擇圖像,然后單擊“部署”。我們還可以檢查啟動(dòng)部署所針對(duì)的提交和安全詳細(xì)信息。部署開(kāi)始后,Devtron 會(huì)為您提供所有階段的詳細(xì)信息以及針對(duì)每個(gè)部署的 K8s 配置。同樣在 CD 管道中,我們獲得了有關(guān)部署的所有審計(jì)信息,如下圖所示。

第 6 步:應(yīng)用詳情

部署應(yīng)用程序后,您可以在App Details. 可以從選項(xiàng)卡輕松監(jiān)控有關(guān)您的工作負(fù)載和應(yīng)用程序指標(biāo)的所有健康相關(guān)信息App Details。

成功部署應(yīng)用程序后,它會(huì)為您提供有關(guān)應(yīng)用程序的所有信息的 360 度視圖,并允許您執(zhí)行不同的 pod 操作,例如view logs、exec into terminal、check manifests,events還附帶Logs Analyzer允許 grep 多容器日志。它還以分組方式顯示與特定應(yīng)用程序關(guān)聯(lián)的所有 Kubernetes 資源,這對(duì)于調(diào)試和可觀察性非常方便。

結(jié)論

在此博客中,我們了解了 Kubernetes CI/CD 以及如何使用 Devtron 在短短 3 分鐘內(nèi)輕松設(shè)置所有最佳實(shí)踐和 GitOps。快速 Kubernetes CI/CD 設(shè)置的主要好處之一是它可以通過(guò)自動(dòng)化構(gòu)建和持續(xù)測(cè)試代碼庫(kù)來(lái)加快整個(gè)發(fā)布過(guò)程。開(kāi)發(fā)人員無(wú)需手動(dòng)構(gòu)建和測(cè)試??焖佟⒖煽亢透咝У?Kubernetes CI/CD 將帶來(lái)更好的產(chǎn)品和更快樂(lè)的用戶(hù)。

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2022-02-22 09:00:00

軟件開(kāi)發(fā)CI/CD 管道工具

2021-07-02 16:30:01

CICDDevOps

2020-12-15 16:13:21

DevSecOpsCICD

2023-01-30 15:55:08

2023-02-19 15:28:39

CI/CD 管道集成開(kāi)發(fā)

2022-05-19 09:00:00

安全CI/CD工具

2021-05-13 18:23:53

Tekton云原生Kubernetes

2023-05-24 16:20:39

DevOpsCI/CD 管道軟件開(kāi)發(fā)

2018-08-24 09:00:00

DevOps持續(xù)集成連續(xù)部署

2019-07-25 10:31:55

AWSDevOps架構(gòu)

2023-04-18 08:17:11

GitLab持續(xù)集成

2021-08-31 09:00:00

開(kāi)發(fā)Azure DevOp集成

2021-06-09 05:44:45

云原生 CICD

2021-05-18 08:00:00

Kubernetes容器進(jìn)程

2021-03-31 09:00:00

管道集成工具

2021-01-21 06:06:30

Jenkins分支管道CI

2020-10-21 14:10:28

工具測(cè)試開(kāi)發(fā)

2021-09-26 09:26:46

開(kāi)發(fā)安全CICD管道

2024-11-06 14:40:18

2021-07-28 13:23:32

CICD管道安全漏洞
點(diǎn)贊
收藏

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