去哪儿网核心领域DevOps落地实践

本文根据张春芳老师在〖deeplus直播:逆袭生产力担当 , 云原生时代的运维新归宿〗线上分享演讲内容整理而成 。 (文末有回放的方式 , 不要错过)
去哪儿网核心领域DevOps落地实践
文章图片

今天的分享主要包含以下几个方面的内容:
去哪儿网核心领域DevOps落地实践
文章图片

一.Qunar devops生态概览
1、项目流程
看我们生态之前 , 大家先看一下我们的整个项目流程 。
去哪儿网核心领域DevOps落地实践
文章图片

在整个项目流程中 , 首先是业务 , 我们做DevOps的时候一定要从业务目标出发 , 业务人员先去确定业务目标 , 然后进行产品的规划 , 规划完成之后进行产品的设计 。 设计拆分成具体的功能 , 功能对应我们的需求 。 在需求出来之后 , 我们进行敏捷开发 。 开发完成后进行集成测试验证 , 最终发布运维上线 。 我们DevOps其实主要是致力于为产品设计到发布运维这一过程提供支持 , 完成服务目标 。 整个过程也是我们项目管理的过程 。
2、目标和方法
基于整个项目流程 , 我们看一下我们DevOps的目标和方法 。
去哪儿网核心领域DevOps落地实践
文章图片

这个目标和方法我借鉴了百度工程能力的定义:工程能力是使用系统化的方法 , 在保证质量的前提下 , 更高效率地为客户/用户持续交付有价值的软件和服务的能力 。 其中有几个关键词 , 首先它是系统化的方法 , 对应去哪儿我们这么拆解系统化的方法 。
首先要有流程规范 , 因为有了流程规范 , 具体的一些落地才有章可循 , 而不是做各种单独的一些场景化支持 。 有了流程规范 , 我们去落地 , 先落地到我们的工具平台 , 这一层落地工具平台都是先做一些普适性的工具 。 但普适性的工具虽然对所有的场景都支持 , 但也存在对真正具体的一个场景化支持不流畅的问题 , 因此我们拆分出具体的场景化实践 。 遵循这一闭环 , 我们来建立我们DevOps的生态 。
有了方法之后 , 我们的目标是什么呢?当然是提升交付速度 。 但是在提升交付速度的过程中 , 我们又必须保障质量 , 所以我们的两大核心目标就是提升交付速度和保证交付质量 。
基于以上的目标和方法 , 我们落地了DevOps生态 。
3、完整生态
首先看一下完整的流程 。
去哪儿网核心领域DevOps落地实践
文章图片

贯穿全部流程的是项目管理 。 在上层 , 我们根据不同的域进行了拆分 , 可拆分为开发、测试、上线和运维 。

  • 开发部分包括的内容就是应用注册、代码管理、sonar、Cr等 。
  • 测试部分包括缺陷管理、case接口、测试性能、接口测试和代码覆盖率 。
  • 上线包括发布步骤编排、产物管理、回滚管理、负载均衡等 。
  • 运维包括监控、日志、事件、报警等 。
上图右方是我们的一些公共服务 , 底层的资源是KVM跟k8s 。 整个过程我们也遵循云原生的基本原则 , 开源与自建结合 。 图中蓝色部分是使用开源的 , 黄色部分在使用开源的基础上进行了二次开发 , 红色部分完全由我们自建 。
生态是以是以唯一的管理单元——APPCODE串联的 , APPCODE是指应用的唯一标识 , 因为有了APPCODE , 才会使我们整个过程可追踪 , 数据可追溯 , 服务可运维 。 所以APPCODE是我们非常核心的要素 , 建立生态的关键 。

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。