一年一度的鐵人賽又開賽了,這次跟又跟幾個好朋友們組了一個奇怪的戰隊,兩個 DevOps 領域加上三個 AI/ML 領域一起努力的於這30天產出共 150 篇技術好文。
這次鐵人賽想要跟大家分享如何使用 Rancher & Rancher Fleet 來嘗試不同方式 GitOps 解決方式。
Rancher Fleet 相對於現有知名的 Flux/ArgoCD 最特別的我想莫過於其客製化應用程式的方式,其不但同時支援 Helm 與 Kustomize 這兩種格式,更可以讓兩者同時運作來達到最大客製化。
試想一下想要針對一些第三方 Helm Chart 進行客製化但是對方 values 又沒有開放時該怎麼辦,這時候就可以透過 kustomize 透過 patch 的方式來動態加入檔案或是修改欄位。
唯一遺憾的是 Rancher v2.6.0 開賽前一天才正式發布,試玩了一下不是說非常穩定,因此這30篇文章還是會基於 v2.5.9 來介紹。
歡迎舊雨新知有興趣的都可以追蹤,相關文章之後也都會發佈到自己的部落格上
https://ithelp.ithome.com.tw/users/20120317/ironman/4034
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「argocd」的推薦目錄:
- 關於argocd 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
- 關於argocd 在 矽谷牛的耕田筆記 Facebook 的最佳解答
- 關於argocd 在 矽谷牛的耕田筆記 Facebook 的精選貼文
- 關於argocd 在 コバにゃんチャンネル Youtube 的精選貼文
- 關於argocd 在 大象中醫 Youtube 的精選貼文
- 關於argocd 在 大象中醫 Youtube 的精選貼文
- 關於argocd 在 Argo CD 的評價
- 關於argocd 在 Argo CD - Declarative continuous deployment for Kubernetes. 的評價
- 關於argocd 在 Application not showing in ArgoCD when applying yaml 的評價
argocd 在 矽谷牛的耕田筆記 Facebook 的最佳解答
ref: https://medium.com/geekculture/kubestack-a-must-use-117a32efd427
本篇文章要介紹的是一個基於整合 IaC 的 GitOps 開源專案 Kubestack
過往探討到 GitOps 時總是會圍繞如何透過有效的管理與部署 Kubernetes 上的應用程式,譬如 ArgoCD, Flux, Rancher Fleet 等。
當然 GitOps 本身也是一個沒有標準做法的文化與概念,自行透過 Gitlab, Git 等方式也是有辦法實作出相同概念的解決方式。
而 Kubestack 則是一個專注於 Kubernetes 本身的 GitOps 解決方案,而非一般來探討的應用程式。
其本身的架構是基於 Terraform 之上, 因此 Kubestack 本身也自行實作了屬於自己的 Terraform Provider 讓所有對 Terraform 的使用者可以更快上手與使用。
雲端整合方面, Kubestack 整合了 AKS,EKS,以及 GKE,這意味使用者可以輕鬆地透過 Kubestack 來創建這些由雲端企業管理的 Kubernetes 叢集。
除了雲端之外, Kubestack 也支援本地機器的 Kubernetes 叢集,其透過 KIND 的方式於本地端架設一個簡易的模擬環境,可以讓使用者再將修改給合併到真正的 Git 時先行於本地端進行測試,確保一切都沒有問題才會合併。
本文後半部分是一個手把手的教學範例,示範如何透過 Kubestack 來玩耍,同時也提到官網也有滿直覺的教學跟介紹,對於如何使用 GitOps/Terraform 來管理 AKS/GKE/EKS 的使用者也許可以參考看看這個專案
argocd 在 矽谷牛的耕田筆記 Facebook 的精選貼文
本篇文章是一個入門文章,主要探討 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
argocd 在 Argo CD - Declarative continuous deployment for Kubernetes. 的推薦與評價
Blogs and Presentations. Awesome-Argo: A Curated List of Awesome Projects and Resources Related to Argo · GitOps Without Pipelines With ArgoCD Image Updater ... ... <看更多>
argocd 在 Argo CD 的推薦與評價
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Argo UI. Why Argo CD? Application definitions, configurations, and environments should ... ... <看更多>