BT

您是否属于早期采用者或者创新人士?InfoQ正在努力为您设计更多新功能。了解更多

阿里巴巴国际环境下的SRE体系实践

| 作者 郭蕾 关注 3 他的粉丝 发布于 2017年8月3日. 估计阅读时间: 7 分钟 | ArchSummit社交架构图谱:Facebook、Snapchat、Tumblr等背后的核心技术

AliExpress是阿里巴巴国际电商平台,海外买家覆盖200+国家,分布广且离散,国际架构、网络体系复杂,为了提升全球用户体验面临诸多技术挑战。从2016年开始,AliExpress就开始落地SRE相关的实践,并且收效颇丰。为了了解AliExpress全球架构体系下的可用性解决方案及具体实践,InfoQ记者采访了阿里巴巴高级技术专家周志伟。另外,周志伟也将会在9月10日举行的CNUTCon全球运维技术大会上分享相关话题。

InfoQ:针对新时代的运维,目前有三个比较火的理解,分别是DevOps、SRE、AIOps,你是如何理解这些理念的?

周志伟:DevOps,我认为是让研发参与Ops的运维活动,为自己负责的应用生命周期负责。在DevOps理念中,开发不是说写完代码然后交付就完事了,同时,他也要对线上的运维负责。对于互联网商业公司来说,我认为推行DevOps是对客户的尊重,也是对稳定性负责。因为研发人员能更快的解决由于运维过程出现的问题并修复,更高效准确的参与和修复线上问题,从而提升用户体验。当然现在的应用过于庞大、依赖过于复杂,单纯的让Ops团队运维很难做到万无一失。

在AliExpress,我认为SRE是一个组织,它为网站可用性买单。SRE由多位领域专家组成,可以解决生产环境发生的各种问题。我们通过大数据分析发现网站问题或者可能存在的风险,当问题发生时能快速有效的止血,恢复问题,同时又有一套工具体系能定位问题的根因。当然这个组织会制定一套围绕稳定性机制运作的规范,让大家来遵守。

AIOps,我觉得AliExpress现在走的路应该是往这个方向靠的。现在AliExpress正在做的是通过大数据驱动SRE,把SRE关心的系统信息、访问信息等数据进行模型计算,通过机器学习进行问题识别和诊断,这个过程我认为就是AI的过程。问题识别和诊断之后会给出一些自动恢复问题指令,机器再通过实时数据检测指令的有效性,符合预期,继续执行更大范围的恢复,直到全面恢复。如果不符合预期则会尝试其他恢复手段。这套体系还在实验和摸索,从方案和部分实验上看是可行的,已经贴近人的判断甚至有些方面更客观。但也有很多不足之处,这取决于算法模型的准确性。我想这是我们要走的路。

InfoQ:AliExpress是什么开始实践SRE理念的?可否介绍下目前你们的一些基本情况?

周志伟:AliExpress的SRE是2016年开始摸索的,核心思想是分层治理,在最重要的一层用红线确保实施到位。

在红线的基础上建立一系列配套规范(包括监控规范、发布规范、线上运维规范等等),让全员参与学习。

建设SRE运作体系(故障演练、作战演习、快速响应),让我们的SRE工具、团队成员在平时都能得到基本的训练,确保在问题发生时都能在最短的时间恢复(实时也证明通过日常的作战训练非常有效,响应速度以及对于工具的信心)。

这些基础的保障之外我们会更多的参与基础数据采集和分析,通过大数据的方式运作SRE,通过大数据发现更多维度的问题,使用损失最小的方式恢复问题,或者说是通过更有效的手段恢复问题。特别是面对国际复杂互联网时,尤其需要通过大数据来帮助定位是哪个国家哪个地区出现的网络瘫痪。

InfoQ:你认为SRE主要解决了AliExpress哪些问题?

周志伟:提高AliExpress的可用性,事实也说明了这一点,这个组织让整个AliExpress多了一个横切面去保障,大家相互了解互相学习,解决的不仅仅是线上问题,我认为是预防了很多线上问题发生的可能。同时SRE通过大数据的方式进行问题的发现,以及解决。特别是国际互联网的问题上,我们有多种异地多活和优化机制,更大力度的解决早些年碰到国际网络问题无从下手的尴尬局面。

InfoQ:可否介绍下AliExpress的SRE方法?

周志伟:首先,我们有KPI核心红线,从组织的角度去确保实施到位,解决了因为有工作量而不执行的难题。

然后,我们有稳定性规范,脱离规范很多事情无从下手,再多的防御手段也无法防御来自不遵守规则的破坏。

再者,我们在统一环境标准,应用标准,日志标准上做了很多工作,这对SRE的标准化运作帮助很大。在标准化的前提下,很多自动化工具都可以顺畅的开展。

随后,对于SRE组织来说,我们会有常态化的训练,SRE成员的应急作战训练以及SRE恢复工具的训练(通过故障模拟等手段确保工具的可用性)。

最后,大数据采集,利用大数据驱动SRE,工具的完善配套,让整个SRE体系智能化起来。(同样用故障模拟的方式训练大数据模型的准确性)

从两个维度推进SRE的进步,一个是培养研发人员的“SRE素质”,另一个就是训练我们的工具,在需要时不掉链子。

InfoQ:可否介绍下你们的分层自动化实践?

周志伟:我们的分层自动化有几个切面,从研发过程来看:

  • 研发阶段:有持续集成的单元测试保障方法粒度的质量。

  • 测试阶段:有接口测试保障接口粒度的质量,然后集成测试确保一套逻辑的完整可靠,当然也会有用户体验式的进行交互类的UI自动化测试。

  • 发布阶段:有预发布自动化,针对UI、接口层的自动化保护,对上线版本的质量保护。

  • 生产阶段:有线上监控、SRE大数据分析进行问题的跟进保护,出现问题自动报警。

这一套自动化过程是针对整个研发生命周期和线上运维生命周期的,分层自动化越早介入,风险越低。

InfoQ:在CNUTCon全球运维技术大会上,你将会为大家重点分享哪些技术点?

周志伟:简单来说,主要有以下几点:

  1. 全球网络体系复杂,互联互通问题诸多,如何应对由此带来的网站可用性问题?
  2. 国际架构体系下,全球物理距离使得网络传输时间成为技术难点之一,如何解决可用性和提升全球用户体验?
  3. 如何实现全球多IDC下的异地多活?
  4. 全球多IDC下的数据一致性问题。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT