收益:业务零侵入,平均 10.6min 编译部署
实现 150+ 的应用基于流水线零成本的升级改造,完成容器化与统一应用包的部署,在应用覆盖面上,支持应用类型全覆盖,同时支持一键秒级回滚的策略,可以零成本快速扩展集群与环境。
3.2 平滑稳定的k8s迁移方案
难点:业务在高速增长,如何低成本且灰度迁移生产流量至 k8s 平台/strong>
方案:统一流量入口、灰度引流、逐步转全和监控回切兜底
名词解释:
-
BFE : 百度统一应用层流量接入转发平台
-
BNS : 百度名字服务,用于满足服务间交互中常见的的资源定位、ip白名单维护等需求,也可以用于机器列表查询,使用场景包括机器列表查询、服务定位、白名单维护、数据库智能授权等
-
access gateway : 基于 OpenResty 构建的 k8s 集群的 API Gateway
-
BOS : 百度对象存储 BOS (Baidu Object Storage) 提供稳定、安全、高效以及高扩展存储服务
构建 k8s 统一流量入口为 access gateway,作为外部流量入 k8s 集群入口,集群内通过 k8s service 做服务发现,有计划按节奏逐步扩大灰度比例,直至转全。
通过公司统一的 BFE,实现客户粒度小流量和多版本的控制与路由,分钟级流量回滚方案以及正式流量逐步迁移的方案。
收益:线上周稳定性保持 99.99% 以上
四个月时间内完成 150+ 应用,2K+ 服务接口改造以及线上服务全量转全。
四、迁移Kubernetes的收益
通过容器技术解决资源标准化,为后面服务化、自动化奠定了基础,同时业界统一的 kubernetes 平台,加速基础设计升级,具体收益主要包括:
-
迭代速度提升:实现两周一迭代,一周两发布目标。完成爱番番 100+ 应用及其依赖的技术组件在 Kubernetes + Docker 环境的运行改造,实现了从开发、测试、部署、运行、观察的全流程打通。
-
快速构建监控体系:打破之前基于 5-6 个公司内部自研产品对服务进行监控的现状,通过引入 Prometheus + grafana ,快速建设统一的产品健康度监控/观察平台。
-
低成本升级基础设施:云原生的微服务基础设施升级与落地,包括基于 config map 的配置中心解决方案、基于 EFK/Skywalking 的日志采集解决方案、基于 ElasticAlert 的日志预警方案,基于 Kubernetes 的统一流量入口,提高了系统稳定性和排查问题的效率。
他山之石,可以攻玉。爱番番始终秉持 “ 技术为产品服务 ” 的理念,拥抱开源,积极引入业界成熟、先进的技术解决方案,支撑产品的发展。在云原生方向,爱番番走出了第一步,未来,我们还将继续努力,充分利用 CNCF 开源 区的力量,持续提升产品的研发效率及系统稳定性,同时也希望看到更多的产品从云原生技术中受益。
七、结语:拥抱云原生,加速价值创造
云原生是面向云应用设计的理念,帮助企业构建弹性可靠、松耦合、易管理可观测的应用系统,提升交付效率,降低运维复杂度,主要体现为三个方面:
-
k8s 平台红利的释放,充分发挥平台优势,将服务自治、故障自愈、快速弹性,自动扩缩容等能力落实到实际生产实践,降低运维复杂度。
-
引入与整合 service mesh 能力,打造服务治理平台,提供丰富强大的流量管控和服务路由的能力。
-
融合各项监控指标,建立统一的监控体系,将 metric , tracing 和 log 整合为一体,提供一站式的解决方案与服务能力。
围绕云原生体系,爱番番将继续在云原生方向上发展,基础技术不断革新演进新的技术体系,逐步打磨适合团队的基础技术产品与服务,持续引入云原生技术以支持产品的发展,秉持“技术为产品服务”的理念加速客户价值点的交付。
chhoho , 百度爱番番基础技术负责人, 拥有多年 CRM 行业架构经验,擅长分布式系统、微服务架构、CICD、Cloud Native 等技术领域。
推荐阅读:
|百度文库新一代文档阅读器!核心技术点全解析!
|详解预训练模型在信息检索第一阶段的应用
|快速剪辑-助力度咔智能剪辑提效实践
———- END ———-
百度 Geek 说
技术干货 · 行业资讯 · 线上沙龙 · 行业大会
招聘信息 · 内推信息 · 技术书籍 · 百度周边
欢迎各位同学关注
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!