自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Kubernetes 原生 CI/CD 管道入門

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

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

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

什么是 CI/CD?

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

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

什么是 Kubernetes 原生 CI/CD?

Kubernetes 本機 CI/CD 通過成為 Kubernetes 集群的一部分來利用軟件交付工作流。使用 Kubernetes 原生 CI/CD 的好處是您的構建步驟將在 pod 內(nèi)發(fā)生,您不需要為 CI 在外部配置或連接任何其他計算資源。從安全角度來看,建議使用此方法,因為我們所有的機密和外部憑證都在集群中。

Kubernetes 原生 CI/CD 與 Devtron

當您使用 YAML 管理管道時,您需要編寫工作流并反復更新它。了解 YAML、檢查構建過程、學習不同的 Linux 命令、手動部署代碼以及學習 Kubernetes 對開發(fā)人員來說都很難。他們需要直觀、簡單且不需要領域專業(yè)知識的東西。即使您不太了解 Kubernetes,您也應該能夠開發(fā)、執(zhí)行和觸發(fā)您的構建和部署。

這就是我們試圖使用 Devtron 解決的問題。它為您提供了一個直觀的儀表板,可幫助您在 Kubernetes 上快速設置和管理 CI/CD 管道。讓我們安裝 Devtron 并為我們的應用程序設置一些 CI/CD 管道。

Devtron 的安裝請參考安裝文檔。安裝 Devtron 后,我們將端口轉發(fā) Devtron 服務以獲取儀表板 URL,因為我們將它安裝在本地機器上。

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

在此之后,您應該能夠訪問 上的 Devtron 儀表板localhost port 8080。

為了演示 CI/CD 管道,讓我們使用Devtron 在 GitHub 存儲庫上提供的nodejs 演示應用程序。

得到這個之后,你需要為你的應用程序設置全局配置。要設置全局配置,請參閱文檔。

第 1 步:啟用 GitOps

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

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

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

第 3 步:添加 GitHub 存儲庫和構建配置

下一步是添加托管源代碼的 Git Repo URL。如果要部署私有存儲庫中的應用程序,請瀏覽Git 帳戶文檔。

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

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

如果你想構建一個特定于平臺的鏡像,那么你可以在Build Configurations.

第 4 步:配置基礎部署模板

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

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

只需在預定義模板中進行一些調整,您就可以配置Horizontal Pod Autoscaling、Ingress、Security Context、Keda Autoscaling以及Volume Mounts更多 Kubernetes 配置。使用 Devtron 的部署模板,您不必擔心為您的 Kubernetes 配置編寫大量的 YAML 文件。

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

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

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

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

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

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

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

是不是很有趣??!

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

要構建圖像,請單擊Select Material->Select the Commit您要構建的圖像 -> 單擊Start Build。

構建啟動后,我們可以檢查構建過程的日志,當構建成功時,我們可以在工件部分驗證構建的圖像。它還允許您檢查以前的構建,以及儀表板中所需的所有必要審計信息,如下圖所示。

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

第 6 步:應用詳情

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

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

結論

在此博客中,我們了解了 Kubernetes CI/CD 以及如何使用 Devtron 在短短 3 分鐘內(nèi)輕松設置所有最佳實踐和 GitOps??焖?Kubernetes CI/CD 設置的主要好處之一是它可以通過自動化構建和持續(xù)測試代碼庫來加快整個發(fā)布過程。開發(fā)人員無需手動構建和測試??焖?、可靠和高效的 Kubernetes CI/CD 將帶來更好的產(chǎn)品和更快樂的用戶。

責任編輯:華軒 來源: 今日頭條
相關推薦

2022-02-22 09:00:00

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

2020-12-15 16:13:21

DevSecOpsCICD

2021-07-02 16:30:01

CICDDevOps

2023-01-30 15:55:08

2022-05-19 09:00:00

安全CI/CD工具

2023-02-19 15:28:39

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

2021-05-13 18:23:53

Tekton云原生Kubernetes

2023-04-18 08:17:11

GitLab持續(xù)集成

2019-07-25 10:31:55

AWSDevOps架構

2021-08-31 09:00:00

開發(fā)Azure DevOp集成

2018-08-24 09:00:00

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

2023-05-24 16:20:39

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

2021-05-18 08:00:00

Kubernetes容器進程

2021-06-09 05:44:45

云原生 CICD

2021-03-31 09:00:00

管道集成工具

2021-01-21 06:06:30

Jenkins分支管道CI

2021-07-28 13:23:32

CICD管道安全漏洞

2024-11-06 14:40:18

2023-05-09 16:20:54

藍綠部署CI/CD 管道自動化部署

2020-10-21 14:10:28

工具測試開發(fā)
點贊
收藏

51CTO技術棧公眾號