Scrum+DevOps+微服务+容器的内在关联

2021年10月22日讲师:刘通浏览:37次

Scrum是目前最为流行的敏捷(Agile)软件开发方法,它拥有极简的和可操作的以敏捷方式落地的项目管理组织框架。目前Scrum方法的普及度占敏捷市场60%以上的份额,这就足以说明其在市场上的认可程度。而开发运维一体化(DevOps)的理念是由世界知名IT咨询顾问Patrick DeBois先生于2009年首次提出。DevOps在多年的发展历程中已经逐步把自己定位为一个用于描述基于现有精益和敏捷(Agile)最佳实践发展为支持自动化和持续交付的方法,并鼓励协作和学习文化,以帮助IT实现比以往更好、更快和更便宜的业务价值。 故而DevOps是一种文化的运动。业界著名专家Damon Edwards和Jez Humble在其论述的DevOps相关著作中也提出DevOps所秉承的文化和价值观。DevOps的文化可以简单用CALMS来表述。 CALMS由文化(Culture)、自动化(Automation)、精益 (Lean) 、测量(Measurement or Metrics)和分享(Sharing)几个单词首字母所组成。 我们可以体会到无论是时下的敏捷实践还是DevOps的持续交付,它们强调的不仅仅是具体做法的规范,更加强调精益思想的价值观文化的塑造。敏捷开发方法一般通过在每次冲刺或迭代快速开发出符合市场需要的最小可运行产品(MVP)来体现这种价值交付。我们都知道只有把软件真正部署到生产环境才可以切实体现这种产品的使用价值,目前流行的微服务和容器技术则是实现软件快速部署落地的不二选择。实现DevOps落地的最佳方式就应该是基于微服务架构的持续交付,并通过以容器为单位的蓝绿部署和灰度发布等方式防止发布所造成应用的不可用(即反脆弱)。 目前很多银行或企事业单位都在或多或少的考虑把自己现有的业务应用从原先的紧密的巨石架构逐步解耦成符合松耦合的微服务架构,并通过容器化方式分别部署解耦后的应用组件。我们可以基本认为微服务架构和容器化部署方式是以DevOps方式交付持续部署流水线的前提条件。 那么具备微服务架构应用的典型特点有哪些呢?我们且简单罗列如下三点,以增强大家对这种全新架构的理解。 业务应用系统已经做到被彻底的架构解耦,可以实现基于容器的方式部署独立的部署单元; 每个被解耦的业务系统模块可以支持独立设计、开发、部署和维护,通常由敏捷实践所提倡的自组织(自管理)研发小团队进行持续的快速迭代和增量开发,研发小团队通常由5~9个人组成; 运行特定应用模块的容器可以被转化为镜像模板,以镜像的方式实现DevOps所提倡的“Build Once, Run Anywhere的特点。 总之,随着各个各业对市场所需价值的快速交付的内在需求,会有越来多的企业采用微服务架构, 选择敏捷开发方法Scrum,并通过开发运维一体化(DevOps)的自动化部署方式来持续部署已经打包成容器的产品功能。
分享 0

您已经赞过了!