什么是 DevOps?

 

DevOps 是指与云计算数据中心生产中软件代码的开发和运维有关的广泛实践。DevOps 的核心是敏捷项目管理技术和微服务支持。DevOps 通过基于版本控制标准的自动化管理来处理整个软件开发生命周期。Git 是 DevOps 中最受欢迎的版本控制解决方案,其次是 Subversion (SVN) 和 CVS。DevOps 还包括软件生命周期的 CI/CD 要求管理、自动化代码测试、容器编排、云托管和数据分析。

DevOps 的优势

  • 敏捷团队项目管理:增强了网站和移动应用软件开发的管理。
  • 优化软件开发流程:通过持续集成和持续交付 (CI/CD) 功能实现。借助 CI/CD,公司可以通过代码更改快速推出新的软件功能特性,从而将新的创新技术推向市场。使用自动版本控制系统和容器简化 Web 服务器代码或应用脚本的升级。
  • 促进协作:Git 具有行项目回滚功能,有利于开发人员进行团队协作。
  • 通过自动化提高效率:CI/CD 通过企业编程工具、IDE 和第三方实用程序支持自动代码测试。DevOps 让采用它来管理软件开发生命周期的公司能够更好地自动化数据中心流程、Web 服务器调配、数据库管理、知识共享、部署调度和商业智能。

 

DevOps 实践

DevOps 实践集成在 Web 服务器堆栈的所有层,擅长将编程团队聚合在一起进行协作。CALMS 框架在 DevOps 团队的敏捷项目管理中很流行,是文化 (Culture)、自动化 (Automation)、精益 (Lean)、度量 (Measurement) 和共享 (Sharing) 的缩写。

  • “文化”要求尊重每个编程团队中程序员、开发人员和系统管理员的生活方式目标。
  • “自动化”贯穿整个软件开发生命周期,尤其是在代码的测试和部署或数据中心管理流程中。
  • “精益”是指在人才和设备调配方面的成本控制。
  • “度量”侧重于数据分析、实时监控和业务指标,以获取有关运维基准的反馈。
  • “共享”强调开源解决方案和代码对任何规模的企业或项目的益处。

 

DevOps 的历史

DevOps 是云计算时代 Web 开发与系统管理相结合的产物。软件即服务 (SaaS) 应用需要在生产和部署到云 Web 服务器时采用更为复杂的代码管理方法。容器编排和弹性 Web 服务器框架的开发在 DevOps 中一直非常重要。敏捷项目管理理念在 DevOps 中具有至关重要的意义。云负载均衡、Web 服务器创新和软件生命周期自动化都是 DevOps 的关键原则。在 DevOps 方面的最佳实践源自于计算机科学领域的学术研究、云计算数据中心技术的创新以及通过软件开发在全球最大的大型公司中实施的工业应用。

 

DevOps 的工作原理

DevOps 主要通过分散的开发人员团队来运维,这些开发人员团队在测试环境中通过其台式计算机或笔记本电脑来编写沙盒代码。使用版本控制软件的开发人员将代码更改推送到沙盒环境,在沙盒环境下,在整个提交过程中实施自动代码测试。对代码更改进行测试之后,将使用版本控制将这些更改从沙盒实时推送到 Web 服务器。在容器系统中,使用磁盘映像来调配 Web 服务器。Docker 桌面开发环境与版本控制相集成,通过可将完整堆栈 Web 服务器加载到容器中的完整磁盘映像打印,将代码发布到 Web 服务器。磁盘映像可以在 GitHub、GitLab、DockerHub、Quay 或其他服务上归档,以便在自动化容器编排框架(如 Kubernetes)中使用。

版本控制、CI/CD、知识共享、Web 服务器配置、数据中心自动化、代码测试、构件管理、网络监控和分析均被视为大型公司和其他复杂企业的专业编程和软件开发团队中所使用的 DevOps 实践的关键要素。

 

DevOps 与其他方法

除 DevOps 之外的其他方法包括敏捷项目管理、ArchOps、持续集成/持续交付 (CI/CD)、DataOps、WebOps 和 GitOps。与业务管理理念一样,这些术语中的每一个对项目管理和团队组织来说都有不同的侧重点。某些方法基于人才解决方案,其他方法则基于硬件和软件平台。统一的主题是云计算数据中心中软件代码的生产和运维,主要针对的是大型公司中大规模的网站和移动应用。

 

谁在采用 DevOps?

大多数《财富》500 强企业均已经采用了 DevOps 方法,因为它们被认为是业界最佳实践。规模最大的 IT 公司正在引领 DevOps 的发展,原因在于要优化公有云体系架构的运维。DevOps 基于计算机科学的学术研究和专业编程团队的企业软件开发的完美组合。DevOps 支持每个企业在软件开发和生产运维中节约成本和提高效率的需求。许多初创公司还在实践中开创了 DevOps 方法,以获得竞争优势或占领现有市场。DevOps 的采用在很大程度上是由需要在公有云主机上构建完整堆栈解决方案的专业程序员和系统管理员的要求驱动的。

 

DevOps 的部署和采用

大型公司中 DevOps 的部署正在增加,而诸如 Spiral 和 Waterfall 之类的集中式或一体式项目管理方法则正在减少。DevOps 活动是由复杂业务企业需要支持的微服务的激增引领的。无论是初创企业还是大型公司,所关心的主要问题都是如何通过更好的安全保护更快地推进软件开发。DevOps 方法有助于公司在不中断现有在线服务的情况下,在生产中快速引入新的代码更改或修补安全漏洞。公司力求利用 DevOps 技术大规模部署 Web/移动应用,以支持电子商务网站上的品牌、产品和其他服务,或通过媒体行业的 Web 发布要求,尽可能从云计算数据中心迁移中获得最大回报。工业制造公司和电信公司采用 DevOps,以便在大型编程团队的成员之间更好地进行合作,以提供产品和服务支持。

VMware DevOps 相关产品、解决方案和资源

什么是超融合基础架构?

超融合基础架构 (HCI) 是横向扩展的软件定义的基础架构,在经过闪存加速的行业标准服务器上融合了核心数据服务。了解更多

什么是软件定义的存储?

VMware 软件定义的存储是可满足业务和应用需求的简单但智能的存储数据中心体系架构。立即了解更多信息。

软件定义数据中心:数字化转型的基础

VMware 通过构建更简单、更灵活的 软件定义数据中心 (SDDC),来帮助您应对私有云和混合云挑战。免费试用。

ThinApp 部署工具和选项

您可以使用部署工具将捕获的应用部署到网络文件共享上,作为用户桌面或 VMware View 环境中的基本可执行文件。

为 vRealize Operations Manager 解决方案定义监控目标

您可以为添加到 vRealize Operations Manager 的管理包解决方案创建策略。