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同步以进行身份验证。还需要设置安全性和合规性措施,以确保基础结构保持安全。
更新和验证服务器:检查以确保您的服务器是最新版本的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/