华为云DevCloud,云原生架构下的DevOps实践

举报
Oo小孩儿 发表于 2020/10/26 14:18:06 2020/10/26
【摘要】 HUAWEI CONNECT 2019期间,在开发者主题Session《下一代软件工程,全云化,更可信、更智能、更高效》上,华为云布道师分享了《华为云DevCloud,生于云长于云的DevOps实践》,主要介绍了华为云DevCloud大规模团队在实施云原生架构迁移的过程中,是如何对组织结构以及研发的交付模式进行改造,以满足服务快速响应客户需求的同时,保证交付的质量。华为云DevCloud专家...

HUAWEI CONNECT 2019期间,在开发者主题Session《下一代软件工程,全云化,更可信、更智能、更高效》上,华为云布道师分享了《华为云DevCloud,生于云长于云的DevOps实践》,主要介绍了华为云DevCloud大规模团队在实施云原生架构迁移的过程中,是如何对组织结构以及研发的交付模式进行改造,以满足服务快速响应客户需求的同时,保证交付的质量。

华为云DevCloud专家现场布道

据华为云专家介绍,华为内部有很多的软件工程类实践,华为云DevCloud也是其中的项目之一。华为云DevCloud从2016年成立至今,历经3年多时间,软件的规模、团队的管理以及人员之间沟通的复杂性都急剧上升。

云原生时代,在享受架构解耦与云端弹性带来的便利的同时,对软件研发与交付模式提出了更高的要求。以前传统的应用需求是比较固定的,用户的访问量可以预测,容量是有限的。逐渐发展到现在的VUCA时代,商业边界、业务层面是完全不可预知的,在这个前提之下,将要快速地尝试,快速地做一些探测或者探知这样的事情。

华为云DevCloud认为,业务的敏捷性持续发布、应用平台的弹性、商业环境的变化,云原生应运而生,这是整个云原生产生的业务背景。

保证云原生成功的三要素

真正做到云原生的成功,华为云DevCloud的总结是以业务交付为中心,另外有三个基本点:

  • 架构层面,首先是微服务架构的拆分,基础设施方面是自服务的方式,API是非常重要的方式,它定义了服务之间的边界,更重要的通过API的方式做整个生态。数字化转型,比如开放银行,也是这样一个思路,搭一个平台,通过各种合作伙伴在不同的行业、不同的领域提供相关的服务,这些服务是相互可以做连接的,通过互联网的思维来去做这个事情。华为云DevCloud也在打造自己的API生态。

  • 工程层面,系统和环境、流程、配置等等需要解耦,不只是架构层面的解耦,工程层面也需要相应的匹配跟解耦。核心的一个业务指标叫TTM,在DevOps有另外一个词叫Lead Time,就是你的前置时间,从业务需求提出来那一刻起,到这个业务需求上线的时间叫前置时间,这个是可以被客户感知的。DevOps更强调从提交代码那一刻起,一直到代码上线,这段时间是完全工程可控的,理论上应该是控制在分钟级。这个指标,也是华为云DevCloud最为看重的一个。

  • 组织层面,从全功能团队一直到云化的运维团队。架构层面,系统需要拆分到可DevOps的单元,整个单元实现自服务的方式,体现在几个方面:自助发现、自助按需获取、自助使用并计量、自助服务管理。

遵循康威定律,应用的架构和组织架构之间是高度的匹配,从单体的应用,逐渐到服务化的方式,再到分布式的模式。组织架构也逐渐转移到自组织,没有一个唯一的中心,这种组织的敏捷性和多样性都得到了极大提升。

华为云DevCloud目前是以服务为单位组织来整个团队,包含产品经理、技术的架构师,交付团队等职能,是一个全功能的团队。

除了技术栈是全功能以外,华为云DevCloud每一个服务化的团队都需要全生命周期的考虑,除了技术层面的怎样做产品的设计、开发出来部署、架构层面保持优美,更多的还需要考虑商业层面的东西,需要考虑服务定位,考虑产品上线以后运营应该做什么事情,应该做什么样的拉新活动、怎样促活、怎样留存。整个团队都需要有商业的产品运营的思维。这是整个思维上的转变,需要考虑:这个服务为什么这么做,谁去用,用的场景是什么?怎么样做一个商业的闭环。

华为云DevCloud总结持续交付的核心实践,包括做快速闭环、高速的交付自动化,尽可能地自动化所有的事情。自动化的前提是版本化;自动化的部署,缩短单点的耗时,整个交付如果是一个管道,瓶颈点在什么地方,打造高度标准化的环境。交付流水线的最佳实践包括,冒烟测试、安灯拉绳,为下游做优化,不要让缺陷流落到下游环节,保证高度的一致性,分层分级,快速反馈。

持续交付七大领域结构图

最后,华为云专家指出云原生架构与DevOps的落地与转型,是一个量变到质变的过程,需要从团队模型、分支模型、测试模型、技术架构、部署模型、基础设施、数据库模型等七大领域进行相应的匹配,持续优化交付粒度,加快交付速度,提升交付质量。

云原生时代的DevOps体系框架,也需要

  • 从商业决策上由基于Gate(Charter/DCP)的业务决策,转变为基于OBP的周期性审视;

  • 从服务化组织上,支持E2E全功能团队,开发运维一体化,对团队充分授权;

  • 从架构上进行服务化解耦,支持按服务小包独立交付;

  • 从开发和运维流程上,加强开发与运维的协同,支持更短的周期,更快的反馈;

  • 从IT工具环境上,重用已有的成熟工具,引入先进的开源和商用软件,实现轻量级端到端DevOps工具链;

  • 从服务流程上,支持服务的独立交付,自动化的环境部署。

华为云DevCloud作为一站式云端DevOps平台,集成华为近30年研发实践和前沿理念,面向开发者提供研发工具服务,让软件开发简单高效。现支持5人以下额度范围内,可以免费使用,并且可以预约免费产品演示和技术交流,详情查看华为云官网。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。