本篇文章是一個入門文章,主要探討 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
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「weaveworks gitops」的推薦目錄:
- 關於weaveworks gitops 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
- 關於weaveworks gitops 在 矽谷牛的耕田筆記 Facebook 的最佳解答
- 關於weaveworks gitops 在 コバにゃんチャンネル Youtube 的最佳解答
- 關於weaveworks gitops 在 大象中醫 Youtube 的最佳貼文
- 關於weaveworks gitops 在 大象中醫 Youtube 的最讚貼文
- 關於weaveworks gitops 在 weaveworks/weave-gitops - GitHub 的評價
- 關於weaveworks gitops 在 Weaveworks - Late last year the #GitOps Working Group was... 的評價
- 關於weaveworks gitops 在 weaveworks/vscode-gitops-tools - githubmemory 的評價
- 關於weaveworks gitops 在 Amazon, Codefresh, GitHub, Microsoft, and Weaveworks ... 的評價
- 關於weaveworks gitops 在 SourceRank 11 - Libraries.io 的評價
- 關於weaveworks gitops 在 GitOps - Flux 心得 的評價
- 關於weaveworks gitops 在 Argo examples github - KindredBio 的評價
weaveworks gitops 在 矽谷牛的耕田筆記 Facebook 的最佳解答
今天這篇文章探討的是 2020 十一月份於美國舉行的線上 Kubeconf & CloudNatvieConf 的一些內容整理,作者整理了五個有趣的議題,分別如下
# Platforms as Product: Self-service is essential
Platforms as Product 這個概念幾乎貫穿了整場 Kubeconf, 其中由 Dave Sudia's 帶來的 keynote 介紹了到底打造一個屬於自己的 k8s 平台會有哪些好處以及有哪些挑戰。
此外,如何打造一個給內部開發人員自治的 k8s 叢集也是一個有趣的議題,當愈來愈多的服務往 k8s 轉移時,對於開發人員來說,需不需要一個 k8s 來使用,這部分到底是由來負責維護與管理等都是一個有趣的問題。
另外最重要還是 Apple 的公開聲明,Kubernetes 的導入是一個進行式,其牽扯的範圍從軟硬開發人員,維運人員到其他如財政相關部門,所有的服務都即將採用 k8s 做為底層架構
video: https://www.youtube.com/watch?v=z3nFTi5-b3A&feature=youtu.be
# Safety and Speed: Move fast and don’t break things
這個類型的議題有非常多,譬如關於部署方面,就有非常多的討論都在探討要如何透過 GitOps 的架構來達到安全且快速的軟體更新。
此外,如何幫 k8s 叢集打造一個強韌且穩固的可觀測性平台也是一個議題,其中由 OpenTelemetry 這個組織所提倡的統一介面也是有諸多的聲浪,雖然該專案還在萌芽發展,但是有興趣的人還是要多關注一下這個專案
另外一個有趣的專案新專案 Troubleshoot.sh 其基於 kubectl plugin 的框架,提供一系列的工具幫助管理人員除錯與管理,最後提到的則是 Telepresence 這套除錯工具。
對於這系列工具有興趣的都可以玩看看
GitOps: https://kccncna20.sched.com/event/ekBA/gitops-is-likely-more-than-you-think-it-is-cornelia-davis-weaveworks
Troubleshoot.sh: https://troubleshoot.sh/
Telepresence: https://www.telepresence.io/
# DevSecOps: Security is a day 0 concern
Security 這個議題一直沒有停燒過,過去的 Kubeconf 就有非常多的討論關於如何強化 kubernetes 相關的安全性,從應用程式,資源管理,叢集本身到整個架構,處處都有安全性的問題需要考慮。
Open Policy Agent (OPA) 是一個非常頻繁出現的專案,透過 OPA 的框架其實可以做到非常多的事情,譬如 network policy 的檢查,相關 YAML 語意的比對,這些功能甚至都可以整合到 CI 的階段中,去幫忙檢查所有 Yaml 的設定是否符合公司的安全準則。
# Multi Cluster: The K8s future is connected
隨者基於 k8s 架設的平台數量愈來愈多,考量到跨國跨區服務等架構時,如何搭建出一個 Multi-Cluster 的 k8s 叢集也是一個炙手可熱的問題。
作者於演講中使用 K8s Initializer 這個工具來搭建一組由 GKE + Docker for Mac 所組合的 multi-cluster 叢集,對這方面有興趣的可以看看下列演講與這個工具。
K8s Initializer: https://app.getambassador.io/initializer/
video: https://kccncna20.sched.com/event/ekD9/multi-cluster-is-easier-than-you-think-with-linkerd-and-ambassador-thomas-rampelberg-buoyant-daniel-bryant-datawire?iframe=no
# End user focus: Learning and telling stories is important
整個 Kubeconf & CloudNativeConf 最大的訴求有兩個
1) 分享使用者的使用經歷
2) 幫助所有剛剛踏入 Cloud Native 的夥伴,讓他們在這條道路上能夠少走冤望路
我自己的觀察也符合這類型的需求,對於一個大型開源專案,很多時候火力展示反而不是最重要的,反而是如何茁壯這個開源社群。針對不熟悉的使用者提供一些方便的學習管道,讓他們更有辦法踏入這個社群,並且享受這些工具帶來的成果。同時透過分享已知的成功案例,讓那些還在思考與猶豫的群體能夠有一個定心丸,願意踏出第一步來嘗試看看 Cloud Natvie。
這場
weaveworks gitops 在 コバにゃんチャンネル Youtube 的最佳解答
weaveworks gitops 在 大象中醫 Youtube 的最佳貼文
weaveworks gitops 在 大象中醫 Youtube 的最讚貼文
weaveworks gitops 在 Weaveworks - Late last year the #GitOps Working Group was... 的推薦與評價
Late last year the #GitOps Working Group was founded and within days of the announcement more than 60 individuals from more the 30 companies ... ... <看更多>
weaveworks gitops 在 weaveworks/vscode-gitops-tools - githubmemory 的推薦與評價
Weaveworks GitOps Extension provides an intuitive way to manage, troubleshoot and operate your Kubernetes environment following the GitOps ... ... <看更多>
weaveworks gitops 在 weaveworks/weave-gitops - GitHub 的推薦與評價
Weave GitOps enables an effective GitOps workflow for continuous delivery of applications into Kubernetes clusters. It is based on CNCF Flux, a leading GitOps ... ... <看更多>