久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何實現規模化的Kubernetes CI/CD 流水線

148次閱讀
沒有評論

共計 3305 個字符,預計需要花費 9 分鐘才能閱讀完成。

本篇文章為大家展示了如何實現規模化的 Kubernetes CI/CD 流水線,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

一、背景

在近幾年,Kubernetes 迅速成為了容器編排的事實上的開源標準。與虛擬機不同,Kubernetes 在抽象化基礎架構的同時可靠地大規模編排容器,這可以幫助開發人員將工作負載與基礎架構的復雜性分開。Kubernetes 是 CI/CD 自動化的理想選擇,因為它提供了許多內置功能,這些功能使應用程序部署實現標準化和可重用,提高了開發人員的生產力,并加快了云原生應用程序的采用。

Platform9 是成立于 2013 年的云服務提供商,能夠提供業界唯一由 SaaS 管理的混合云解決方案,使用戶能夠快速采用云技術并在私有部署或公共云中的任何基礎架構上一致地管理 VM、Kubernetes 和無服務器功能。Platform9 提供的 Kubernetes 解決方案也是業界的佼佼者。

在 2019 年巴塞羅那舉行的 KubeCon + CloudNativeCon 大會上,Platform9 與 1000 多名與會者進行了互動,有近 500 名與會者參與了 Kubernetes 的相關調查。下圖列出了關于最常見的 Kubernetes 應用場景的調查結果:

如何實現規?;?Kubernetes CI/CD 流水線

其中,基于 Kubernetes 的 CI/CD 自動化是最為廣泛的用例,專注于幫助開發人員更快地構建和交付應用程序。但是,在具有全自動和可重復的 CI/CD 流水線的生產環境中運行 Kubernetes(k8s)以及持續的安全檢查會帶來新的挑戰,包括集成的復雜性,持續的產品更新 / 回滾、自運維、生命周期管理等等。 

解決這些挑戰并沒有想象中的困難,本文將介紹 Platform9 如何利用 JFrog 的產品在 Kubernetes 上快速實現 CI/CD 自動化并將其推廣到整個組織的方法。

二、使用 Artifactory 和 Helm 的 5 步 Kubernetes CI / CD 流水線

在 Platform9 提供的方案中,JFrog Artifactory 作為微服務的 Docker 注冊表(或多個注冊表),是構建 CI/CD 流水線不可或缺的一部分。同時,使用 Artifactory 作為 Helm Chart 存儲庫,進一步使該制品管理倉庫能夠提供將容器部署到 k8s 集群所需的所有集成資源。

Artifactory 還可以作為遠程依賴的代理倉庫,例如 npm、Maven、Gradle 和 Go 等,實現安全的 Kubernetes 注冊表,使您能夠跟蹤系統中端到端的內容、依賴關系,以及與其他 Docker 鏡像的關系。

如何實現規?;?Kubernetes CI/CD 流水線

5 步實現 Kubernetes CI/CD 流水線:

·  步驟 1. 使用 Artifactory 中代理的注冊表來開發微服務。生成的應用程序包可以是.war 或.jar 文件;

·  步驟 2. 在 Ubuntu 上使用 Tomcat 和 Java- 8 創建 Docker 框架作為基礎鏡像。將此鏡像推送到 Artifactory 中的 Docker 注冊表中,JFrog Xray 也會對其進行掃描,以確保安全性和許可證合規性。

·  步驟 3. 通過將.war 或.jar 文件添加到 Docker 框架中,為微服務創建 Docker 鏡像,將該鏡像推送到 Artifactory 中的 Docker 注冊表中,并通過 Xray 對其進行掃描。

·  步驟 4. 為微服務創建 Helm Chart,并將其推送到 Artifactory 中的 Helm 存儲庫。

·  步驟 5. 使用 Helm Chart 將微服務從安全的 Docker 注冊表部署到 Kubernetes 集群。

在上述流水線當中,除了負責制品倉庫管理,Artifactory 還可以提供質量的可審核性,因為它捕獲了整個 CI/CD 流程中產生的所有大量有價值的元數據,包含:

·  構建和環境信息

·  模塊的依賴關系

·  CI 服務器,如 Jenkins,提供的相關信息

·  發布模塊及其依賴的詳細許可證分析

·  發布歷史信息等

使用 Artifactory,可以跟蹤負責生成應用程序層(例如 WAR 文件)的 CI 任務,該應用程序層是 Docker 鏡像層的一部分。通過比較兩次構建,可以顯示構建之間的差異,從而輕松跟蹤哪個構建發布到了 Docker 鏡像的哪個層,近而繼續跟蹤到代碼的提交。

三、流水線特性解析

3.1 JFrog Artifactory 和 Xray 確保軟件交付的自動化

Artifactory 是一個通用的制品倉庫管理平臺,無論組織中的微服務在哪里運行,它都可以滿足所有 CI/CD 的需求。Artifactory 通過提供完全的 Docker 兼容性,使開發人員能夠將容器化的微服務部署到 Kubernetes 集群中。將應用程序包推送到 Artifactory 倉庫后,您可以在開發、測試和發布階段繼續驗證和升級您的容器,最后將其部署到 Kubernetes 中的生產集群。如之前的分析,Artifactory 還為所有應用程序包提供了完整的可審核性和可追溯性。

JFrog Xray 對 Docker 鏡像執行深度遞歸掃描,并識別所有層和依賴項中的安全漏洞。它還會檢查以確保所有軟件組件的許可證均符合組織的策略。這有助于阻止易受攻擊且不合規的軟件投入生產。而且,Xray 提供的持續掃描能力,可以確保發現新問題或更改策略時的持續安全性。

3.2 Helm Charts 使 CI/CD 工具部署自動化

一旦您的 Kubernetes 基礎架構啟動并運行,Kubernetes Helm 便使您能夠通過輕松安裝、更新和刪除來快速可靠地配置容器應用程序。它為開發人員提供了一種打包應用程序并與 Kubernetes 社區共享的工具。它使軟件供應商只需按一下按鈕即可提供其容器化的應用程序。通過一個命令或單擊幾下鼠標,用戶就可以為開發測試或生產環境安裝 Kubernetes 應用程序。大多數流行的 CI/CD 工具集都可以通過 Helm chart 獲得。

Platform9 應用目錄為 Helm 圖表提供了易于訪問的按鈕式部署。您可以使用 App Catalog UI 來選擇和部署您喜歡的 CI/CD 流水線工具(例如,Jenkins、Spinnaker、Artifactory、Xray 等)。您可以搜索,一鍵部署或配置它。(圖三) 

如何實現規?;?Kubernetes CI/CD 流水線

四、Platform9 的托管 Kubernetes 服務消除了操作復雜性

如果您要解決的主要業務問題,與提高開發人員的生產力,將軟件更快地推向市場,以及在生產環境中運行可靠的應用程序有關,那么您是否值得花時間處理運維 Kubernetes 的麻煩和復雜性?您是否擁有人員和技能來工作和運維大型 Kubernetes 集群? 

運維您自己的大規模 Kubernetes 基礎架構令人生畏。錯誤選擇的后果是持久的,并且會影響應用程序的可用性、性能和敏捷性。雖然在短期內內部構建解決方案可能會更便宜,但您的設計質量可能較低,或者存在一些缺陷。這些缺陷在您投入生產后才會意識到,從而最終會花費更多的錢。

雖然安裝和管理 Kubernetes 不會推動業務向前發展,但快速為客戶部署新的應用程序和版本卻可以。對于開發人員,Kubernetes 的最終用戶,平臺可用性是關鍵。他們不在乎是誰建造它或如何建造它的:他們只是想動手實踐它,并使其運轉良好。

盡管開發人員不關心集群的實現細節或其運維狀態,但是仍然需要有人進行運維工作以確保集群是最新、健康且安全的。Platform9 管理您的 Kubernetes 環境,為您提供全自動運維,并在裸機、VMware、公共云或邊緣節點上實現 99.9%的 SLA。這使您的 DevOps 團隊可以騰出時間專注于重要的事情:通過更快地構建更好的應用程序來響應客戶需求。(圖四)

如何實現規模化的 Kubernetes CI/CD 流水線

通過上述 Platform9 推薦的解決方案來看,基于 JFrog 的 Artifactory 和 Xray,結合 Helm Chart,能夠方便、快捷、清晰地搭建適用于規?;?Kubernetes 集群的 CI/CD 自動化流水線。該方案在保證應用構建和交付的快速、安全、可重復的同時,還能為所有交付的應用提供完整的可審核性和可追溯性。

上述內容就是如何實現規?;?Kubernetes CI/CD 流水線,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注丸趣 TV 行業資訊頻道。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-25發表,共計3305字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 静宁县| 衡水市| 盐边县| 沈阳市| 长丰县| 即墨市| 会东县| 红安县| 沁阳市| 如皋市| 两当县| 天柱县| 青州市| 历史| 余干县| 三河市| 太康县| 陵水| 汝州市| 宜良县| 长乐市| 雅安市| 广灵县| 喀喇沁旗| 汶川县| 武安市| 桑植县| 永福县| 昆明市| 衡东县| 兰考县| 远安县| 石棉县| 自贡市| 汶上县| 凌海市| 和田市| 邛崃市| 兰溪市| 双柏县| 彩票|