2019 年初,严选的服务数量已经近千,系统越来越庞大。为了能更好地支撑上业务的蓬勃发展,严选团队和网易轻舟团队开启了云原生平台的共建项目,以此拉开了严选应用云原生演进的帷幕。本文主要从严选的视角介绍一下相关的实践过程。
1. 背景
Cloud Native 这个名词最近几年一直很火,Pivotal 和 CNCF 都出过相关的定义,但本质都是为了引导应用在业务日益复杂多变的场景下可以更好地利用云基建,做到更加敏捷高效。2019 年初,严选的服务数量已经近千,系统越来越庞大。为了能更好地支撑上业务的蓬勃发展,严选团队和网易轻舟团队开启了云原生平台的共建项目,以此拉开了严选应用云原生演进的帷幕。本文主要从严选的视角介绍一下相关的实践过程。
对于严选来讲,将应用逐步演进到云原生的核心在于: “简化” ,主要体现在以下三个方面:
在整体演进中,我们主要从以下几个方面去考虑实施方案:
2. 实践
应用演进的关键点基本都围绕着 Heroku 提出的 12-factor 展开,整体的演进节奏类似于建造一座大楼。
2.1 第一阶段
“打地基” :以严选 DevOps 项目作为主线,在异构的底层设施上构建近似的应用执行环境,弱化业务应用对基础设施的直接感知。
2.2 第二阶段
“做框架” :在第一阶段的基础上,选择基础技术服务和部分 B 端业务应用作为落地的试点,完成服务容器化方案的框架指引。
2.3 第三阶段
“建管道” :Backing Service 云化,服务治理能力深入,开始试点一些延迟敏感型的活动类业务应用改造。
2.4 第四阶段
“搭房间” :开启线下环境的治理(该阶段和第三阶段会有部分重叠),由点到面地推进演进范围;扩大应用云化后的收益,例如:自动化地按需快速扩缩容。
3. 一些“收获”
如影随形的“IP 地址” :应用中对 ip 的使用习惯几乎渗透到了每个服务,从最基本的远程调用,到简单又有效的鉴权场景,也有用于生成分布式 id 之类的。
系统整体的可观测性
对团队的影响
4. 后继计划
目前严选已累积上云 300+服务,每天支撑业务百亿次调用; CICD 接入率 99%以上,平均每天通过基于容器云的高可用的 gitlab runner 进行 ci pipeline 构建数千次,整体提升研发效能 200%+。
环境治理是当前的重点,我们会进一步完善回归环境,为后继性能敏感型应用的演进提供更全面的验证环境,同时将会尝试利用服务网格特性,构建基于服务版本的测试环境治理,提升数据共用场景下的业务集群快速构建效率。
对于严选应用来讲,云原生的演进之路才刚刚走离泥泞小路,前面的路会越来越宽,也会有更大的挑战,需要不断前行!
作者简介
Saga, 网易严选基础技术部技术总监,负责严选技术中后台建设,目前专注在业务中台、DevOps 等效能提升方向的体系搭建和发展。
头图 :Unsplash
原文 :严选应用的云原生演进实践
:严选技术产品团队 - 微信公众号 [ID:YanxuanTechProd]
转载 :著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。