本篇文章是一個入門文章,主要探討 GitOps 相關的起源與概念,同時介紹不少關於 GitOps 的工具
起源: Weaveworks 於 2017 年針對 Kubernetes 的工作環境產生了不同的部署方式,而 GitOps 這個詞也就那時開始萌芽發展
概念: 透過 Git PR 的方式來驗證與自動的部署所有與系統有關的修改。今天有任何部署的需求時,團隊要做的事情就是 1) 產生 Git PR 2)進行 Review 3) 合併 接者就是等任何修改被自動部署
Git 於整個環節中扮演者 Single Source of Truth 的角色,所有的修改都必須發生於 Git 本身,也因為是基於 Git 來使用,所以不論是 GitHub, Gitlab, Bitbucket, Gerrit 等系統都可以使用。
註: Bitbucket 還針對 GitOps 這種形式取了一個名為 BDDA 的名稱,意義為 Build-Diff-Deploy-Apply
好處:
1. 稽核性: 透過 Git 可以針對所有的修改去查閱,知道誰於什麼時間點進行什麼修改
2. 由於不需要將 Kubeconfig 等資源放到外部叢集,資安方面會比傳統外部直接Push/Apply 來得更好
3. 開發人員可以更容易地去部署應用,不需要仰賴Ops幫忙
4. ...etc
註: GitOps 並不是只能適用於 Kubernetes 本身,事實上整個系統架構都可以套用這種方式,譬如搭配 Terraform 等相關的 IaC 工具時,就可以透過 GitOps 來搭建整個系統,包含底層架構,k8s叢集以及最重要的應用程式
相關工具(文章列出滿多工具):
1. ArgoCD
2. Atlantis: Terraform PR 的自動化工具
3. Autoapply
4. CloudBees Rollout
5. FlexCD
6. Helm Operator
7. Flagger
8. Ignite
9. Faros
10. Gitkube
11. Jenkins X
12. KubeStack
13. Weave Cloud
14. Werf
15. PipeCD
https://medium.com/searce/gitops-the-next-big-thing-for-devops-and-automation-2a9597e51559
同時也有1部Youtube影片,追蹤數超過8萬的網紅Top movie picks,也在其Youtube影片中提到,#神力女超人1984 #蓋兒加朵 #WW84 在全世界都在等待疫情結束之下 今年的聖誕年尾強檔神力女超人1984總算上映 超興奮的立喆為了越洋記者會熬夜爬文歷年來的資料 撰寫問題準備來問蓋兒女神一些問題 結果.....卻.... 在現場還找了資深的記者洪文一起告訴大家這部為什麼是DC續集大作! P...
jenkins介紹 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
這篇文章要介紹的是 Jenkins Operator 這個有趣的應用程式,Operator 的概念先前有不少文章再探討其架構與意義,因此本篇文章會專注於 Jenkins Operator 這個應用程式能夠為 Jenkins 的環境與應用帶來什麼樣的變化。
首先本文開始前,要先準備三個東西
1. Kubernetes Cluster
2. Helm 安裝環境
3. 一個放有你 Jenkins pipeline 與 script 的 SCM(Source Code Management),通常都是 Git
接下來作者透過 Helm 安裝了 Jenkins Operator 該控制器到 Kubernetes 內並且準備了相關的 CRD 用來控制 Jenkins.
範例中的 CRD 主要會做兩件事情
1. 設定 Jenkins 本身,包含要安裝哪些 Plugin 等
2. SeedJobs: 可以將外部 SCM 內所描述的 Job 內容給直接設定到 Jenkins 內
當該 CRD 給套用到 Kubernetes 後,該 Jenkins Operator 就會幫忙初始化整個 Jenkins 以及相關的 Plugin。最後將 SeedJobs 內所描述的資訊給整合到 Jenkins 中來創建相關的 Job.
透過這整個 CRD 操作帶來的好處我認為有
1. 整個過程盡量減少手動操作,全部都依賴 Yaml 與 Pipeline 等程式碼的方式去維護
2. 與 Kubernetes 整合,對於熟悉 Kubernetes 的操作人員來說,學習過程不會太痛苦。
3. 把 Jenkins 變得稍微簡單一些,一些繁瑣過程讓 Jenkins Operator 去操作
我自己看完後,目前看到的壞處有
1. Jenkins 功能太多,生態系太複雜,我懷疑這種 Operaotr 只是一時的專案,沒有一直保持更新的話一定會有些功能終究還是要手動操作
2. 設定的內容我認為不如 Jenkins 生態系中的 Configuration as Code 這套 Plugin 來的專業與強大
3. Job 的設定部分我個人還是偏好使用 Jenkins Job Builder 這套基於 YAML 的解決方案來管理與定義全部
結論:
1. 我個人是當作一個新東西看看,但是不會有想要嘗試的慾望,因為覺得事情其實沒有變得簡單多少,甚至擔心引入一個半成品,導致多一個東西要維護..
https://medium.com/swlh/introduction-to-jenkins-operator-f4cb7ebc2e0b
jenkins介紹 在 軟體開發學習資訊分享 Facebook 的最讚貼文
🔥 udemy 黑色星期五全站特價中
本課程來自 Get into DevOps 的部落格作者,適合希望了解更多有關 DevOps 工作方式以及如何使用最流行的 DevOps 工具建構持續交付管道的人。
本課程的第一部分將向你介紹基本的 DevOps 概念,如持續交付、持續佈署和通過頻繁反饋循環的持續改進。你將學習設計現代測試環境的關鍵原則,以及如何通過提高團隊的自主性來提高交付團隊的生產量。我們還將討論用來在軟體團隊中建立 DevOps 能力的 The DevOps Teacher 模型。
知道為什麼要實施 DevOps 工作方式後,你將學習如何 – 本課程的第二部分是關於 DevOps 工具的實踐教學。 你將學習使用 15 種最流行的 DevOps 工具在現代雲端平台上實現自動化、基礎架構即程式碼 ( Infrastructure as Code ),和自助服務界面的基礎知識。
https://softnshare.com/get-into-devops-masterclass/
jenkins介紹 在 Top movie picks Youtube 的最佳貼文
#神力女超人1984 #蓋兒加朵 #WW84
在全世界都在等待疫情結束之下
今年的聖誕年尾強檔神力女超人1984總算上映
超興奮的立喆為了越洋記者會熬夜爬文歷年來的資料
撰寫問題準備來問蓋兒女神一些問題
結果.....卻....
在現場還找了資深的記者洪文一起告訴大家這部為什麼是DC續集大作!
PS.立喆同時扮演了兩個裝扮喔!
訂閱【電癮好選喆Top movie picks】https://goo.gl/3S03OY
簡立喆主播臉書 https://goo.gl/cUWJx7
按個讚,最新訊息不漏接!
jenkins介紹 在 持續整合工具Jenkins 介紹與安裝 - Ellis's Blog 的相關結果
Jenkins 是一個持續整合(Continuous Integration, CI)的web-based 伺服器,提供了實行持續整合的基礎設施。因為設計上擁有極高的擴充性與彈性並且 ... ... <看更多>
jenkins介紹 在 Jenkins 介紹 - iT 邦幫忙 的相關結果
Jenkins 介紹. 成功在managed node 安裝好Jenkins 後,我們就可以開始利用Jenkins 實現產品的持續整合了。 Jenkins 是什麼? 持續整合、持續交付(CI/CD) 的觀念在近幾 ... ... <看更多>
jenkins介紹 在 30 天入門Ansible 及Jenkins - GitBook 的相關結果
Jenkins 是什麼? 持續整合、持續交付(CI/CD) 的觀念在近幾年來越來越被開發人員所重視。透過CI/CD 概念的實踐,我們可以針對每一次產品的修改,或是週期性地對產品 ... ... <看更多>