DevOps即服務(DaaS)使團隊能夠將其工具和工作流集中到一個統一的解決方案中。該解決方案通常包含所有必需的DevOps流水線功能,這些功能將替代舊版工具。本文介紹了DaaS的工作原理(包括優缺點),以及一個示例,展示了如何從Azure DevOps Server遷移到云中的Azure DevOps。
什么是DaaS?
DaaS是一項基于云的托管服務,可提供統一的DevOps工具鏈。連續集成/連續交付(CI/CD)流水線所需的所有或大多數工具都收集在一個平臺中。然后在專門的DevOps專業人員的支持下向團隊提供此平臺。
DaaS的目標是使組織能夠專注于開發和交付軟件,而不必擔心管理或維護工具。它旨在抽象化工具集成,部署和維護的復雜性。這使團隊可以專注于更高級別的任務,并將大量的人工工作外包。
DaaS可以為中小企業提供企業級基礎架構和工具,而無需雇用更多員工或建立廣泛的專業知識。相反,這些企業可以依靠DaaS提供商的經驗來為其創建,部署和優化流水線。創建這些管道是為了直觀并促進所有團隊成員的順利協作。
DaaS的優缺點
如果希望將開發流程遷移到云,可以使用幾種遷移策略。其中之一涉及將現有工具作為微服務移至云資源,然后將其集成。另一種可能是廢棄現有工具并采用DaaS。無論哪種情況,都需要了解DaaS的優缺點,然后才能為組織做出正確的選擇。
DaaS的優點:
- 托管服務可讓專門的DevOps工程師獲得支持,專業知識和優化。
- 供應商團隊在各種組織和行業中都有豐富的經驗,可以根據經驗定制解決方案。
- DaaS團隊可以提供指導和指導,以幫助團隊提高自己的技能。這使團隊可以從其他人的錯誤中學習,并防止重復犯錯。
DaaS的缺點:
流水線管理和可用性的重要性要求與可靠的服務提供商合作,并確保零到最小的中斷。
外包基礎架構需求,并提供對源代碼以及其他敏感數據和系統的訪問。這可能會導致無法控制的安全風險。
DevOps團隊仍需要了解正在實施的工具以及如何管理和使用這些工具的基礎。
托管服務的成本通常比自我實現的流水線要高,而且內部IT責任的減少可能無法抵消這些成本。
DevOps Cloud遷移示例:從Azure DevOps服務器遷移到云中的Azure DevOps
Azure DevOps Server(以前稱為Team Foundation Server(TFS))是在本地托管的服務器,可以構建DevOps流水線。雖然基于與Azure云中提供的服務相似的服務,但它要求管理和維護基礎結構,并為配置提供有限的支持。
通過遷移到云,可以將許多基礎架構職責外包,而專注于生產高質量的軟件。Azure DevOps Services是可以使用的部分托管DaaS的示例。
以下是有關如何從DevOps Server傳輸數據和項目的簡要指南。本指南改編自Microsoft提供的完整DaaS指南。
準備:規劃遷移需要清點一下當前使用工具的方式,需要遷移哪些數據以及遷移將如何影響生產率。還需要確定是否需要其他許可證。對于此步驟以及后續步驟,可以使用一個工具來協助進行此過程。
配置先決條件:在遷移流水線數據之前,需要設置一些先決條件。應將本地Active Directory(AD)與Azure AD同步以進行身份驗證。還需要設置安全性和合規性措施,以確?;A結構保持安全。
更新和驗證服務器:檢查以確保您的服務器是最新版本的Azure DevOps Server。如果仍在使用TFS,則可能意味著一系列更新。完全更新后,可以使用遷移器工具來驗證每個項目的集合數據庫。如果發現任何錯誤,則需要在此階段修復這些問題。
準備好云資源:消除所有錯誤之后,就可以開始準備要導入的云資源了。這需要分配,激活和映射DevOps Services訂閱。還需要通過遷移器工具為導入設置生成模板。這些設置應保存在“導入規范”文件中。最后,需要在要使用DevOps Services的數據中心中創建一個容器實例。
遷移流水線:在完成所有準備階段和計劃階段之后,就可以遷移工作負載了。在此階段,應該首先運行測試導入,以確保所有配置正確,并且導入過程順利進行且沒有數據損壞。這有助于確保不會造成不必要的停機時間。
如果測試運行順利,則可以繼續導入數據。上傳后,需要分配組織名稱,設置賬單并將本地構建服務器重定向到新的云資源。完成后,可以恢復操作并直接從云中開始操作流水線。
結論
DaaS通常不僅是集中式平臺,而且還是具有一定級別的支持和優化的托管服務。如果缺少DevOps的人才和工具,DaaS可以填補這一空白,甚至可以幫助團隊學習DevOps技能。
但是,由于要對DaaS進行流水線選擇控制,因此需要進行調查和研究。為DaaS提供訪問源代碼和安全性的權限。在簽訂合同之前,請確保該服務值得信賴并符合標準。
原文鏈接:
https://devops.com/devops-as-a-service-migrating-your-entire-devops-stack-to-the-cloud/