阿里巴巴集团副总裁周明负责阿里巴巴集团、蚂蚁金服集团,包括阿里云在内的基础设施、基础技术的研发、规划、建设、运营等。周明在2019杭州云栖大会上,深入介绍了阿里巴巴基础设施的挑战以及芯片策略,以下是周明的分享内容文字整理,经编辑。
我从基础架构的规划建设和运营者的角度,谈一下基础设施所面临的挑战,以及从基础设施角度看如何发挥整体的芯片算力及其策略。
首先,阿里巴巴基础设施的现况。阿里巴巴今天已经不仅仅是服务于电商以及蚂蚁金服的金融业务,因为有了阿里云智能也就是把技术作为业务的商业模式,所以我们服务了各行各业,服务企业有上百万家,囊括了互联网、电子政务以及金融等行业和企业。
我们有遍布全球的数据中心,也有百万级规模的在线的生产服务器,是全球前五大的服务器规模。这么大的规模一定就会给带来非常多的挑战,挑战有技术的、也有非技术的,接下来简单讲一下面临的挑战以及做了哪些方面的工作。
首先,我们服务器从10万到100万(百万级),当然今天还没有哪家公司有1000万规模的服务器,千万级规模遇到的挑战肯定是不一样的。当在线生产服务器到达10万的时候,一定要考虑在百万级的时候应该遇到什么样的挑战;同样,当到达百万级的时候,就要考虑千万级将遇到什么样的挑战,技术挑战和运营挑战都是什么,这些都是需要值得我们思考的。
从技术上简单讲一下,我们一定要考虑技术竞争力。首先技术要有先进性,另外还有考虑TCO的成本,如果不考虑成本问题的话,肯定不可能大规模应用。没有大规模应用的话,就认为是技术的自嗨,所以在这里考虑的事情就比较多了,比如考虑大规模的在线管控,肯定不可能人工管理而要高度的自动化,这就可能带来很大的风险,一个bug或故障很可能就会被放大,到底要怎么做,大家可能很多时候就会忽略供应链。
今天阿里巴巴在全中国的一年新增服务器,占到全中国增加服务器10%以上的时候,可以想一下一年增加几十万台服务器是什么概念,可能几天之内就要有多少万台的部署(高峰期时候),供应链就会带来挑战。
我们曾经有过经历,服务器可能要两三个月才能到货,因为用量大,不是几百台、几千台。现在基本上从开始下单到最后可以用,10个工作日就可以全部搞定了,这是我们认为比较经济的时间。
这里其实有非常多的技术考虑,包括如何通过算法做好预测等,包括运维管控中出现的故障、怎么解决用户的期望等。
大家都知道,今天云的客户最希望不管基础设施,只管做好业务就可以了。不管是什么概念呢?就是说这个设备永远不要换,潜台词就是永远不要出现一个故障,最好让客户不知道,但很明显是不太可能的。
另外,资源永远是需要的时候就要有,最好不要告诉客户说服务器没有了、资源没有了、数据中心没有了等等,这个其实也很难做到。
站在我们的角度就要考虑这么多的挑战。
同样,回到今天的话题“算力”,大家都在讲摩尔定律遇到的挑战,计算力是未来。我作为一个基础设施的技术研发、规划工作者,认为计算力绝对不仅仅是计算力,它涉及到计算、存储、互联,涉及到数据中心如何进行有效地结合。
今天阿里巴巴作为互联网企业,更多体现在整个集群上要考虑的事情,就特别多了。比如大家今天都在做异构计算GPU、NPU,这些算力如何与CPU进行搭配是最合理的?
同样,今天大量的数据在计算时需要搬运,搬运数据的时候一定会遇到带宽等问题,也要考虑到搬运数据的过程是否在意延时。
像今天做存储,如果是分布式存储,很明显需要集群网络的性能,这时候网络延时就很重要了,大家都知道TCP/IP协议不太适合低延时,那就要考虑到底是要利用现有的低延时网络协议如InfiniBand、RDMA,或是今天自研一个低延时的网络协议,包括拥塞控制的算法,这些都是非常有技术含量的。
应用中还遇到一些问题,比如今天的互联网公司希望做一个10万台规模的服务器集群,因为它可扩展、利用率高,相当于可以提供很多资源。
网络人员会说,数据中心只要能够承载这么大规模的服务器,网络都可以搞定;而数据中心人员会说,只要网络能搞定,其它都没有问题。
但真正要做的时候,遇到的问题就非常多了。比如从数据中心来讲,最容易想到的是供电,还要考虑每一个机柜多少千瓦最合理(结合应用)。同样,对网络来说,网络设备成本已经占到50%以上,这时候就要考虑到底是全部用相对比较昂贵的长距模块(最简单的),还是通过部署让网络设备更加合理,用的模块距离更短一些、成本更低,整个TCO更有竞争力、每个端口的成本最合理,这些都是需要考虑的。
接下来,简单讲一下阿里巴巴在这些领域里做了哪些工作。
首先,算力方面,平头哥提供了NPU芯片。同样,作为一个互联网公司,大多数时候在基础设施里还是会使用合作伙伴的技术,因为重点在于整体架构、整个系统设计,如何获取最高的能力。所以,我们也会定制化,包括FPGA。今天阿里巴巴在搜索业务上,以前的搜索用的是GPU,而GPU相对比较昂贵,我们在搜索业务用FPGA进行卸载,其实非常不错,但唯一一点就是可能经常会有算法的改变。大家都知道,算法一旦变,做个FPGA、RTL,尽管比ASIC要快,也得花两三个月的时间。这时候我们做了一个编译器层,包括专有的指令集,把一些基本算子先写好,当算法有变化时通过编译器就可以快速地应用新算法。
这样的话,就可以从以前的两三个月,很快缩短到几天的时间,其实现实中甚至不到一天或半天就搞定。
讲一下连接,连接其实贯穿了整个数据中心。从芯片来讲,服务器总线协议、机柜级连接、集群连接等,都需要做非常多的工作。
今天讲一下从节点到集群的工作,中间是今天发布的自研400G DR4硅光模块,硅光模块到今天为止还没有发布400G的。硅光模块有非常大的优点,比如把比较大的光器件做成硅光芯片,这样就能让硅光芯片象集成电路一样,可以快速地设计并且制造,体积更加小而且成本在大规模生产之后会降低,但挑战非常大,包括技术和生态链条上的挑战。如果做光芯片的,肯定会非常知道这里面的艰辛,但阿里巴巴做了并且做成了。我们今天发布以后,大规模使用可能会在明年的下半年。
再往上是DCI通讯,再往上讲一下网络集群,其实是用自研的交换机和OS来组成新的HAIL 2.0集群架构,这个集群架构抛弃了以往的商用交换机架构。
商用交换机核心是机架式核心交换机,我们全部是自研的交换机,自研NOS的好处是规模可以做到很大,可以做到10万台规模以上的集群,同样扩展能力也非常高,就是扩展非常方便。再者比较智能,可以像服务器一样来管理交换机,所以可以自动化的上线。
基本上我们的网络就是自动上线、自动变更,遇到故障时基本上实现的是3分钟恢复,就是1分钟发现故障、1分钟定位、1分钟恢复,这在传统网络设备里还是非常大的挑战,但正是因为我们今天做了这些工作,才有了这样的一个结果。
再讲一下存储,去年我们发布了AliFlash V3版本,自研的SSD也支持了Open Channel的SSD,今年已经大规模用上了。支持Open Channel SSD的好处是通过本地的存储软件,可以直接对SSD进行更加底层的操作,性能更好。同样,AliFlash V5.0也在研发中,会做一些净数据的存储和计算。
同样,我们在服务器领域里也做了从部件到整机服务器架构优化的设计,这是新一代的云服务器玄武,它其实也是一个模块化设计,就是在服务器硬件层面是模块化的,可以*地组合、组装,通过不同的组装之后可以满足不同需求,比如不同规格的计算或存储服务器,从硬件层面都比较方便。
同样,我们也做了边缘云服务器,主要目的是为了快速交付并且快速上云。
刚才讲到了存储、计算、连接,还有一个很重要是数据中心,阿里巴巴在数据中心一直做了很多探索,前两年在千岛湖里做了一个从湖底抽水制冷的数据中心,它的好处是比较环保和节约成本。我们在张北也做了新风自然冷,也是非常环保和节约成本的,但张北还做不到365天,因为有时候与空气质量有关系,因此差不多有300天以上是自然风冷性能。
由于今天数据量越来越大,数据处理也越来越复杂,芯片功耗也越来越多,大家都面临着功耗挑战,这时候就要求单机柜的功率密度,甚至有时候要求高功率密度的机柜,所以我们研发了浸没式液冷的数据中心,今天已经在张北部署了世界上最大规模的浸没式液冷数据中心,我们即将部署在杭州的差不多有两三万台规模的浸没式液冷数据中心。不仅仅是功耗问题,我们也在考虑如何能够把浸没式液冷作为普世性的数据中心。
回到算力问题,架构会带来非常大的改变,会带来E级计算能力,事实上我们也通过各个团队的努力做了512片的训练集群。我们在数据中心领域,在低延时网络、计算、存储、编译器、AI算法等努力下,这个集群取得了很大的效果。
举个例子,比如以前做的拍立淘,之前做一项训练可能需要花两周,而用这个集群可能几十分钟就能搞定了。同样,以前我们做不到100万的分类,今天用这个集群就做到了这么大规模的分类。
总结下来看,计算能力线性的增加是有技术含量的,这个技术含量是需要各个专业深度配合,并且这是有业务价值的,体现在两个方面:一方面,以前需要花很长时间,今天可以很短的时间搞定,让业务快速迭代,尤其互联网快速迭代业务、快速试错非常重要;另一方面,以前做不到的事情现在可以做到了,比如Google发布了一个模型,很多原来根本就没法算,但对我们来说就不是问题。核心就是一点,计算能力线性增长是有技术含量的,也是有业务用途的。
今天我们团队提供的不仅仅是技术,还提供的是生产7×24小时服务,意思是说不仅仅是提供设备,也不仅仅是提供技术本身,而是要提供用于生产的服务。这时候就要管控了,我们做了一个数据中心大脑,干了什么事情呢?首先,是对服务器、网络、机电设备等进行很好的管控,从交付到业务处理,一旦有了故障可以快速恢复,从最开始人工到数据化,从数据化到自动化,从自动化到智能化。其次,是数据中心日常运维现场人员的管理,IT人员、电力设备人员、空调制冷人员等,怎么进行日常工作、做哪些工作,这时候让数据中心大脑提供决策辅助,提供最优决策。举个供应链例子,通过智能算法做好精确的预测,让整个交付准确率很高。
最后,回到今天的主题,阿里巴巴基础设施和芯片策略,芯片非常重要的,没有芯片的硬核计算能力,实际上很难有这么一个未来。
但是要把芯片能力完美地发挥出来,需要各个专业能力包括架构能力等。同时,阿里巴巴也不是所有事情都自己做,我们也坚信不管从应用到系统还是部件到芯片,也要有合作伙伴一起来发挥各个专业能力,从而获得整个系统最优的架构。
最后讲一下,所有这一切都是在客户需求的价值驱动下做的。必须回到我们做的事情到底对客户的价值是什么,解决客户的痛点到底是什么,否则一切都是技术自嗨。(文/宁川)