0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

云原生技术下的华为云DevOps实践之路

华为开发者社区 来源:华为开发者社区 作者:华为开发者社区 2021-12-06 16:52 次阅读

DevOps最早在2009年被人提出,愿景非常美好,但真正实施起来困难重重。

随着近几年微服务、容器等技术的兴起,使得企业对DevOps的需求更加迫切,实施变得更加容易,DevOps越来越被接受和重视。

同样,为了应对业务的敏捷发布,应用平台的弹性诉求,商业环境的变化,云原生时代已到来,云原生技术已经应用到企业核心业务。

云原生与DevOps是什么关系?其技术优势如何与DevOps结合,才能更加高效便捷的实施呢?云原生时代下,DevOps的落地会遇到哪些困难?华为云是否有一些实践方案去应对?

华为云社区邀请到了华为云DevCloud首席技术布道师徐毅,听他讲述云原生技术下的DevOps实践,深入了解集华为30年研发经验的华为云DevCloud是如何践行DevOps理念的。

从需求侧、平台侧、商业侧等方面来看,云原生产生的业务背景是什么?

众所周知,很多变革都始于技术。技术经由积累产生势能,这些新的技术释放出很强大的生产力并带来创新,满足用户和客户新需求的爆发,从而需求驱动技术的迅速普及和优化,最终带来商业的繁荣。

云原生应该是云化的延伸。在云的发展初期,并非所有的产品技术都是云原生的,随着云计算技术的不断发展,云原生的应用和系统能够更好的满足需求侧在功能和非功能各方面的诉求。从云到云原生这个过程来看,在当下创新加速的VUCA时代,也带来了一系列的变化:

需求变化快,但方向暂不清楚,这就需要IT信息化支撑业务创造的过程更灵活、反应更快速;

在业务板块创造出来之后,会面临着业务使用的强度和频率是不固定的,所以就需要支撑业务供给的灵活性和快速响应的速度;

当下的用户需求和业务的颗粒度,随着市场发展越来越小,所以能够迅速把握市场动态、完成业务创造、提供业务这个全过程周期的速度也变得非常重要,还需要能够拉通整个组织。但不同职能组织都有自己的不同目标,无法做到说改变就改变。

云原生技术的发展,使得各个职能组织去支持、去改变的难度越来越低、投入越来越小,大家更愿意拉通和协作,从而在商业侧能够给企业带来更大的竞争优势。

云原生时代,在享受架构解耦与云端弹性带来的便利同时,对软件研发与交付模式提出了更高的要求,如何才能真正做到云原生下价值交付的成功?

首先要掌握架构解耦、云端弹性等相关技术,具备研发能力,这是第一要素。

第二,把技术能力运用起来在平衡中去解决业务问题,不能太过于完美主义。例如面对一个遗留系统,是一步到位解耦完毕还是循序渐进呢?分析业务现状的问题并针对性地应用云原生技术能力去解决,去创造价值,是第二个关键要素。

第三是团队通力协作的能力。作为团队的基础,团队的每个成员都具备充分的技术能力,这样团队的能力可以等同于团队成员的合力。团队成员之间通过协作能够产生的化学效应,不只是1+1=2的效果,它将会带来乘数甚至指数级的效应。

第四是组织变革能力。新组织可以直接招募具备云原生技术的成员组建团队,这样带来的好处就是大家没有遗留系统,理解业务即可。如果是一个现成的组织,那么团队成员既要边学习和掌握新技能,边继续发展业务,就如同“给行驶中的汽车换轮子”。这时就需要一种软实力来打消大家的顾虑,推动往云原生的交付模式转变。

云原生与DevOps的关系是什么?普通DevOps与云原生的DevOps有何不同?

按照CNCF的说法,容器、微服务等被认作是云原生技术。DevOps主要是指一种工作方式或模式,它帮助拉通整个价值创造过程中各环节的人和组织,通力协作缩短价值创造的周期时间。在这个过程中,就需要从人、工具和流程方法三个维度去改变。

如何区分普通DevOps和云原生DevOps,主要看一个组织在应用DevOps的过程中,是否使用云原生技术开发应用或者系统。 举例来讲,DevOps开发一个传统的单机应用,不需要开发人员掌握容器或微服务等技术,对部署和发布的自动化要求也不高,或许也不需要灰度发布、应用监控等功能,往往只需应用几个DevOps工具就能够满足需求。

当然,它是被定义为DevOps,所以代码提交之后的编译构建、测试、打包、安装启动等,都要能够以全自动化的方式完成,无需人工干预,那这个应用的研发过程就是一个普通的DevOps。

云原生模式严格意义上来说,是整个应用的生产过程都在云上, 需求在云端的系统上管理,代码存放和评审、测试用例都在云上进行,甚至日常交流、开会等方面也都在云上进行,这就是比较彻底的云原生DevOps。这时就需要一个可以拉通各个环节的云原生DevOps工具的平台,我们称之为一站式云原生DevOps平台。

云原生的DevOps对于开发者来说,意味着什么?如何尽快在实际工作中实践?

应该说是未来的趋势。个人开发者可以利用云厂商提供的便利,以极低的成本,去学习和实践云原生DevOps开发的全过程,掌握运用各种云原生技术,去创造价值。同时,开发者要从自身的长远发展出发,自己的未来自己做主,不要仅仅依赖于工作中实践,可以考虑去主动的投资学习。毕竟自身能力的提升是带来更大回报的最常见手段,其他手段都依赖于能力的提升。

在云原生2.0的趋势下,越来越成熟的云原生技术化解了开发者的诸多难题,开发者突破个人职业瓶颈的核心关键是掌握1+N关键能力,就是1个DevOps平台加上N套技术栈,再配合云原生提供的开发能力,开启第二曲线。

DevOps新挑战:如何解决实际开发运维中的问题?

要说DevOps如何解决实际开发运维中遇到的问题,首先我们应该先分析当下开发运维会遇到哪些问题,简单列举几个点:

第一个问题:现在市场需求变化很快,产品要快速响应,频繁的进行版本更迭。

当下很多项目都在使用微服务框架,其中一个好处是可以减少变更影响的范围,但微服务其实对运维的要求相对变高了,因为之前你只负责一个单体服务的发布,现在你要负责多个微服务的发布,传统组织结构以及运维方式很难满足,这其实也是促使DevOps诞生的一个主要因素。

DevOps是可以通过一系列的自动化工具,将很多以前需要手工操作的流程变成自动化的。比如发布包的构建、部署任务参数配置等等,然后对各个服务按照不同场景,做出不同的发布策略,进行自动化的发布,加速产品新特性的上线。

第二个问题:产品上线后,数据运营和分析。

这点容易被忽略,很多人认为DevOps就是自动化工具链,其实数据分析、运营也是DevOps中很重要的一部分。 DevOps文化中,度量是很重要的一环,这个度量不是说向老板汇报用的,而是通过数

据去了解各个服务的运行情况、用户的使用情况等,然后根据分析结果对产品进行优化改进。传统的运维模式很难建立这种反馈机制,不搞清楚市场或者用户群体感受的开发,很容易闭门造车,而DevOps则是提倡在运营环节建立反馈机制来解决这个问题。

其他方面问题:比如基础设施、网络、场地等方面的投入,相当于把资源托管,让开发者更多的聚焦于新特性的交付。以上这些其实都是DevOps解决实际生产中的问题的例子。

有调查显示开发者在DevOps整个软件开发生命周期中,测试阶段遇到的延迟最多,华为云是否有一些实践方案去应对?

测试阶段遇到延迟的问题是说很多时候安全测试在整个软件生命周期中做的比较晚,导致很多漏洞之类的没有测出来。这个问题其实很好解决,首先可以从单元测试入手,在新特性开发之前,根据验收标准写好单元测试,等到功能开发完成直接进行单元测试,这样就会减少测试的延迟。

DevOps也主张将测试环节尽可能地嵌入到流水线中,华为云DevCloud提供了代码检查功能,检查代码的漏洞。还有就是现在很多项目都在用微服务框架,微服务框架中服务与服务之间是通过API进行交互的,那我们也可以将接口测试作为一个主要安全管控手段,将他纳入到持续交付流水线中,每次执行流水线时,自动进行接口测试。

华为云云原生DevOps的升级是否分阶段,每个阶段的路径是什么?

华为云积极地参与业界相关标准和能力模型的共建共创,作为重要参考来构建DevOps相关产品。业界主流是根据DevOps的自动化程度将它划分成三个阶段:

保证代码时刻可以进行构建的持续集成;

将代码自动化部署到类生产环境进行测试的持续交付;

最新的代码直接自动化部署至生产环境的持续部署。

其中,持续集成自动化程度相对会低一些,持续部署自动化程度是最高的。但更多的时候需要结合业务场景去选择是持续集成、持续交付或是持续部署,并不是所有的场景都必须做到持续部署。如果条件允许的话,一定是自动化程度越高,就意味交付频率越快。

华为云是否有云原生的DevOps体系框架、落地实践案例等?

华为云提供的云原生DevOps体系框架叫做HE2E,即华为端到端(End to End)DevOps框架。是结合了华为30年研发经验并集合了业界先进的实践所形成的一套可操作可落地的敏捷开发方法论。HE2E围绕一个名为凤凰商城的电商平台项目,按照DevOps方式完成从提交代码到流水线部署上线的全过程,项目使用了微服务、容器等多种云原生技术,其中DevOps部分依托于华为云DevCloud。

在这个实践中,开发者可以通过华为云DevCloud的项目管理功能进行敏捷项目管理。项目的示例代码也是通过华为云DevCloud的代码仓库codehub,项目使用微服务架构,前后端分离,并且可以通过华为云DevCloud进行云端构建实现持续集成,将前后端打成Docker镜像放到云端镜像仓库,供部署使用。

从集成到部署,还可以通过DevCloud的流水线功能串联起来,在流水线中配置构建、部署任务实现云原生的DevOps,这个流程和现在很多企业的实际开发场景也吻合。

最后,对于开发者来说,DevOps是神秘的,自己可能没有精力或资源搭建DevOps工具链,其实这部分可以通过H2E2——相当于是用华为云搭好的一套架子,可直接使用华为云DevCloud体验云原生的DevOps。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4779

    浏览量

    68524
  • 华为云
    +关注

    关注

    3

    文章

    2445

    浏览量

    17410
  • devops
    +关注

    关注

    0

    文章

    113

    浏览量

    12014

原文标题:敏捷开发专家一席谈:云原生技术下的华为云DevOps实践之路

文章出处:【微信号:Huawei_Developer,微信公众号:华为开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是云原生MLOps平台

    云原生MLOps平台,是指利用计算的基础设施和开发工具,来构建、部署和管理机器学习模型的全生命周期的平台。以下,是对云原生MLOps平台的介绍,由AI部落小编整理。
    的头像 发表于 12-12 13:13 81次阅读

    梯度科技入选2024云原生企业TOP50榜单

    近日,国内专业咨询机构DBC德本咨询发布“2024云原生企业TOP50”榜单。梯度科技凭借自主研发的“梯度智能平台”入选该榜单,彰显公司在该领域的行业竞争力。
    的头像 发表于 12-06 11:35 246次阅读

    k8s微服务架构就是云原生吗?两者是什么关系

    和安全性,使开发者能够更轻松地构建和部署现代化的应用程序。然而,云原生不仅仅局限于Kubernetes或任何单一的技术,它是一种方法论和最佳实践,涵盖了多个技术和理念,旨在充分利用
    的头像 发表于 11-25 09:39 136次阅读

    云原生和非云原生哪个好?六大区别详细对比

    云原生和非云原生各有优劣,具体选择取决于应用场景。云原生利用计算的优势,通过微服务、容器化和自动化运维等技术,提高了应用的可扩展性、更新速
    的头像 发表于 09-13 09:53 382次阅读

    KubeCon China 2024全球大会在香港举行,京东受邀参加探讨云原生、开源及 AI

    参会者,共同探讨云原生、开源及 AI 领域的前沿进展、核心技术和最佳实践。 京东现场技术分享议题: 《京东
    的头像 发表于 08-23 13:42 336次阅读

    京东云原生安全产品重磅发布

    “安全产品那么多,我怎么知道防住了?”“大家都说自己是云原生的,我看都是换汤不换药”在与客户沟通云原生安全方案的时候,经常会遇到这样的吐槽。越来越的客户已经开始了云原生化的技术架构改造
    的头像 发表于 07-26 10:36 468次阅读
    京东<b class='flag-5'>云原生</b>安全产品重磅发布

    从积木式到装配式云原生安全

    云原生安全风险 随着云原生架构的快速发展,核心能力逐渐稳定,安全问题日趋紧急。在云原生安全领域不但有新技术带来的新风险,传统IT基础设施
    的头像 发表于 07-26 10:35 295次阅读
    从积木式到装配式<b class='flag-5'>云原生</b>安全

    基于DPU与SmartNic的云原生SDN解决方案

    随着计算,大数据和人工智能等技术的蓬勃发展,数据中心面临着前所未有的数据洪流和计算压力,这对SDN提出了更高的性能和效率要求。自云原生概念被提出以来,Kubernetes为云原生应用
    的头像 发表于 07-22 11:44 688次阅读
    基于DPU与SmartNic的<b class='flag-5'>云原生</b>SDN解决方案

    首批认证!拓维信息梧桐云原生平台获鲲鹏原生开发技术认证

    7月10日,拓维信息梧桐云原生平台V3.0获得华为鲲鹏原生开发技术首批认证。作为华为鲲鹏战略合作伙伴,拓维信息以28年行业数字化经验和持续
    的头像 发表于 07-19 08:15 439次阅读
    首批认证!拓维信息梧桐<b class='flag-5'>云原生</b>平台获鲲鹏<b class='flag-5'>原生</b>开发<b class='flag-5'>技术</b>认证

    华为开发者桌面全新发布 CodeArts IDE for Python,极致优雅云原生开发体验

    的喜爱。 继 CodeArts IDE for Java 和 C/C++,华为发布 CodeArts IDE for Python,这是一款面向云原生开发,提供智
    的头像 发表于 05-10 00:27 1235次阅读
    <b class='flag-5'>华为</b><b class='flag-5'>云</b>开发者桌面全新发布 CodeArts IDE for Python,极致优雅<b class='flag-5'>云原生</b>开发体验

    云原生转型中从理念到实践的探索与挑战

    以“全面智能化,跃升数智生产力”为主题的华为第21届全球分析师大会近日在深圳举行。在本次大会的“5.5G Core,智能化点亮世界”核心网分论坛上,广东移动网络运维总监王喆发表了“云原生
    的头像 发表于 04-23 11:45 448次阅读

    华为多模数据库 GeminiDB 架构与应用实践直播问答实录

    多模数据库作为一种新兴的数据管理解决方案,正在受到越来越多的关注。而华为多模数据库 GeminiDB 基于云原生数据库优势,让企业应用更智能、更高效。前几日,华为
    的头像 发表于 04-08 18:25 1158次阅读

    华为云原生多模数据库 GeminiDB 架构与应用实践

    近日,2023 全球分布式大会·深圳站顺利召开,华为 NoSQL 数据库研发总监余汶龙在会上发表了题为《华为云原生多模数据库 Gemin
    的头像 发表于 04-08 18:23 1173次阅读
    <b class='flag-5'>华为</b><b class='flag-5'>云原生</b>多模数据库 GeminiDB 架构与应用<b class='flag-5'>实践</b>

    云原生是大模型“降本增效”的解药吗?

    云原生AI正当时
    的头像 发表于 02-20 09:31 385次阅读

    米哈游大数据云原生实践

    近年来,容器、微服务、Kubernetes 等各项云原生技术的日渐成熟,越来越多的公司开始选择拥抱云原生,并开始将 AI、大数据等类型的企业应用部署运行在云原生之上。以 Spark 为
    的头像 发表于 01-09 10:41 582次阅读
    米哈游大数据<b class='flag-5'>云原生</b><b class='flag-5'>实践</b>