写点什么

面对大促 DevOps 怎么做?这里有一份京东 11.11 DevOps 备战指南

发布于: 2020 年 11 月 16 日


今年 11.11,从 0 点到 23 点 59 分,京东 11.11 全球热爱季累计下单金额突破 2715 亿元,创造了新的记录。随着 GMV 和买家数不断创新高,要应对几何级增长的大促需要跨多个团队协同,云资源使用也越来越多,从几百到几千、上万,每个都核对一遍基本不现实,京东智联云 DevOps 作为京东智联云的核心技术产品,能实现研发、测试、运维高效协同,提升服务交付效率和稳定性,并能通过服务与资源管理持续交付智能监控三大应用场景,快速发现问题-定位问题-解决问题。

▲京东智联云DevOps在2019年跻身IDC MarketScape中国DevOps云市场"Major Players"位置▲


 一、发现问题——故障无处遁形


监控是研发、运维人员的眼睛,对服务进行多维度立体的观测,才能确保故障出现的时候第一时刻发现。京东智联云监控为用户提供如下建议:

监控覆盖排查


京东智联云监控提供从浏览器->边缘节点(CDN)-> 负载均衡 –> 服务器全链路的监控覆盖, 通过定义监控标准,为用户添加监控,帮助用户覆盖监控提供方法、工具上的支持。

 


监控标准分为四层,我们从下往上看:


重点系统在日常工作中往往已经在安全方面进行了重点关注,在大促备战期间主要关注:


  • 首先是基础监控,这一层主要解决机器、网络层面的问题,包括我们常见的 CPU、内存,机器死机等问题;

  • 然后是存活性监控,解决程序部署到机器上后,是否存活的问题,比如进程退出,端口发送一个 ping 过去,没有返回 pong;

  • 再上一层,则是性能监控,重点关注 Google 提出的四大黄金指标 pv、平响、错误码和容量等,解决分布式程序的定界问题(比如通过访问 MySQL 的时间飙升知道是下游 MySQL 的问题);

  • 最上层是业务监控,模拟用户进行访问,解决服务在用户侧的表现是什么。


有了标准,设计的监控系统就能按照标准来落地,可以给出一些数据化的运营指标,推动监控的完善。

 

基于对业务配置的指标采集、告警规则的分析,帮助用户分层级地发现监控配置当中的疏漏,提醒用户在各个层级配置监控,提升监控覆盖度。 



日常巡检


所谓上工治未病。除去配置覆盖完整的报警,及时排查服务的潜在风险,避免大促流量洪峰时期出现服务质量的问题,日常巡检必不可少,京东智联云智能监控提供內建基础资源巡检大盘,帮助用户快速发现资源不足问题。



同时,京东智联云自研时序数据存储支持 OpenTSDB/Prometheus 协议,便于集成 Grafana 组件,方便用户自行定制大屏。除去时序数据指标,京东智联云还提供基于日志的实时指标提取方案,可以对接报警、展示。


定位问题


如果我有一小时拯救地球,我会用 59 分钟界定问题,然后用 1 分钟解决它 。

——爱因斯坦


当故障发生,定位问题的边界,快速寻找根因是缩短整个故障处理 MTTR 的重中之重。京东智联云智能监控从“宏观”定界到“微观”定位角度,通过联合事件、日志、应用异常多维度数据,帮助用户缩短定位问题时间。

事件追踪


故障往往由“流量下降”、“页面打不开了”等黑盒类检测发现,但问题的具体所在并不能通过此类告警发现。而故障发生往往与变更有关,帮助业务人员快速了解到故障时段,究竟出现过哪些模块的调整,来推断问题的边界就有很大的帮助。

 

智能监控集成关联应用的各类变更操作,消除业务人员的信息屏障,为业务人员提供“上帝视角”,可以从宏观层面了解到当前各个子系统都在发生些什么,能够更好帮助用户找到具体的故障原因以及故障故障模块。


日志追踪


在确认问题边界之后,接下来就是对具体故障原因的分析了,京东智联云日志服务提供对服务日志订阅、检索、分析等多方面功能。承载 PB 级日志业务,提供低成本、高性能的完整解决方案。通过现场日志查看、以及日志分析任务等功能,从“白盒”的角度观测业务当前正在出现的异常。


排障利器 JEX


微观层面,京东智联云监控团队推出自主研发的无侵入式的故障诊断平台 JEX, 实时捕获异常,可以在线开启火焰图,捕获 CPU/内存热点,行级别定位代码问题,大幅缩短研发人员排查故障时间。通过集成 JEX, 研发人员可以在第一时间获取业务 Exception 的具体情形,JEX 可以保留异常事件发生的环境信息,方便研发复现以及定位代码问题所在。


二、解决问题


凡事预则立不预则废

故障发生第一时刻应该执行止损操作,避免对线上业务造成持续的影响。京东智联云 DevOps 平台通过不断的压测、破坏性演练,保障了在历次大促期间平稳运行。通过对故障处理实践的不断总结凝练,京东智联云 DevOps 推出预案平台,作为研发、运维同学的“手脚”,为业务方提供快速止损的能力。我们将预案分类为流量处理扩缩容降级数据恢复主备切换等几大维度,指导用户自流量入口到后端存储建立完善的预案体系。同时提供可自动执行以及可手工执行的预案,针对不同团队不同运维场景的故障止损操作。

 

预案平台提供 webhook、对接 DevOps 平台控制系统两种方式分别应对不同场景的故障自愈。


Webhook


京东智联云智能监控支持对告警配置添加 webhook 的形式来打通故障的发现处理环节。用户可以定制自己的 webhook API, 实现数据分析、故障处理、自行的消息通知等不同场景的扩展。

控制系统联动


智能监控预案平台通过直接对接 DevOps 控制系统,调用用户自行编写的脚本、在指定的服务器上进行止损操作,以此达到降低用户编写预案的成本。

 

三、总结


与市面通用型产品不同的是,京东智联云 DevOps 能力起源于自身的业务实践,针对京东集团的复杂业务场景打造并经受住多次 618、11.11 电商大促的严峻考验,保证了高效高质的交付和对变化的灵活应对。

 

京东智联云 DevOps 平台与京东智联云的公有云平台深度集成,对用户运行在京东智联云上的系统提供统一的运维入口,提升服务交付效率和稳定性,实现高效的自动化研发运维。它不仅能将运维管理与企业组织结构相匹配,设置基于角色的权限管理,满足企业层次化运维管理;还能从保障用户业务稳定性的角度,自动为宕机服务器上运行的容器(云主机)重新迁移并生成新的实例、保障业务不掉线、高可靠运行,并自动监控服务健康状态、动态调整集群、实时调度相关预案、实现故障自愈。


推荐阅读:



欢迎点击京东智联云,了解开发者社区

更多精彩技术实践与独家干货解析

欢迎关注【京东智联云开发者】公众号


发布于: 2020 年 11 月 16 日阅读数: 65
用户头像

拥抱技术,与开发者携手创造未来! 2018.11.20 加入

我们将持续为人工智能、大数据、云计算、物联网等相关领域的开发者,提供技术干货、行业技术内容、技术落地实践等文章内容。京东科技开发者社区官方网站【https://developer.jdcloud.com/】,欢迎大家来玩

评论

发布
暂无评论
面对大促DevOps怎么做?这里有一份京东11.11 DevOps备战指南