DevOps是什么

Fanly 2019-08-21 14:46:32
问答

DevOps是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

DevOps(Development 和 Operations 的组合词)是一种重视“软件开发人员(Dev)”和“IT 运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

DevOps

传统的软件组织将开发、IT 运营和质量保障设为各自分离的部门,在这种环境下如何采用新的开发方法(例如敏捷软件开发),是一个重要的课题。按照从前的工作方式,开发和部署,不需要 IT 支持或者 QA 深入的跨部门的支持;而现在却需要极其紧密的多部门协作。而 DevOps 考虑的还不止是软件部署,它是一套针对这几个部门间沟通与协作问题的流程和方法。

需要频繁交付的企业可能更需要对 DevOps 有一个大致的了解。Flickr 发展了自己的 DevOps 能力,使之能够支撑业务部门“每天部署 10 次”的要求,如果一个组织要生产面向多种用户、具备多样功能的应用程序,其部署周期必然会很短。这种能力也被称为持续部署,并且经常与精益创业方法联系起来。从 2009 年起,相关的工作组、专业组织和博客快速涌现。

DevOps 的引入能对产品交付、测试、功能开发和维护(包括──曾经罕见但如今已屡见不鲜的──“热补丁”)起到意义深远的影响。在缺乏 DevOps 能力的组织中,开发与运营之间存在着信息“鸿沟”──例如运营人员要求更好的可靠性和安全性,开发人员则希望基础设施响应更快,而业务用户的需求则是更快地将更多的特性发布给最终用户使用。这种信息鸿沟就是最常出问题的地方。

以下几方面因素可能促使一个组织引入 DevOps:

  • 使用敏捷或其他软件开发过程与方法
  • 业务负责人要求加快产品交付的速率
  • 虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍
  • 数据中心自动化技术和配置管理工具的普及
  • 有一种观点认为,当前占主导地位的“传统”美国式管理风格(“斯隆模型 vs 丰田模型”)会导致“烟囱式自动化”,从而造成开发与运营之间的鸿沟,因此需要 DevOps 能力来克服由此引发的问题。

DevOps 经常被描述为“开发团队与运营团队之间更具协作性、更高效的关系”。由于团队间协作关系的改善,整个组织的效率因此得到提升,伴随频繁变化而来的生产环境的风险也能得到降低。

0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • 企业级 DevOps

    企业级DevOps是什么

    企业级DevOps涉及一系列要求,提供实现每个任务自动化的手段。以一种有利于促进稳定性和可用性的方式大规模执行任务。帮助公司随变化实现扩展,从而确保技术可以应对额外增长,比如一个为处理平均流量设置的网络应用。
  • KubeSphere

    KubeSphere,基于Kubernetes的开源企业级容器管理平台

    KubeSphere是一个基于Kubernetes的开源企业级容器管理平台,提供多租户管理、应用部署、服务网格集成、DevOps支持、日志监控等功能,旨在简化容器化应用的部署与管理。它通过友好的用户界面和强大的功能集,降低了Kubernetes的学习曲线,适合寻求简化容器管理和加速数字化转型的各规模企业。
  • Kubernetes Lens Mirantis Lens

    Mirantis Lens,针对Kubernetes设计的开发管理工具

    Mirantis Lens是一款针对Kubernetes设计的高效管理工具,提供了直观的可视化界面,支持多集群管理、实时监控与日志查看、资源管理等功能。它简化了Kubernetes的复杂性,使开发者和DevOps工程师能够高效地管理和监控集群。Lens的用户友好设计、强大的功能和跨平台支持使其成为管理Kubernetes环境的理想选择,适合各种规模的项目和团队。
  • Gitea

    Gitea,开源的轻量级代码托管软件

    Gitea是一个开源、轻量级的代码托管解决方案,特别适用于个人开发者、小团队和中小企业。它主打简易安装、高效性能和直观的Web界面,提供Git仓库托管、代码审查、问题跟踪等核心功能。Gitea支持细粒度的用户权限管理,且易于配置和扩展。与GitHub、GitLab等平台相比,Gitea在自主部署和资源效率方面具有明显优势,是寻求简洁、可控制代码管理工具用户的理想选择。
  • Bitbucket

    Bitbucket,支持Git和Mercurial版本控制的代码托管网站

    Bitbucket是一款适合各种规模团队的代码管理工具,特别适用于重视私有仓库和Atlassian产品集成的用户。它提供免费私有仓库、高效代码审查和自动化CI/CD管道,用户界面直观。虽面临竞品如GitHub和GitLab的挑战,但在私有仓库和某些集成方面表现更佳,尤其适合初创公司和小型团队,同时满足大型企业的复杂需求。
  • GitLab

    GitLab,基于git的开源代码管理平台

    GitLab是一个全面的DevOps平台,提供源代码管理、CI/CD、项目管理和安全性功能。它以集成化解决方案和高度自定义性脱颖而出,适合各种规模的软件开发团队。其界面友好、文档齐全,特别适合寻求高效、安全开发流程的团队。GitLab的开源性质和强大社区支持确保了其在DevOps工具中的竞争力。