zoukankan      html  css  js  c++  java
  • 揭秘2019双11背后的云网络 – 双11网络架构和洛神系统

    图1 天猫双11成交额

    2019年天猫双11成交额,2684亿!核心系统100%上云!全球最大流量洪峰,阿里云扛住了。
    

    狂欢背后的技术栈

    网上轻松购物体验实际上是背后复杂的技术组成的,这是一个简化的通用电商系统架构,由很多产品和业务组件组成。

    图2 简化电商系统架构

    这些业务组件核心系统今年100%上云,底层承载的技术就是阿里云的计算,存储,网络,数据库等等一系列产品和解决方案。

    因为处理量非常巨大,这些业务产品、组件和模块之间会采用分布式部署方式,产品与产品、组件与组件、模块和模块之间会存在海量的通信要求,承载这个通信要求的技术平台就是阿里云网络的飞天洛神平台。

    什么是飞天洛神

    阿里云的技术平台叫飞天操作体系,其目标是将一个数据中心,乃至遍布全球的多个数据中心变成一台计算机,对内管理数据中心的服务器和各种物理资源和设施,对外统一的提供公共服务和对应的编程接口。

    图3 阿里云飞天操作系统

    飞天操作系统的内核提供最基础的系统服务,是对基础资源的虚拟化,核心是计算、存储和网络资源的虚拟化,其中虚拟网络服务(如虚拟专有网络VPC,SDN控制器,负载均衡网元等)是由洛神平台提供,总结一句话,洛神是阿里云飞天操系统内核的核心组件,提供了云计算网络的全部功能。

    飞天洛神特点

    洛神伴随着阿里云飞天系统诞生,到目前已经有10年的历史,支撑了阿里云20个region,数百万级别虚拟机之间的如丝般顺滑的访问体验,这些与洛神10年来的技术沉淀息息相关。

    1. 全自研

    目前阿里云网络有业界最丰富的产品,从使用场景角度分为云上网络、跨地域网络、混合云网络和智能网络。

    图4 阿里云业界最丰富的云网络产品

    这些丰富产品基于洛神平台开发,核心业务代码全自研,到目前为止,已经达到数百万行,不管是底层的软件系统,还是硬件设备形态,其技术方案、业务逻辑完全自主设计和开发,所以阿里云的虚拟交换机也称为AVS(Ali Virtual Switch),从转发表项设计,至报文处理,都不同于业界开源的OVS(Open Virtual Switch)。

    2. 软件定义网络

    从洛神诞生的第一天起,阿里云的网络架构遵循软件定义网络的理念,管控和转发分离,网元只负责数据转发,管理配置以及表项由SDN网络控制器生成和下发。

    图5 阿里云软件定位网络架构

    转发网元不管是软件方式,还是硬件方式,都支持可编程,所有业务逻辑都是通过软件代码实现,兼容SDN控制器之间自定义通道通信协议,软硬件一体化,兼容可扩展性。

    3. 海量规模

    阿里云目前有数百万的公有云租户,还有阿里集团这种超大规模的用户,通过海量的虚拟机协同完成丰富的业务。量变引起质变,洛神平台要支持这些海量租户,海量虚拟机之间的网络通信,网元的管理,表项下发性能,数据转发性能不是小规模网络可以相比拟的。目前实际运行环境,洛神已经支持单租户超过10W+虚拟机实例、单租户100G+公网带宽、单租户20T+混合云带宽。

    飞天洛神如何支撑双11

    “不是任何一朵云都能撑得住双11”,阿里集团核心系统首次100%运行在公共云上,54.4万笔/秒的订单峰值,970PB的单日数据处理量是承载在虚拟化的分布式系统上的,分布式节点之间的通信,依赖的就是底层的云网络基础设施,就是洛神平台提供的能力。
    双11对云网络,对云网络的技术平台洛神有哪些具体的挑战,洛神如何支撑的呢,让我们一一揭秘。

    1. 超大规模

    阿里集团核心业务全面上云,随之而来的最大的挑战超大规模。2018年双11云上单个VPC的规模已经接近10w,今年还需要成倍增加,达到单VPC 30w的规模,业界有如此规模的用户屈指可数,基本集中在个别超大规模互联网公司,但不管是否自身就是公有云提供商,都没有将自己的核心业务部署在公有云上,所以单个VPC支撑如此规模的虚拟化实例,没有先例。同时在转发带宽的要求上,去年整个云上公网和跨域出口流量5Tbps左右,今年这个流量增长到了数十Tbps。

    网络设备逻辑上包括管控和数据转发两个组成部分,首先在管控层面,集中式的SDN控制器使用传统方式,转发表项的下发性能会很低,结果会导致虚拟实例的上线速度很慢,影响业务开通效率,包括业务切换效率。洛神的管控系统采用集群和分层架构,集中能力提升的同时,将大量虚拟实例上线的处理下层,大大提升管控配置和表项的处理性能。

    图6 洛神分层管控架构

    数据转发层面,洛神提供了软硬件一体化的技术架构,虚拟交换机在传统DPDK架构基础上进行了升级,支持可编程硬件实现的快速转发。

    图7 基于可编程硬件的洛神虚拟交换机

    基于可编程硬件的虚拟交换机相对于传统软件虚拟交换机,转发性能提升达到10倍左右,时延降低1倍以上。公网和跨域带宽的快速增加,也对DPDK虚拟网关的性能提出了极大挑战,一方面是设备规模的增加,导致管理复杂度,供应成本的增加,另外CPU单核能力的约束,无法支撑某些突发和大带宽单流的场景,影响其它正常流量的通信。

    图8 阿里云洛神软硬件一体网关

    在虚拟网关上,通过技术架构的升级,支持软硬件一体化的硬件网关,业务逻辑通过可编程的P4语言实现,对外接口兼容软件虚拟化网关,实现统一的扩展性。可编程硬件网关相对于传统X86软件架构,转发性能提升数十倍,同时有效避免了大带宽单流对单个CPU core的冲击,整个双11期间的流量洪峰在整个洛神软硬件一体化架构下,呈现出来的是“涓涓细流”。

    2. 稳、稳、稳

    阿里集团核心业务100%运行在公有云上,稳定性是第一要素,容不得半点差错,不仅仅单个节点的稳定性要做到极致,整个网络架构,解决方案层面也要保证绝对的稳定,做到多重防护,万无一失。洛神平台,架构层面保证网络通信的稳定性,业务按AZ(Available Zone)部署,公网和跨域访问的网关在可用区内集群部署,避免单点故障的影响,同时在可用区之间互为备份,避免可用区的故障。

    图9 洛神网关类设备可靠性部署架构

    3. 复杂流量模型

    整个阿里巴巴经济体的业务系统非常复杂,不仅仅包括电商购物系统,还包括蚂蚁支付系统,还有大数据分析系统,菜鸟物流体系等等,不同的系统对网络通信需求的要求也不相同,业务流量的优先级也不一样,有些对延时敏感,有些对带宽要求高,有些对丢包敏感,这些纷繁复杂的业务如何在统一的底层云网络中承载,对云网络的技术平台洛神提出了区别普通公有云租户的不同挑战。以阿里集团在线业务和离线业务为例,离线业务主要就、是大数据,熟悉的人可能都比较清楚,大数据的出名的流量大户,经常会有一些突发的流量将物理网络的带宽占满,导致丢包,而在线业务一般流量不大,但对时延和丢包敏感。这就要求云网络支持流量等级区分,拥塞是优先丢弃低优先级的流量,保证离线和在线业务的和谐共处。

    图10 业务对网络的差异需求

    云网络洛神平台支持不同业务的QoS,对于大带宽、丢包非敏感业务,设置通信报文低优先级,突发流量不会导致高优先级报文被丢弃,复杂的流量模型也能“和平共处”。

    4. 高效运维

    物理规律决定了没有100%可靠的网络,一方面阿里云网络追求最高的可靠性,一方面遵循没有永远不失效的单点逻辑这个规律,故障一定会发生,无法避免,但需要有故障发生时快速恢复,快速定位的能力,在双11之前的各种压测和故障演练之中,洛神平台不断的锤炼网络运维能力,做到故障快速监控,快速恢复,快速定位。阿里云网络洛神平台的运维,运营平台,内部叫齐天系统,这是一个分布式,大数据智能化运维系统,通过大数据,AI分析能力,集合阿里云海量数据,实现故障的快速定位和逃逸。

    图11 阿里云齐天智能网络系统架构

    通过底层网络网络和虚拟网络数据流,日志,设备状态等等数据信息,通过以blink为底座的大数据分析平台,在业务方感知故障之前,快速判断网络的监控状态,以及快速识别故障的根因,实现故障的自动逃逸。同时每种典型故障,都录入到日常故障演练中,做到网络运维的真正高效,随时可用。智能的网络,也是阿里云洛神平台保障双11业务的一个利器,为双11的平稳保驾护航。

    洛神还在不停的进步,从最初的洛神1.0 DPDK网元演进洛神2.0软硬件一体化网元,网络能力有了质的提升,支撑了阿里集团核心业务的100%上云,未来在弹性、开放能力上会更进一步,提供给用户更加美好的体验。

    本文作者:瑄珉

    原文链接

    本文为云栖社区原创内容,未经允许不得转载。

  • 相关阅读:
    将Nginx添加到windows服务中
    springboot使用redis管理session
    GIT常用命令
    阻止360、谷歌浏览器表单自动填充
    谈谈对Spring IOC的理解
    同一个Nginx服务器同一端口配置多个代理服务
    LeetCode 653. Two Sum IV
    109. Convert Sorted List to Binary Search Tree(根据有序链表构造平衡的二叉查找树)
    108. Convert Sorted Array to Binary Search Tree(从有序数组中构造平衡的BST)
    LeetCode 236. Lowest Common Ancestor of a Binary Tree(二叉树求两点LCA)
  • 原文地址:https://www.cnblogs.com/zhaowei121/p/11957812.html
Copyright © 2011-2022 走看看