GitOps實操工具-Flux簡介

GitOps實操工具-Flux簡介

咱們相信,經過GitOps:git

  • 在git中描述你的整個系統狀態的聲明。包括: apps, config, dashboards, monitoring 和任何其它的內容。
  • 全部描述的均可以自動化。 使用 YAMLs 實現系統的強制一致性。你不須要運行 kubectl, 全部的改變都經過git進行。使用diff tools檢測觀測到的和指望的狀態的差異,以及獲得通知。
  • 推送代碼而不是容器。全部控制的內容都經過 pull requests。對於開發新手沒有學習曲線,他們只須要使用標準的git PR 過程。版本化的git容許你從任何的快照恢復系統,對於pull request的運維改變是透明的過程,修復產品的問題經過 pull request 來代替對運行系統的改變。
  • 譯註:
    • 可以將應用更容易地部署到不一樣的集羣之中,以及在多種環境下的測試。
    • 數據在系統重作的過程當中如何處理?恐怕會引發問題。
    • 切換過程當中的事務性,須要單獨進行處理,以保證ACID。

Flux是一個工具,自動保障git中的配置與集羣的配置狀態相匹配。 它在集羣中使用 operator觸發 Kubernetes中的部署,意味着你不須要獨立的 CD tool. 它監視全部的相關的 image repositories,檢測新的 images, 觸發deployments 而且更新到指望的運行配置。github

收益就是:你不須要受權CI 存取cluster, 全部的改變都是原子和事務性的。git 具備audit log,每一次事務要麼失敗要麼成功。你能夠徹底以代碼爲中心,而無需擔憂基礎設施的事情。golang

Flux是幹什麼的?

Flux是一個很是有用的交付工具,用於持續交付流水線的末端。Flux確保你的最新的容器鏡像和配置可以應用到集羣之中,並保持一致。app

特徵

主要特性包括:運維

與Weave Cloud的關係

Weave Cloud是Weaveworks提供的一個包含Flux的SaaS產品,包括:ide

  • 部署的UI和alerts:全部的 flux 操做能夠經過點擊便可。
  • 所有的可觀測和集羣透視:集羣監視面板,實時配置圖,用於跟蹤和分析集羣狀態。

關於Weave Cloud的更多信息,參考 its homepage工具

開始使用 Flux

Flux使用的相關文檔,以下:學習

開發者信息

Build documentation測試

Release documentationui

貢獻

Flux 採用典型的 PR workflow. 全部的貢獻代碼經過 PRs進行,需知足下面的指南。

指南

  • All code must abide Go Code Review Comments
  • Names should abide What's in a name
  • Code must build on both Linux and Darwin, via plain go build
  • Code should have appropriate test coverage, invoked via plain go test

除此以外,有幾個檢查機制會被應用,查看the lint script 獲取詳細信息。

獲取幫助

若是有任何關於 Flux 和持續交付有關的問題,請:

歡迎你的任何反饋!

相關文章
相關標籤/搜索