大搜车面向复杂业务场景的研发运维体系治理实践

本文涉及的产品
云服务器ECS,u1 2核4GB 1个月
云服务器 ECS,u1 4核8GB 1个月
云服务器 ECS,u1 4核16GB 1个月
简介: 通过统一研发流程、统一稳定性保障体系、统一云原生化,来解决复杂业务场景带来的语言异构、中间件升级、研发流程体系与稳定性保障体系不统一等技术挑战。

李同刚.png

图:大搜车基础设施部负责人李同刚


2021年12月10日,在云上架构与运维峰会上,大搜车集团基础设施部负责人李同刚分享了大搜车在研发运维体系治理的一些实践。以下是他的演讲实录:


 

一、业务介绍


1、汽车流通

幻灯片4.JPG


大搜车业务覆盖了汽车的整个流通领域,并形成闭环

新车部分:主要有布雷克索,为4s店提供一站式的信息综合服务;卖车管家是面向二网车商的管理营销工具;还有主机厂商的软件定制。

二手车部分:主要有大风车,为二手车商做上市管理;车易拍是面向二手车商的B2B交易平台。

物流层面:主要产品是运车管家,为车辆托运业务提供仓储和物流信息。

金融部分:主要负责帮助金融的机构更好地满足客户的消费需求。


2、异构业务

幻灯片5.JPG


异构业务主要有SaaS、软件定制和直播。

SaaS负责云上的部署,为客户提供业务层面上专业的技术支持,并且基于开源做一些改造。软件定制类似于传统的项目制方式,因为里面存在甲乙方的关系,甲方会要求软件底层的架构尽量开源,不能有个性化的改动。


 

二、技术挑战


1、中间件升级挑战

幻灯片7.JPG


首先要面临的挑战是中间件的升级比较困难。目前大搜车有三个版本的中间件,分布在2000多个应用上,产品和业务都比较多,并且因为业务一直在发展,这些都导致了中间件升级的困难。


2、收购的技术挑战

幻灯片8.JPG


收购了其他公司以后也会产生很多的技术挑战:

语言异构:Java、Dolang和NODEJS服务之间的调用会影响开发效率。

研发流程体系不统一:包括工具也不统一,同样会影响整个团队的合作效率。

线上的环境复杂:传统的虚拟机和k8s同在的,导致操作情况比较复杂。

稳定性保障体系不统一:规范、告警体系和监控工具不统一。


 

三、业务要求


幻灯片10.JPG


快速、稳定、高效地去满足业务上的需求,是各个业务线的诉求。因为商业是在不断往前走的,大搜车针对业务上的需求和挑战,做了一些解决方案。


 

四、解决方案


幻灯片12.JPG


解决方案要实现的目标包含以下三部分:

统一研发流程:严格按照需求-开发-测试-上线的流程来执行。

统一稳定性保障体系:主要包括整个监控体系、SLA的标准和其他的工具。

统一云原生化:将整个基础架构和环境能往统一的方向进步,从而提高效率。


1、统一研发流程

幻灯片13.JPG


如上图,研发流程的最底层是阿里云IaaS层,它包括了ECS ASK和网络、存储功能。搜车研发规范包含了GitFlow规范以及其他部署规范,质量服务层里面有一些API自动化测试工具和精准测试工具等。研发协作平台贯穿了从需求到发布的整个流程,负责落实全部的质量规范。


有了底层研发协作平台数据的积累,才可以做最上面这一层的数据化运营平台。这一层主要是针对研发协作平台做一些原子性的指标体系的规划,还有研发协作体系的业务指标,比如说测开比、线上的稳定指标等等。


2、统一稳定性保障体系

幻灯片14.JPG


如上图,稳定性保障体系的最底层是一些规范,比如sla的规范、架构的高可用的规范,包括复盘规范。监控数据源包括RDS、Redis、Pod、JVM等等,他们都会在这一层得到统一。SLS存储层可以用机器学习算法去做告警的自适应,SLS告警层主要处理监控、降噪和通知管理。最上层的故障处理系统,主要负责故障的闭环,从告警-故障-复盘-更新分析-改进追踪的整个流程。


要把自己的数据源和定义尽可能地用到云上的服务里去,这样才能提升整个保障体系的投入产出比。


3、统一云原生化

幻灯片15.JPG


因为底层有比较多的业务云,所以需要完成云原生的统一,来解决收购以后的多语言问题。分为以下三个步骤:

K8s迁移:K8s是一个标准的服务,把应用迁到K8s里是统一基础设施层。

Dubbo升级:让业务线dubbo版本统一,并且为升级到 Service Mesh 做铺垫

探索ASM方案


 

五、经验总结


幻灯片16.JPG


1、做正确的事

要用客观且产品化的思维去考虑,什么是正确的事,而不是靠主观意愿来判断。要更多地走进业务,去调研客户的需求,从客户的角度去考虑。


2、正确地做事

首先把握方向,其次避免过多地去关注过程,而是要从结果去反推,我们应该做什么样的决策。


点击大会官网,查看李同刚的精彩演讲视频。


相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
13天前
|
运维 监控 Devops
DevOps文化下的自动化运维实践
本文将探讨在DevOps文化背景下,自动化运维的重要性及其实现方式。通过分析自动化运维的优势和挑战,文章提供了具体的实施策略和案例,旨在帮助读者理解如何在DevOps实践中融入自动化运维,以提高软件开发和部署的效率与质量。
|
28天前
|
运维 监控 安全
现代化运维管理系统的关键技术与实践
传统的运维管理方式已经无法满足当今复杂多变的IT环境需求,现代化运维管理系统应运而生。本文将介绍现代化运维管理系统的关键技术和实践,包括自动化运维、容器化技术、监控与告警系统等方面,旨在帮助企业更好地理解和应用现代化运维管理系统。
20 0
|
6天前
|
机器学习/深度学习 数据采集 人工智能
智能化运维的探索与实践:AI在IT运维中的应用
【6月更文挑战第19天】随着人工智能技术的不断成熟,其在IT运维领域的应用也愈发深入。本文将探讨AI技术如何赋能传统IT运维,提升效率和响应速度,实现故障预测、自动化处理及优化决策。通过分析AI在运维中的实际应用案例,我们能更好地了解其潜力与挑战,并预见未来智能化运维的发展路径。
220 6
|
4天前
|
机器学习/深度学习 人工智能 运维
智能化运维的探索与实践
【6月更文挑战第21天】本文旨在探讨智能化运维在现代IT管理中的应用和挑战,通过分析智能化技术如何赋能传统运维流程,揭示其在提升效率、降低成本方面的潜力。文章将结合具体案例,阐述智能化运维的实施路径和面临的主要问题,为读者提供一套可行的智能化运维解决方案框架。
|
27天前
|
运维 监控 Devops
构建高效自动化运维系统:DevOps在企业级应用的实践
【5月更文挑战第30天】 随着信息技术的飞速发展,企业对软件交付速度和稳定性的要求越来越高。传统的运维模式已无法满足快速迭代和高效稳定的需求,因此,本文将探讨如何通过实施DevOps文化、流程和工具,构建一个高效的自动化运维系统。文章将详细描述DevOps的核心理念、关键技术组件以及如何在组织中落地实施策略,旨在帮助企业提升运维效率,加速产品的上市时间,同时保证系统的高可用性和稳定性。
|
27天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于容器技术的持续集成与持续部署实践
【5月更文挑战第30天】随着云计算和微服务架构的兴起,传统的运维模式已难以满足快速迭代和高可用性的需求。本文探讨了如何利用容器技术构建一个高效、可靠的自动化运维体系,重点分析了Docker和Kubernetes在这一过程中的关键作用,并提出了一套基于这些技术的持续集成(CI)与持续部署(CD)解决方案。通过实际案例和操作步骤的详细阐述,文章为读者提供了一种实现自动化运维的有效途径,同时对未来运维技术的发展趋势进行了展望。
|
27天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于Docker和Kubernetes的实践
【5月更文挑战第30天】 在当今的快速迭代和持续部署的软件发布环境中,自动化运维的重要性愈发凸显。本文旨在探讨如何利用容器化技术与微服务架构,特别是Docker和Kubernetes,来构建一个高效、可伸缩且自愈的自动化运维体系。通过详细分析容器化的优势及Kubernetes的集群管理机制,文章将提供一个清晰的指南,帮助读者理解并实现现代软件部署的最佳实践。
|
29天前
|
存储 人工智能 运维
构建高效自动化运维体系的策略与实践
【5月更文挑战第28天】在数字化转型的浪潮中,企业IT基础设施的管理和维护变得越来越复杂。为了应对这一挑战,自动化运维(AIOps)应运而生,它通过集成工具、流程和策略来提高运维效率,降低成本,确保系统稳定性和服务可靠性。本文将探讨构建高效自动化运维体系的关键技术要素,包括日志管理、性能监控、事件自动化处理以及持续集成和持续部署(CI/CD),并分享实际案例分析,以指导企业如何规划和实施自动化运维解决方案。
|
29天前
|
运维 Kubernetes jenkins
构建高效自动化运维系统:基于容器技术的持续集成与持续部署实践
【5月更文挑战第28天】 在现代软件工程实践中,持续集成(CI)和持续部署(CD)已成为提升开发效率、确保产品质量的关键环节。本文旨在探讨如何利用容器技术构建一套高效、可靠的自动化运维系统,以支持敏捷开发流程和微服务架构。通过对Docker容器及Kubernetes集群管理工具的深入分析,我们提出了一种结合Jenkins实现自动化测试、构建与部署的完整解决方案,并讨论了其在现实业务中的应用效果和面临的挑战。
|
29天前
|
运维 监控 安全
构建高效自动化运维体系:基于容器技术的持续集成与持续部署实践
【5月更文挑战第28天】在现代IT基础设施管理中,自动化运维已成为提升效率、确保稳定性的关键手段。本文将探讨如何利用容器技术实现软件的持续集成(CI)与持续部署(CD),从而构建一套高效的自动化运维体系。通过分析容器化的优势和挑战,结合DevOps文化,我们提出一个实用的框架,以帮助企业快速响应市场变化,缩短产品上市时间,同时保障服务的高可用性。