首頁 >科技週邊 >人工智慧 >什麼是Gitops?自動化基礎架構管理的簡單指南

什麼是Gitops?自動化基礎架構管理的簡單指南

Joseph Gordon-Levitt
Joseph Gordon-Levitt原創
2025-03-01 10:08:09549瀏覽

gitops:自動化基礎架構和LLMS的應用程序部署

>您可能遇到了用於自動化應用程序和模型部署的DevOps和MLOP。 現在,讓我們探索Gitops,一個將DevOps原則擴展到基礎架構自動化的框架。這篇文章詳細介紹了Gitops,其重要性,不同的模型以及其集成到大型語言模型(LLM)項目中。

[

]

What is GitOps? A Simple Guide to Automating Infrastructure Management

>由作者

圖像 >通過我們的簡短課程增強您對DevOps和Mlops的理解:DevOps概念和MLOPS概念。

了解gitops

gitops是一種操作框架,通過將配置視為代碼(基礎架構為代碼或IAC)來自動化基礎架構管理。 它利用版本控制,協作,合規性,CI/CD和可觀察性(CORE DEVOPS TENETS)進行一致可靠的基礎架構提供,尤其是在雲環境中。 與使用源代碼的開發人員一樣,操作團隊在GIT存儲庫中使用配置文件來確保部署一致。

基本gitops工作流程組件:

  1. > git存儲庫:存儲應用程序源代碼和基礎結構配置文件。
  2. >連續交付(CD)管道:自動化建築物,測試和部署應用程序和基礎架構的更改。 >
  3. >
  4. >應用程序部署工具:確保基於GIT存儲庫配置的正確且有效的應用程序部署。
  5. 監視系統:>跟踪系統可靠性的應用程序性能和健康。

gitops vs. DevOps vs. Mlops devops gitopsmlops定義結合了軟件開發和IT操作,以縮短開發生命週期。 > >將DEVOPS原理應用於機器學習模型開發和部署。 > >自動化和改善軟件開發,測試和部署。 > 通過基於git的工作流程自動化基礎架構和應用程序部署。 >自動化ML模型開發,部署和生命週期管理。 IAC,聲明性配置,連續對帳,版本控制模型版本控制,模型監視,可重複性,連續培訓和部署>工具和技術jenkins,github動作,Terraform,Ansible,docker,kubernetes> argo cd,flux,kubernetes,helm,terraform,github動作mlflow,kubeflow,tensorflow擴展(tfx),sagemaker,氣流>用例>軟件開發,應用程序部署,雲本地應用程序。 管理雲基礎架構,kubernetes部署,自動配置更新。 ML模型培訓,部署,監視和再培訓管道。 >自動化基礎架構提供,配置管理和應用程序部署。 >自動化ML模型培訓,驗證,部署和監視。 用於軟件和應用程序配置的版本控制的代碼庫。 git是基礎架構狀態和配置的真理的單一來源。 > ML模型,數據集和培訓管道的版本控制。 > CI/CD Integration >具有自動測試,構建和部署管道的核心原則。 支持IAC,但更多地關注應用程序部署。 監視和觀察 通過gitops控制器(如Argo CD)進行連續監視和自我修復。 專注於模型性能監控,數據漂移檢測和重新訓練觸發器。 >轉向聲明性基礎架構,在大環境中縮放複雜性。

為什麼選擇gitops?

>傳統的手動基礎架構管理不足以現代云環境。 Gitops提供彈性可靠的基礎架構,從而可以快速,一致地部署。它可以最大程度地減少手動錯誤,提高效率並確保基礎架構和應用之間的同步。

密鑰gitops優點:

  1. >版本控制:所有更改均在git中控制,促進回滾和審核。
  2. 改進的協作:使用熟悉的Git Workfrows有效地合作。
  3. 提高可靠性:聲明配置啟用自動系統狀態恢復。
  4. 自動化:減少了手動干預和人為錯誤。
  5. 安全性: git的提交歷史記錄增強了安全性和可追溯性。
基於拉的基於推動的gitops

>

存在兩個主要的Gitops模型:基於拉的基於拉力和推動。

基於拉動的(典型的gitops): gitops操作員(Flux,argo cd)監視GIT存儲庫進行更改。檢測到更新後,它將拉出配置並將其應用於目標環境。 該模型包括漂移檢測和自我修復。

> >基於推動的(使用CI/CD工具):

諸如GitHub操作之類的工具將更新推向Commit上的群集。 它缺乏連續的對帳,漂移檢測和自動回滾,但更容易實現。

將Gitops集成到LLM項目 >本節使用基於推動的Gitops方法採用GITHUB動作進行簡單。 我們將將GITOPS原則應用於LLM應用程序部署項目(類似於“如何使用Docker部署LLM應用程序”教程。

[

]

>

來源:如何使用Docker部署LLM應用程序:逐步指南

What is GitOps? A Simple Guide to Automating Infrastructure Management >

考慮我們的課程,

使用MLOPS Mindset開發生產的機器學習模型,用於有效的模型培訓,維護和縮放。 項目結構:

:應用程序代碼,依賴項(),dockerfile。

:kubernetes配置(例如,
  • app/)。 requirements.txt
  • :使用GitHub Action(
  • infra/)的CI/CD自動化 dev/ staging/ github操作工作流程:production/
    1. 開發人員將代碼和配置委託給GitHub。
    2. > CI Pipeline(ci.yaml):構建Docker映像,可選地推動它並運行測試。
    3. cd pipeline(cd.yaml):使用kubectl applyhelm upgrade
    4. kubernetes群集已更新。
    >基於推動的gitops:優點和權衡

    優點:

      >簡單:僅需要github動作。
    • >一站式商店:github動作處理建築物,測試和部署。
    • >
    權衡:

      不是真正的基於拉的:缺乏連續的和解。
    • >
    • 無漂移檢測:手動群集修改不會自動恢復。
    • >
    • 安全性:需要仔細處理github秘密中的群集憑據。
    >過渡到基於拉的模型

    >

    >對於較大的項目或更多要求的要求,基於拉的模型(Argo CD,Flux)提供自我修復,連續的對帳和視覺儀表板。

    結論

    >從gitops開始,逐漸結合其技術。從Docker,然後是Kubernetes開始,然後是基於推動的Gitops方法(GitHub動作)。 最後,過渡到基於拉力的模型,以實現生產水平的穩定性。 這種分階段的方法最大程度地提高了Gitops對雲原生應用的好處。 對於AI初學者,請考慮我們的AI基礎知識技能。

>
>將DEVOPS原則應用於使用GIT作為真理的單一來源的基礎架構管理。 >主要焦點
關鍵原理 協作,CI/CD,IAC
>
>自動化範圍 >自動化應用程序構建,測試和部署到生產中。
版本控制> >
>高度集成了CI/CD管道以自動化基礎架構更新。 與CI/CD集成,但需要專門的ML管道進行連續培訓和驗證。 基礎架構MGMT
>通過版本控制的配置管理基礎架構。 支持ML基礎架構,並管理模型實驗和漂移。 通過記錄,監視工具可觀察性。
挑戰 文化轉變,協作,工具鏈整合複雜性。 高基礎架構的複雜性,數據管理挑戰,與DevOps管道集成。

以上是什麼是Gitops?自動化基礎架構管理的簡單指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn