国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

企業案例:Zadig 為什么能用的爽

開發 開發工具
IT 領域的演變,就是運維人員通過不斷向上接手開發人員眼中“跟開發無關的雜活”,來不斷為開發人員減負。開發人員在得到了解放后,可以將視角更多的聚焦在自己開發的業務系統上,釋放出自己的創造力。但是運維人員也要不斷的優化現有的基礎設施架構,以及構建簡單易用的平臺化工程來給開發人員使用。平臺化工程或許是未來 CI/CD 的一個趨勢和演進方向吧。

?傳統 CI/CD 處理的問題

說到 CI/CD 的工具,IT 圈內名聲最響亮的可能就會是傳統的老牌 CI/CD 的王者之一:Jenkins。說到它基本上 IT 人都知道。在曾經云計算時代,乃至更久遠的時代,因為那個時候軟件架構還沒有拆分成微服務,很多都是主機部署。所以 Jenkins 靠著一套 Pipeline 和自由風格流水線,打遍天下無敵手。

Jenkins 之所以能夠這么縱橫宇內有很大的一部分原因就是:開放,CI/CD,使用簡單,能夠走完一整套交付流程。

開放:意味著有著開放包容的api和插件,能夠面臨各種場合。

CI/CD:意味著能夠完整的走完一整套交付,包含代碼的拉取,制品的生成存儲以及服務的部署。

但是隨著技術的不斷迭代,Jenkins 終將有一天不再適合新的環境。各位請繼續往下看嘞。

圖片

云原生時代 CI/CD 面臨的挑戰

在云原生時代,萬物皆可云原生。隨著微服務的盛行,業務邏輯的服務拆分,容器化的興起,編排容器逐步成為了業務主流規范。進入到這一階段,新的挑戰也就隨之而來。例如:

  • 以前服務少,Jenkins 能夠一把梭哈,現在服務多起來了,每個服務都要一個Jenkins Job,盡管都是一樣的邏輯,復制粘貼,但是數量多了也終將是一個麻煩事。如果十個,百個呢?
  • 現在每個服務都要用 Jenkins 去做 CI/CD,那么我要封裝很多的 pipeline,還有 Dockerfile,這種有規律的文件為什么不能抽象化,每次都要自己寫。
  • 每次使用都是通過 kubelet 加 shell 命令去做的構建部署,這樣合理嗎?
  • 環境眾多,開發、測試、預發、壓測、生產,每個項目總有那么最少兩三個環境吧,這個時候環境多了如何管理呢?
  • 通過 K8s 的標準編排,很多服務配置文件都會以 ConfigMap,Secret 的形式存在,不同環境的配置都會不一致,那么如何去做統一管理呢?
  • 研發人員的感知態如何做到?研發人員需要知道這個服務上了 K8s 是否啟動成功,包含日志,事件信息,部署 Job 是否成功。這些能提供嗎?
  • 發版服務的時候,如何才能合理管理版本呢?
  • 開發測試找你要環境,你該如何快速部署相應呢?

以上種種就是服務遷移 K8s 后所要面臨的部分問題。Jenkins 很好,但是在新趨勢的到來后,個人還是感覺心有力而力不足。

或許你會說可以使用 Jenkins+ArgoCD 來彌補相互之間的差距啊。但是我始終還是覺得,Jenkins+ArgoCD 并非是最理想的狀態。

Jenkins+ArgoCD

Jenkins 可以做 CI,ArgoCD 可以做 CD,兩者相輔相成,可以實現基本的 K8s 環境的 CI/CD。類似示例圖如下:

圖片

兩者結合固然是可以做到持續集成和持續發布的,但是我們還是要結合實際出發。我沒有說不好,只是具體還要看使用場景和能夠解決哪些問題。

現有很多 IT 公司都會有云資產,很多的正式環境都會放置在云端。這個時候就會有分歧——環境問題。

或許我開發測試使用本地機房,但是我云端因為是生產環境,會單獨獨立區分環境。那么按照環境區分原則,我會有 2 套環境,開發測試一套 Jenkins+ArgoCD,正式環境一套 Jenkins+ArgoCD。那么這個時候如果說公司對環境更為重視還會有預發,壓測環境,那么又是一套 Jenkins+ArgoCD。好家伙,幾套環境,上線一個服務都會在以上環境中乘以 3 的操作,直接帶來的感覺就是:

  • 效能降低
  • 環境治理困難
  • 服務配置文件難以管理

以上就是后續會面臨的問題,還有一些問題就是,通過 Jenkins+ArgoCD 僅僅只能做到 CI/CD,更多的呢,能夠做到嗎?這里好像還要打一個問號。

為什么 Zadig 用的爽?

Zadig 就是專門用來做效能的一款開源 CI/CD 平臺。我十分認可 Zadig 的使命:工程師是數字經濟最重要的資產,Zadig 讓工程師專注企業創新。他可以完美的解決我們遷移 K8s 后的一系列問題。如果加以規劃和使用,可以用如下流程圖來概括:

圖片

詳細部署圖如下:

圖片

通過一定的規劃后可以實現 CI/CD 環境,一套主導所有。

這個時候可以算下成本,假設你環境之間是這樣區分的:

其中正式環境 Jenkins 存在 slave 1 臺,4核16G 云主機,包月:412元/月

其中壓測,預發環境 Jenkins 存在 slave 1 臺,4核16G 云主機,包月:412元/月

開發測試環境,4 個 slave , 4 核 16G,本地機房虛擬機,共計消耗資源:16核,64G

如果統一了,那么降本增效不就出來了嗎?

這個時候可能有人會說,小伙子是托兒,哈哈別急,讓我慢慢道來。

Zadig 能解決企業數字化轉型的什么難題?

現有主機環境問題?

很多企業在轉型剛剛開始期間,或者說業務場景需要,會有部分業務存在容器部署。如果這個時候讓你遷移,肯定不會一股腦的往 K8s 上塞,會慢慢的進行優化,這個時候 Zadig 支持主機環境的CI/CD,并且依靠 K8s 的彈性資源,能夠根據需求創建 Job 執行構建部署任務,但是天下沒有什么最好,只有更好,如果你微服務是多實例可能還真有點問題。那就是需要創建 2 個 Job。

圖片

彌補 Jenkins Job 單服務 2 任務的情況(一個構建打包,一個部署,通過 Git 修改協調(ArgoCD))

如果客官您使用的是 ArgoCD 那么我相信你肯定是基于 GitLab 去做的,Jenkins 肯定是在正式環境有 2 個 Job,一個負責構建上傳鏡像,另一個就是拉取 Git 倉庫進行服務的更改。這個時候會顯得很冗余,那么 Zadig 提供良好的構建部署的劃分,只需要你運行工作流的時候輕輕點擊是否構建即可。

圖片

提供完善的分支,PR 構建

好的 CI/CD 產品肯定是會對 Git PR 去做相關的適配的,Zadig 同樣如此,能夠在沒有合并之前提前進行測試,無需完成合并。

圖片

環境復制,開發測試,提升效能

在微服務橫行的今天,很多時候指不定那天就同時接了好幾個需求去做,那么這個時候開發需要環境,測試需要環境,怎么保證環境不沖突呢?那就是給他們一個新環境,但是提供新環境需要投入人力成本進去,有沒有什么辦法快速構建一套環境出來開發測試,后續不使用的時候銷毀?

以前可能有點麻煩,但是隨著業務容器化加上 K8s 的彈性擴縮容,這個就很好實現了,只需要找到相應的鏡像,YAML 更新到新的 Namespace 就可以了,但是這還是不夠優雅。

Zadig 提供環境的全量復制操作,一鍵就是一個基準環境,配合 Istio 進行子環境測試,直接解放雙手,原地起飛。

Istio 子環境參考:自測聯調環境 | Zadig 文檔 [1]

圖片

環境托管功能,一個工作流,一個構建發布所有托管環境

同項目,一直迭代,每個環節的服務都是一樣的,為什么一定要區分開呢,通過相應的權限控制,一套構建,部署所有的服務不香嗎?

圖片

環境配置(Ingress,ConfigMap,Secret)

項目中的配置等也有著較好的管理空間,可以直接抽象成為一個變量,每個環節的配置不同,但是引用的配置名相同,就可以實現環境之間的平滑遷移,比如:

  • 上線中間件等連接依賴問題(ConfigMap  +  Service + Endpoint + CoreDNS)a. Service  ExternalNameb. Service None  +  Endpoints
  • 項目外部訪問接口問題(Ingress)
  • 中間件連接賬號密碼問題(Secret + env)

圖片

YAML,Dockerfile,Helm,服務構建模板管理

Zadig 有著良好的抽象能力,能夠直接優化比較重復的動作,就比如 CI/CD 經常遇到的鏡像 Dockerfile,YAML 等,通過抽象成為模板實現配置的統一和規范化管理。

圖片

YAML 模板化

圖片

Helm 模板化

這里偷懶沒搞,其實我不太熟 Helm

Dockerfile 模板化

圖片

構建配置模板化

我個人提供兩種思路:

  • 服務模板化:所有的服務配置一次構建,后續上線新的服務,構建鏡像的時候直接引用模板
  • 語言模板化:按照語言區分進行構建模板的抽象,構建模板主要信息如下:a. 構建產物所需要的應用,比如:Go,Java,NodeJSb. 構建產物所需要配置的命令

圖片


Harbor 整合,配合正式環境的發布

可以通過對 Harbor 的整合,實現不同環境的發布,就比如:正式環境只需要托管,無需配置其他的構建信息,工作流執行構建上傳到指定的 Harbor,正式環境不需要打包更新,直接更換鏡像制品。

圖片

版本管理(發版的 tag 交付物追蹤)

每個服務的 tag 制品發版管理,出現問題可快速回退相應的版本。

圖片

研發人員感知態

開發人員啟動發版工作流后,執行成功會有相關的 IM 推送,例如常見的:

  • 企業微信
  • 釘釘
  • 飛書

部署邏輯這里,需要等待相關的探針就緒之后才會讓工作流進入下一步。

拓展功能點

測試功能的原生接入

圖片

代碼掃描的支持

圖片

自定義工作流,連接萬物

如果前面還有沒能夠解決老板您的問題,可以嘗試用自定義工作流,自己編碼業務實現邏輯,然后通過自定義工作流實現。以下我就舉一個 RDS 慢日志查詢的例子。

圖片

如果說,正式環境使用了云上的數據庫,以阿里云為例,查詢慢日志。規范起見,開發人員是沒有阿里云賬號的,運維人員有,但是運維人員一般都會基于 RDS 做相關的慢 SQL 監控,如果有那么就需要去檢索慢 SQL 條目。

一般這個時候會不斷找運維同學提供,但是如果說可以通過一條工作流實現,那么運維同學的負擔就會降低,可以去做更多的事情。

圖片

以上是我提供的一個思路,當然自定義工作流可以使用的場景可不僅僅是這樣,還有更多的場景需要大家一起發掘,也希望大家能夠不斷的輸入場景給 Zadig。

CI/CD 可觀測性

CI/CD 可觀測性也是很核心的一點,它可以讓研發大佬清晰的知曉公司的研發效能如何,構建規律如何,測試情況如何。很多時候都能夠從這里讀出一些后續工作方向出來,Zadig 的這個概覽也是我十分喜愛的一個點,畢竟是自己打下的江山不是嗎?

圖片

總結

IT 領域的演變,就是運維人員通過不斷向上接手開發人員眼中“跟開發無關的雜活”,來不斷為開發人員減負。開發人員在得到了解放后,可以將視角更多的聚焦在自己開發的業務系統上,釋放出自己的創造力。但是運維人員也要不斷的優化現有的基礎設施架構,以及構建簡單易用的平臺化工程來給開發人員使用。平臺化工程或許是未來 CI/CD 的一個趨勢和演進方向吧。

參考鏈接

[1] https://docs.koderover.com/zadig/v1.15.0/env/self-test-env/

作者介紹

我叫唐啟濤。目前就職于廣州某公司,哈哈,剛剛入職沒有多久,然后崗位應該算是運維還是運維開發,我也不知道。因為我工牌是運維開發,但是我企業微信又是運維,不過這個不重要,以下是我作為一個“Zadig 過來人”帶來的一些使用分享、以及方案選型對比,希望對后續大家公司的 CI/CD 優化有所幫助。

責任編輯:武曉燕 來源: KodeRover
相關推薦

2012-05-15 09:07:27

App

2012-05-15 09:55:37

AppWeb蘋果

2020-09-02 15:00:36

Linux命令軟件

2023-09-14 13:23:42

Llama-2模型參數

2018-06-04 15:17:10

編程語言中文編程

2011-02-21 09:34:44

2022-08-26 08:00:19

企業架構IT

2011-03-09 17:20:43

SSL VPNVPN

2021-10-03 15:10:54

reduxsagaresolve

2017-08-31 17:43:06

云端遷移云計算

2023-05-05 16:26:33

2022-02-16 10:23:46

邊緣計算5G數據

2018-08-15 08:07:06

2018-06-08 15:27:59

云計算企業存儲

2022-07-12 08:27:18

Zadig開源

2012-04-17 12:34:44

Platform

2016-07-25 18:03:35

小企業大數據

2017-07-11 09:06:16

企業SD-WAN廣域網

2012-02-17 16:37:20

云計算
點贊
收藏

51CTO技術棧公眾號

爱情电影网av一区二区| www.色精品| 久久精品一区中文字幕| 天堂资源在线中文| 亚洲h在线观看| 日韩av在线中文| a级精品国产片在线观看| 亚洲欧美久久234| 久久精品成人| 久久精品99| 在线日韩中文| 国产区欧美区日韩区| 91久久高清国语自产拍| 国产suv精品一区二区| 国产三级精品三级在线观看国产| 久久激情视频久久| 日本一区精品视频| 欧美成年人在线观看| jizzjizzjizz亚洲| 99精品黄色片免费大全| 尤物yw午夜国产精品视频| 国产视频一区二区三区在线播放 | gogo人体一区| 国产成人免费视频网站高清观看视频 | 欧美另类女人| 久久国产一二区| 狠狠躁天天躁日日躁欧美| 不卡福利视频| 久久蜜桃av一区二区天堂| 国产www免费| 国产91丝袜在线观看| 国产午夜精品视频一区二区三区| 国内外成人在线| 欧美一级爱爱视频| 972aa.com艺术欧美| 色诱视频在线观看| 国产午夜精品一区二区三区嫩草 | 精品视频一区三区九区| 成人高清免费在线| 日韩黄色av网站| 久久婷婷五月综合色丁香| 久久免费高清视频| 久久在线免费| 日韩av高清在线播放| 成人午夜短视频| 黄色录像1级片| 欧美三级乱人伦电影| 国产日韩电影| 2021久久精品国产99国产精品| 国产大片一区| 国产精品无码专区av在线播放| 亚洲欧美日本伦理| 色天天综合久久久久综合片| 欧美裸身视频免费观看| 伊人精品久久| 日韩av观看网址| 日韩午夜在线电影| 日本福利视频在线观看| 国产精品视频一二三| 国产美女视频一区二区三区| 亚洲国产日韩欧美在线图片| 岛国精品一区| 国产综合 伊人色| 丁香五精品蜜臀久久久久99网站 | 欧美xxav| 亚洲欧洲精品一区| 国产精品国产三级国产普通话99| 资源视频在线播放免费| 亚洲精品久久视频| 黑丝美女一区二区| 综合久久国产| 欧美日韩精品在线播放| 国产91亚洲精品久久久| 亚洲一区二区三区乱码aⅴ| 国产成人日日夜夜| 日本在线视频1区| 最新亚洲国产精品| 韩国av一区| 黄色免费网址大全| 欧美videos中文字幕| 欧美黑人巨大videos精品| 一区二区三区四区免费视频| 亚洲一区二区欧美| av成人免费| 久久99精品久久久久久水蜜桃 | 日韩高清一区| 久久影院理伦片| 国产精品久久久一区麻豆最新章节| 快射视频在线观看| 国内精品在线一区| 久久99热这里只有精品| 一二三四社区在线视频| 久久精品视频va| 久久亚洲欧洲| 一级片免费在线观看| 麻豆成人在线看| 久久99国内精品| 又爽又大又黄a级毛片在线视频| 久久久视频精品| 国产精品456露脸| 国产一二三区在线观看| 国产精品老女人精品视频| 不卡高清视频专区| 国产拍在线视频| 日本午夜一区二区三区| 色网站国产精品| 日韩电影免费网站| 成人福利视频在| 久热精品视频在线| 成人深夜视频在线观看| 高清在线视频不卡| 日韩精品久久一区| 欧美性猛交xxxx黑人交| 久久国产亚洲| 国产特级毛片| 久久久亚洲福利精品午夜| 成人手机电影网| 97久久香蕉国产线看观看| 日韩色妇久久av| 欧美嫩在线观看| 亚洲精品一二| 日本不卡三区| 久热这里只精品99re8久| 欧美色图一区二区三区| 亚洲日本免费| 超碰个人在线| 亚洲精品一区二区三| 欧美一级高清片在线观看| 亚洲成色精品| 精品51国产黑色丝袜高跟鞋| 国产精品乱子乱xxxx| 欧美系列亚洲系列| 亚洲一区二区三区高清| 最新黄网在线观看| 一个色的综合| 亚洲精选一区二区| 国产精品一级片| 欧美黄色成人| 自拍偷拍 国产| 日韩美女免费线视频| 亚洲 欧美综合在线网络| 你懂的亚洲视频| 成人免费高清在线播放| 欧美日本国产精品| 亚洲精品国产综合久久| 成人免费观看av| 日韩视频在线直播| xxxxx国产| 91九色综合久久| 欧美色区777第一页| 日韩国产欧美一区二区三区| 涩涩av在线| 无码精品a∨在线观看中文| 欧美激情国产日韩精品一区18| 综合电影一区二区三区| 中文字幕一区二区三区在线视频| 麻豆传媒在线完整视频| 日韩国产精品毛片| 久久久久久九九九| 疯狂做受xxxx欧美肥白少妇| 老牛嫩草一区二区三区日本| 国产一区一一区高清不卡| 欧美成年人视频在线观看| 成人精品一区二区三区电影免费| 欧美精品九九99久久| 国产成人免费视频网站 | 黑人一区二区| 91黄页在线观看| 爱情岛论坛vip永久入口| 成人在线中文字幕| 4438x亚洲最大成人网| 国产99精品视频| 亚洲人成网亚洲欧洲无码| 成人18在线| 影音先锋成人资源网站| 国内伊人久久久久久网站视频| 色综合久久精品| 丁香五精品蜜臀久久久久99网站| 国产va免费精品观看精品视频 | 神马影院午夜我不卡影院| www.豆豆成人网.com| 中文字幕在线免费观看| 在线视频欧美一区| 隔壁老王国产在线精品| 欧美无人高清视频在线观看| 国产91高潮流白浆在线麻豆| 国语产色综合| 2022成人影院| 美女网站在线观看| 黄色高清视频网站| 国产福利成人在线| 日韩一级免费一区| 国产精品卡一卡二| 免费在线成人网| 嫩草国产精品入口| 亚洲综合影视| 国产成+人+亚洲+欧美+综合| 欧美精品一区二区三区四区五区| 久久久人成影片一区二区三区观看| 欧美精品成人一区二区三区四区|