阿里云的故事,故事有点长,你有酒吗
文/史中
来源:浅黑科技(qianheikeji)
世事安稳,岁月静好。
电影里才有疯子。麦克墨菲在疯人院里带领一群精神病人揭竿而起,怼天怼地;饿了三天的黑皮为了抢一口面包被店主追上高架桥,末路狂奔;杰克和泰勒在午夜的搏击俱乐部里挥拳相向,鲜血淋漓。屏幕对面,我们把爆米花塞进嘴里,哭成狗或者笑成狗。电影散场,各自回家。
真正的疯子,从来不看电影。
他们把别人的目光变成聚光灯,把自己的生活变成真人秀,手提钢刀用肉身串演一个浓重的角色。他们的人生结局无外乎两种:黄.袍加身,或者玉石俱焚。
阿里云这群疯子,就用56度的荷尔蒙,在横跨十年的悠长画布上涂抹了这样一个故事。
(1)一个大问题
2008年9月,王坚加入阿里巴巴。
马云把他从微软亚洲研究院常务副院长的位置挖来,是因为阿里巴巴面临一个重大的危机——公司的“脑力”快不够用了。
阿里巴巴的“脑力”,其实就是“计算力”。
几亿用户无论是在淘宝剁手,还是支付宝上转账,这一切都要靠巨大的计算力来思考、记忆。
恰恰和人一样:
如果这个“大脑”记忆被填满,就没办法储存新的商品和交易记录。
如果这个“大脑”思维速度跟不上,就没有办法让用户及时下单、付款。
2008年,中国虽然已经加入WTO,还把国际友人请来热热闹闹地开了一次奥运会,但在科技领域仍然是个标准的“三无”国家:没有自己的操作系统,没有自己的芯片,同样没有自己的计算力系统。所以,购买国外成熟的设备和系统,几乎是BAT和所有大国企的唯一选择。
国外的东西,无外乎“IOE”这三样标配:
I(IBM,服务器提供商,他们提供的服务器俗称“小型机”)
O(Oracle,数据库提供商,他们的软件是著名的“甲骨文商业数据库”)
E(EMC,存储设备提供商,他们提供的是“集中式存储”)。
鲜有人知,那时的阿里像依赖氧气一样依赖IOE。
一个支付宝的同事给了我翻出了当年的数据:2008年,在阿里的IT架构中,淘宝和支付宝使用的绝大部分都是IBM小型机、Oracle商业数据库以及EMC集中式存储。
当年用户激增,数据越来越多,每天早上八点到九点半之间,服务器的处理器使用率都会飙升到98%。离爆棚就差两个百分点。
阿里巴巴就像赛道上的跑车:速度飞快,但引擎已经发红,再踩几脚油估计就要冒烟,后果不堪设想。
可能连马云自己都没有想到,阻碍阿里巴巴增长最迫切的阻力不是商场上的博弈、不是政策的变化,而居然是IT基础设施的瓶颈。
怎么办?花钱继续买服务器和软件啊!
这话听上去没错。但是有两个小问题:
一个问题是太贵。
那时候小型机价格大概是从几十万到百万人民币;商业数据库软件费用差不多几千万,外加一大笔维护费。王坚08年刚来阿里时就给马云算了算,按照这样的速度“剁手”,光是买机器和软件就足够让阿里破产。阿里得找到一种成本更低的技术架构。
另一个问题是不好用。
阿里在08-09年的时候,业务增长速度实在太快。每年都是十几二十倍,IOE虽然都是美国公司,但事实证明美国的月亮也不会更圆。它们的系统并没有经受过服务几亿人这么大规模的考验,此时已经变得非常难用了。
2008年中旬,马云召开了内部会议。事情已经刻不容缓,要研发一套新的技术架构来换掉阿里巴巴的旧引擎。
这个新的计算架构应该是什么样呢?
首先,它要便宜。
就像一日和三餐一样,无论去哪家餐厅,都不如自己做饭更实惠。长远来看,自己开发一套计算架构显然是最经济的。
其次,它要好用。
为了满足阿里巴巴庞大的计算任务,这套系统至少要比IOE表现更好,能同时调度数千台计算机,组成一个巨大无比的“大脑”。
于是,“阿里云”这个词,第一次出现在公司高层的话语里。而王坚,加盟阿里巴巴之后的职务恰恰是“首席架构师”,他的使命就是从零开始建立这个云计算系统。
王坚
王坚是个理想主义者。
在他丰满的理想中,这个新架构的每一行代码都要自己来写。但现实骨感:环顾四周,他身边除了几位从微软带来的旧部,几乎一无所有。
2008年10月,这个想象中属于中国的云计算系统被团队定名为“飞天”,源自中国神话中的形象。
后来人们说,阿里云是技术驱动型的企业。不过在我看来,最初阿里云应该是起名驱动型的企业。名字倒是起得不错,但作为“三无”国家,底层科技起步较晚的中国在对美国的复杂计算机系统的战争中,几十年都未尝胜绩。
中国人研究的云计算,会“飞天”还是“坠毁”,旁人心里多多少少是有判断的,只是不便明说。
说回这个疯狂的计划。
飞天相当于一个发动机的,而时间紧迫,阿里巴巴准备同时做两件事:一边制造发动机,一边为自己的主力业务淘宝网顺便造一个整车出来。
当时,淘宝网在计算力方面的主要需求就是“大规模数据计算”。所以,用飞天为淘宝造“大规模数据计算”制造整车的计划就被定名为“云梯计划”。
实际上,“云梯计划”关乎阿里的生死,不是儿戏。思来想去,公司内部还是做了两手准备:
1)用一些已有的开源软件为基础,研发一个数据计算系统,这是“云梯1”计划。
2)而以“飞天”为基础,纯自研一套数据计算系统,被定为“云梯2”计划。
彼时绝没人想到,五年后的那个下午,这两座通向顶峰的云梯会用怎样的姿态占据画面的中心。千军万马雄列两旁,目睹荣耀的火焰和退潮的海水。
历史就这样以汹涌的姿态,向那些准备好的和没准备好的人敞开。
2009年 阿里云成立
(2)招兵买马
满弓是阿里云的第六位工程师。
招他进来的,是王坚在微软的旧部,阿里云的第一技术负责人林晨曦。面试结束时,林晨曦歪嘴一笑,提醒满弓:“你加入阿里云之后,要做好随时出差的准备。”
果然,满弓签完入职合同当天下午,就被“附赠”了一张火车票。他要去天津帮助招聘。
满弓这样回忆十年前的那个下午:
“阿里研发院”2008年10月才成立,已经错过了招聘季的黄金时期。但是我们又确实太需要人才了,于是刻不容缓,要再扫荡一下那些大学,把“漏网之鱼”打捞回来。
2009年 阿里云的招聘海报
跟着阿里云的招聘队伍,满弓跑遍了全国主要的几大城市十几个学校。每到一个学校,只呆三天。
第一天做宣讲,然后马上笔试;第二天统一面试;第三天发Offer。
彼时的阿里巴巴已经很有名气了。很多错过招聘季的同学喜出望外,一时间各大学校风起云涌奔走相告齐来应聘,虽然从招聘者到应聘者,都没见过云计算长什么样子。
由于招聘人手实在太少,面对堆积如山的笔试试卷,满弓他们根本判不过来。焦头烂额的满弓擦汗时一回头,看到了同行的HR小姐姐。满弓两眼放光,二话不说把她们揪过来,一晚上就教会了她们如何判卷。
当时判卷的场景
经过这样“连滚带爬”的招聘,到了2008年年底,阿里云凑够了了三十位工程师。
话分两头。
下有林晨曦招兵买马,上有王坚每天“画饼”。
马云深受王坚鼓舞。虽然不懂技术,但是他逐渐发现,云计算这件事情的价值比一开始想象中的要大得多。
这是因为云计算系统会制造出一种具有极强弹性的计算力。这样的计算力一方面可以为阿里巴巴添置家当,另一方面还可以“批发零售”给无数中小企业,为未来世界建设了一整套“基础设施”。
这样来看,就把“独善其身的工具”变成了“兼济天下的生意”,这不正是马云创建阿里巴巴的基本信念吗?
从这一刻开始,马云就对阿里云寄予重望。只要有空,就到阿里云的团队里和林晨曦、满弓这些工程师们一起聊天讨论。
马云、王坚 和工程师们的合影
然而,事情发展到这里,就开始有些错位了。
阿里的很多的业务部门希望的是稳定地在现有系统上加以改进,最好别冒太大风险;
但飞天团队却黄巾高擎赤膊上阵左右开弓,想依靠一己之力,开发出一套改写世界历史,可以让中国人扬眉吐气的完美云计算系统。
刚才我说阿里云是“起名驱动型的公司”,你看看这帮疯子给飞天内部模块的命名,就知道他们心里在想什么了:
分布式存储的系统,就像大地一样承载万物,那就叫“盘古”。
调度系统,需要“能掐会算”,就用懂得阴阳八卦的“伏羲”命名。
结构化存储系统,就用会盖房子的“有巢”。
网络通信,就用追日的“夸父”。
等等。
飞天团队一片斗志昂扬。
其他部门的很多领导层,用半信半疑外加慈爱的眼光看着他们。
(3)淘宝的一场战争
时间不等人,转眼到了2009年。
在隔壁淘宝网的普通员工中,有人在“隔江犹唱后庭花”,有人却已经感到“山雨欲来风满楼”。
2009年,小邪刚刚加入阿里一年,在淘宝网参与系统研发。当时他和同事都感觉到,淘宝网面临的矛盾非常明显:
业务并不赚钱,09年只有一个季度勉强盈利。而赚来的这点钱,眼看都要填进去购买服务器和软件产品,入不敷出。
小邪记得很清楚,他昨天刚听说隔壁阿里云准备搞云计算,今天就迎来了一个“特殊的客人”。
林晨曦走到淘宝网技术团队面前,搬个板凳兀自坐下:“你们淘宝的大数据系统用我们的阿里云架构吧。”
“代码已经写了多少?”小邪问。
“几行吧。”林晨曦说。
事情就这样定下来了。
云梯1、云梯2,两套系统一边搭建,一边在淘宝内部实验,一边承担部分计算任务以缓解现有系统不足的压力。
当时淘宝技术保障数据库管理员的负责人是后羿。他几次欲言又止,还是硬着头皮在内部会议上宣布了这个消息:淘宝要放弃Oracle,转投自研的数据库架构了。
结果,八十多个Oracle工程师把他堵在会议室里。“你再说一句试试?”
他们的愤怒完全合情合理。“如果上边铁了心要干,兄弟们的前途在哪里?”
最终,一场恶斗转化成了几十个工程师坐在会议室促膝谈心。技术人是讲理的:淘宝已经这么大了,如果现在不刮骨疗毒,自己砸自己的饭碗,将来整个淘宝都会命悬一线,到时候大家还不是沦落天涯。想通了这些,工程师们也冷静多了。
这八十多个工程师里,包括后来的阿里技术保障部负责人振飞。振飞站出来说:“好,让我们学新技术可以,但是咱们拿事实说话。你后羿敢不敢跟我打个赌?以三年为限,用新技术的淘宝核心交易系统必须达到零故障!”
后羿咬咬牙,敢!
但后羿一个人的分量还远远不够重。毕竟淘宝上有这么多业务,这么多买家,这么多卖家,万一数据迁移失败,谁来负责?时任淘宝技术总架构师行癫(现任阿里巴巴CTO)见状,把心一横,宣布自己和部门也愿意站出来,共同承担技术风险:“干好了我们大家荣誉等身,干坏了要杀要剐我来扛!”
看到行癫都赌上了自己的身家性命,也就没人再说什么了。
2009年秋天,轰轰烈烈的IT架构升级项目在淘宝网正式启动。一群Oracle工程师,就这样含着泪,一点一点亲手拆毁自己安身立命的系统。
(4)荒野求生
林晨曦用来“忽悠”淘宝网的“几行代码”,是在北京写出来的。
2009年春节上班第一天,在北京上地的汇众大厦203这间连暖气都没有的办公室里,一帮工程师一边口呼白气,一边敲出了“飞天”的第一行代码。
飞天的第一行代码
说起来,这个地方算是阿里云最早的办公室,但是门口也没个牌子。直到半年后他们搬出大厦,保安都不知道这帮神神叨叨的人究竟是干什么的。(不过十年后的今天,他们的手机里的很多App也许都跑在阿里云的服务上。)
每天,工程师们除了噼里啪啦写代码,还得顺便“荒岛求生”——自己订水、买垃圾桶、修桌椅板凳、修无线网,连茶叶和咖啡都是从自己家带来的。
不过,他们坚信自己在做的事情还是挺伟大的。“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”角落里有人瑟瑟发抖地说。
那个时候的他们,看上去和一帮戴着眼镜的教徒无异。
时间马上又到了夏天。北京的夏天,你懂的。当时测试系统的服务器就架在办公室里,这就是个巨大的火炉。大厦的空调不行,还没到七月份,程序员就热得撑不住了。为了降温,每天上午他们都叫冰场送两大块冰来。
有一次周六,马云来北京,专门到阿里云的办公室去看看。林晨曦赶紧想打开电脑给马老师展示一下自己团队的成果。结果按了半天开关,机器都没反应。他才发现大厦停电。。。马云就这样坐在办公室等了半个小时,直到物业恢复供电才一睹阿里云飞天系统最初的芳容。
王坚跟马云说,这帮人很能干,每天晚上都加班。马云惊了,在这种地方还能加班??没过几天,阿里云就搬出了这幢大楼,进入了有空调的办公室。
同事们往办公室里运冰
(5)神坑,阿里云
金融大咖胡晓明,2005年加入阿里,以办事雷厉风行闻名全集团。
2009年6月,马云找到胡晓明,准备交给他一个大任:内部创业,做阿里金融的总裁。
胡晓明信心满怀,准备撸起袖子说干就干。不料,马老师悠悠地说,不要急,你要先答应我两件事。
马云:第一件事,你只能做100万人民币以下的贷款生意,帮助像当年的我一样借不到钱的创业者。
胡晓明:理解,这没问题。
马云:第二件事,你必须跟刚成立的阿里云绑在一起,用他们的技术架构支撑你的服务。
胡晓明:纳尼??!!
这两件事,胡晓明最终都答应了。不过阿里云这帮看上去疯疯癫癫的人,他们技术到底靠不靠谱,胡晓明可是真没底。
金融不像别的业务,这可是一个数据都不能错,一个字节都不能丢。按照“行业祖训”,打死都得用IOE这些国外大厂的基础设施,现在可好,却非得用听上去就让人怀疑的“阿里云”。。。
“明明可以坐高铁,却偏偏要骑自行车去上海。”当时研发工程师王国涛的吐槽,代表了很多阿里金融同事们的心声。
但马老师肯定有马老师的道理。阿里金融的同事们只能硬着头皮跟阿里云的朋友们握握手。
“牧羊犬”是阿里金融的第一个产品,简单来说就是给淘宝商家贷款的项目。吐槽王王国涛回忆:“当时阿里云一边搭建飞天平台,我们就一边在飞天上面开发牧羊犬应用。这就像是开发商一边在造房子,我们一边在室内装修铺地板。”
飞天果然不负众望。
数据传输问题、计算稳定性问题、处理速度问题一样都不少,翻版篆版梅花版的错误层出不穷,各种Bug形式翻新,永不重复,这叫一个皮。。。
阿里金融的工程师必须24小时盯着系统,才能防止酿成大错。当时情况危急到了什么程度呢?一位奶爸工程师为了值夜班盯系统,把自己小孩的哭声设成了闹铃。因为只有听到这个声音,他才能在无论多困的情况下从床上弹起来。。。
这段时间,提到阿里云,阿里金融的程序员们都是“眼睛干干的,有种想哭的心情”。他们的经典吐槽大概是这样:人家的是云计算,我们家的是“人肉云计算”;人家的是“分布式计算”,我们家的是“分步试计算”。。。
作为合作伙伴,林晨曦每天的表情都有点儿尴尬,出则满脸堆笑地帮阿里金融排除Bug,入则愁容满面地和同事们一起修改代码。
眼看就要过春节了,两个项目都快撑不住了。
被“猪队友”坑得够呛的胡晓明气鼓鼓地带着核心骨干跑到王坚办公室门口“讨说法”。胡晓明这个人,是出了名的“只要认定的事情就一定要办成”,大有在王坚办公室打地铺静坐的架势。王坚无奈,派出所有的技术工程师,驻扎在阿里金融的现场加班开发,只为了“让兄弟团队能过个好年”。
好不容易捱过了2009年,春节过后,阿里云发布了一次大版本升级。升级完成的一瞬间,空气突然安静了:
飞天系统稳定得不像阿里云的作品……
阿里金融从一口口呛水的状态,一下子冲出海面。
巨大的计算力让阿里金融实现了“秒级”放贷。这种技术进步让“小额多次放贷”成为了可能,这就让阿里金融几乎等于开挂,不良贷款率远低于传统金融机构。也正是因为阿里云“高效低价”的加持,单账户每年的IT成本可以控制在1元以内。
阿里金融,成为了后来的网商银行。他们就这样无意间成为了中国第一个上云的银行。
胡晓明内心OS:宝宝心里苦,但宝宝要笑T_T...
(6)“骗子”王坚
解决了稳定性,阿里云就像抓住了救命稻草,总算可以暂时喘口气。
这些成绩,也已经成功引起了其他公司的注意。于是2010年,在阿里巴巴出发两年后,很多大公司纷纷着手研究自己的云计算技术。
但所有人都没想到,有一只巨大的怪兽正在必经之路上静静等待着。
这只怪兽名为“5K”。
你还记得“云梯1”和“云梯2”两个项目吗?此时,终于轮到他们唱主角了。
两座云梯,就像“争夺家产”的两兄弟,规则很明确:
1、要想成功肩负起阿里巴巴的底层计算系统,就必须有能力独自调度5000台服务器。
2、两兄弟谁先跑到5000这根线,就“赢者通吃”,继承家业。
而5000这个目标,就写为5K。
目标就摆在这,但无论是“云梯1”还是“云梯2”,都死活达不到这个指标。
李超是飞天伏羲调度系统的研发工程师。他用苦逼来形容自己的2010到2012。当时他带着同事们没日没夜地加班,收获的就是一个接一个的系统错误。
就这样,一年过去了,两年过去了。
王坚是一个性情温和的人,但是那段时间,他几乎天天跟团队拍桌子。
满弓回忆,每次一开会大家都会把桌子收拾干净,把水杯什么的拿走,以防出现“事故”。
我记得有一次博士(王坚)很生气,砰砰地拍手机。有一个工程师实在受不了了,说博士,你拍的是我的手机……
现实不是小说。神兵天降和剧情反转并不存在。纵然他们几乎尝试了所有可能的技术策略,但就是没有一种方案可以成功调度5000台机器。
2012年底,以开源软件为基础的“云梯1”计划实现了4000台集群调度,而阿里云团队更看好的纯自研的“云梯2”还在1500台集群的数量徘徊。
越是困难时刻,越会产生分歧。
实话实说,当时大多数的技术大牛,都觉得用经过全世界验证的Hadoop为基础的“云梯1”更有希望,对“云梯2”嗤之以鼻。而阿里云这帮人就是不认,因为根据他们的推断,Hadoop在4K到5K的路上,肯定会遇到一个不可逾越的沟壑,于是倔强地带着团队大举投入“云梯2”。
在一片质疑和争吵中,“最寒冷的冬天”就这样降临了。
1934年到1936年,从苏区出发到陕北会师,三年长征,工农红军从8万人锐减到3万人。
从2010年到2012年,在阿里云最艰苦的长征三年,“战损率”只多不少。
由于没有成绩没有进展,连续几年阿里云整个部门都在集团拿最低分。
满弓、李超他们开始收到团队同学的辞职书,林晨曦也收到了部下的转岗信。这些邮件,最终都一封不少地塞在王坚的邮箱里。
一般来说,三年时间足够判断一件事情到底靠不靠谱。“世界末日”那年,人们几乎已经认定了阿里云不可能做出一套云计算系统了。不仅如此,很多阿里的同事都叫王坚“骗子”。开始大家还在背地里说,后来,大家都不再忌讳,公司里流传着很多骗子王坚的笑话。“一个学心理的博士居然当上阿里巴巴的CTO,心理学学得真好啊!”
无论是“伏羲”还是“盘古”,这些开天辟地的名字,此时都成为了阿里云这些人要满足“个人野心”的明证,成为了狂妄的代价,成为了“不自量力”的耻辱。
当时内网论坛里对阿里云和王坚的吐槽
满弓、李超、飞天总架构师唐洪、林晨曦,他们每天都是低着头上班。今天,左边的工位空了,明天,右边的工位空了。。。
“谁也不知道王坚当时帮我们抗了多大的压力。。。”李超回忆起那段日子,只说了这么一句话。
眼看阿里云成立就要满五年了,集团里却风言风语地传着“阿里云要被撤掉”的消息。
某一天,马云突然召集阿里集团高管开会,所有业务部门的负责人都估计是马云要宣布关掉阿里云的消息,于是纷纷带上自己的技术负责人参会,准备一声令下,就瓜分阿里云的技术人才。
在2012年的阿里云年会上,王坚走上台,他紧紧攥着话筒,几次抬眼望向远处,几次欲言又止,最终泣不成声。这个曾经扬言要用一己之力把中国云计算镌刻在世界科技史上的“疯子”,就那样孤零零站在原地,面对台下黑压压的一群错愕的人。仿佛无数时间的列车在他眼前呼啸飞逝,而他手里没有握着任何一张车票。
这是阿里云故事里最为人所知的一个细节。但我猜很少有人记得,王坚一边哭,一边说了什么。
他说:“这两年我挨的骂甚至比我一辈子挨的骂还多。但是,我不后悔。只是,我上台之前看到几位同事,他们以前在阿里云,现在不在阿里云了…”
就像王坚的一位老部下把辞职信交到他手里时,对他说的那样:做云计算的感觉就像集体合围抱一棵大树,谁都知道最终大家的手会连在一起,但谁也不知道那一刻会发生在什么时候。真的真的对不起,我撑不住了。。。
如果把阿里云所有曾经的员工加起来,可能是现在的好几倍。有太多太多的人都在那段暗淡的日子里离开了。这不怪他们,任何一个能认真判断利弊的人,也许在那时候都应该离开阿里云。也许只有“疯子”,才会选择留下。
就在阿里云最危急的时候,好友朱珑找到林晨曦,鼓励他离职创业。但林晨曦给朋友撂下一句斩钉截铁的话:“现在我绝对不能走。如果你想等我创业,先让我把阿里云扶上正轨。”
阿里云苦苦撑着,人心飘摇,流言四起。
流言终于传到马云耳朵里。
“我每年给阿里云投10个亿,投个十年,做不出来再说。”他对着阿里巴巴集团所有人,斩钉截铁地说。
这一句话,让所有的流言顺次平息。
在阿里云年会上,马云做了这样的独白:
“我知道,所有留下来的人其实是真正阿里云的精髓。
有的时候不是你技术有多强,而是我们有多团结,互相多配合,多支持,多理解。
换任何一个公司,吃不消内网上那么多人骂的,我有一段时间也是特别替大家难过,就像我骂儿子可以,我打儿子可以,不允许别人骂我儿子的,要不然我要翻脸的。
我没有想过公司内部对阿里云有那么大的意见,我真没想到。但是你们都扛过来了,这是我深以为傲的,如果你们能抗得过内部人骂,抗得过那么多人指责,我们还有什么扛不过未来五年的发展?”
李超给我看了这张照片。
这是当年参加5K项目的同事。他说,这些人中现在只有十几个还在阿里巴巴。
李超又给我看了另一张照片。
阿里云成立满六年的时候,为所有从第一年走到现在的员工做了一个人偶。所谓的“所有”,只是眼前这五个人偶。满弓和李超就在其中,他们相顾一笑。
这场长征,从摩肩接踵走到踽踽独行。年轻的人们为了共同的梦想相互温暖,又难免为了各自的梦想互道珍重。只是那些曾经鲜活的伙伴,就这样成为离去的背影,越走越远,消失在视野里,也消失在生命里。
再多情的看客,恐怕也难解其中滋味。
(7)5K
阿里云的神坑,不仅“坑”了胡晓明的阿里金融,也在“坑”淘宝网。
之前说过,淘宝网从2009年就开始了“云梯计划”。到了2012年,局面变得有些尴尬:
1、无论是云梯1和云梯2,都没有冲上云计算的技术标准:5K的规模。
2、虽然没达标,但是淘宝网没有选择,只能“赶鸭子上架”,让两架还在试验中的云梯承担一些重要负载。
被刀架在脖子上的行癫心急如焚。
2013年3月28日,一封来自集团技术保障部架构师云铮的邮件直达高层:
按照数据增量与未来业务增长的情况,云梯1和云梯2两套系统的存储和计算能力将在今年6月21日到达瓶颈。
到那时,数据业务将会停滞,淘数据,量子能业务都会受到影响;阿里金融的贷款业务将因为无法进行信用数据运算而中止。
这一天终于来了。人们洪水般的“买买买”为阿里巴巴划定了Deadline。要想维持正常的业务,他们必须在不到三个月的时间里解决问题。
这个时候,把飞天推上5K,几乎已经是唯一的选择了。事到如今,这已经不是阿里云自己的战斗,而是整个阿里巴巴集团的“背水一战”了。
在这个关头,阿里云需要集团所有人的帮助。
各个部门的技术大牛迅速组成增援大军列立山头,旌旗飘扬。但是在进入战斗序列之前,一个纠缠了各路大神五年恩怨情仇的问题必须有个了断:
最初,因为要做两手准备,以Hadoop为基础的“云梯1”和以飞天为基础的“云梯2”一直并行。这个时候,时局已经紧迫到不允许团队分流,他们必须抛弃掉一个云梯。
抛弃哪个?
云梯1,依靠开源技术,更加成熟,但几年的实践证明,把它推到5K有明显的的技术瓶颈。而且,最核心的技术转向开源系统,也许会让阿里巴巴在未来遇到更多技术制约;
云梯2,自研技术,难度更大,但它的架构和代码都是基于阿里自身诉求而设计的。自主可控的5K一旦成功,就会打下阿里巴巴下一个十年的江山。而一旦失败,后果也将不堪设想。。。
此时做出任何抉择,都会彻底改变阿里巴巴的历史。但历史又只在彼时彼刻给阿里巴巴一次机会,开弓没有回头箭。所有人的目光都看向王坚。
王坚说了两个字:“飞天!”
再没有一句质疑,再没有一丝埋怨。那些曾经看好或者不看好飞天的技术大牛,这个时候撸起袖子一齐杀了进来。
核心技术系统的正明团队,全员投入5K的攻坚战;负责应用集测测试的许呙兢,在得知调度系统的日志自动收集和分析工具缺口严重,二话没说主动请缨;褚霸、多隆、长仁这些分散在各部门的的技术牛人也都冲进来了。各路神仙在这几个月亲近得不分彼此。
褚霸回忆当时的场景:“早上9点进入项目,11点我们就开始解BUG。”
就连在电梯里,都会人问阿里云的同事“最近怎么样?需不需要帮忙?”他们来自一些兄弟团队,有负责安全的,有负责集成测试的。
阿里云自己的同事更是全力冲刺。
新员工刚刚入职,就立刻被派往“战场”。本来是北京分公司的员工,入职之后直接拉到杭州帮忙5K项目。都加入公司两个月了,还不知道自己北京的工位在哪里。
而一位叫做李泉的同事,连续几个礼拜连轴转,半夜两三点被叫起来解决问题,早晨八点又出现在工位上。被同事封为“李铁人”。
在最后的测试阶段,杭州和北京两个办公室的同事电话24小时通着,人可以轮班休息,电话不能掉线,那部用来接听的电话都烧得滚烫。
就这样,一行行代码累积起来,在赛博世界的疆土上一眼望不到边界。他们交错重叠,像从白垩纪开始慢慢累积的地层。直到这片大陆,终于浮出海面。
2013年6月底,5K进入了最后的稳定性测试。
怎么测试系统的问题定性呢?之前带领“八十勇士”围攻后羿的振飞,提出了一个真·钢铁直男的测试办法:拔电源。
他的理由是:“如果这种突然暴力断电都能撑得住,阿里云还有什么不稳定的呢?”
拉电的同学反复问了三遍:拉吗?拉吗?拉吗?最后才颤抖着双手拉下了电源。
这一刻,时间停止了,只有机器重新启动的声音。
四个小时以后,当系统完全恢复运行的时候,很多阿里云同事的背后,已经被冷汗打湿了。经过系统自检,一切正常。虽然还有十台服务器光荣就义。但是,数据毫发无损!
这一刻,在场见证的人都明白:成了。
所有的技术路线之争,所有的进退成败之辩,所有的隐忍委屈不甘,所有的怀疑嘲讽忧虑,就在此时此刻突然画上句号。
盛夏的杭州,阿里巴巴热血翻涌,阿里云的“疯子”们却心如止水。
(8)阿里云这群疯子
阿里云,成为了中国第一家拥有完整云计算能力的企业。
2015年,在计算界的奥运会Sort Benchmark中,阿里云计算100TB数据排序只用了不到7分钟,把 ApacheSpark之前创造的23分钟世界纪录一下子缩短了一多半。这说明,中国人研发的云计算系统不仅成功了,而且不比世界上任何现存的云计算系统差。
成功登顶的“云梯2”,后来更名为ODPS,“加冕”成为了阿里巴巴各项业务通用的大数据计算平台。
ODPS验证成功之后,阿里立刻启动“登月计划”,把所有的数据和计算都迁移到飞天为基础的系统上,全盘替代IOE和云梯1。2013年5月,阿里巴巴最后一台小型机下线。7月,淘宝最后一个Oracle数据库下线。阿里巴巴这台战车,用了五年时间,在超高速行驶中,没有踩一脚刹车,成功更换了发动机。
因为突破了技术瓶颈,在5K之后,ODPS只用了几个月就冲上了单集群10K,进而实现了无限制扩展。到2018年,已经更名为MaxCompute的ODPS达到了数万台的规模。
哦对了,还有一件小事。当年振飞和后羿的那场“世纪赌局”,后羿赢了。用了三年时间,新的淘宝核心系统果然实现了零故障。
这段时间,阿里云也迎来了两个变动:
2012年秋天,林晨赴约去创业。提及过往,他如此回忆:“阿里云的四年,像是过完了一辈子。以后的事情,都是下辈子的。”他和朱珑创立了依图科技,如今是人工智能领域最炙手可热的公司之一。
2014年秋天,胡晓明来了。这个当年去王坚办公室“上访”的热血青年,陪着阿里云走过了最漫长艰难的岁月。也正因如此,此时他比任何人都更坚信云计算的力量。
2015年7月22日,云栖大会北京峰会开幕。新的领导团队第一次在公众面前露面。
胡晓明任阿里云总裁。李津扛起产品研发,在淘宝网鼎力帮助阿里云的小邪作为技术顾问。等等等等。
名单里没有王坚。王坚知道,当有人能比他更好地带领阿里云前进的一刻,就是他放手的时候了。
这个老男孩,此时静静坐在时光的河岸边,痴痴傻笑。梦回少年,肝胆皆冰雪。
(9)另一个奇迹
在阿里巴巴的云栖小镇,一尊雕像被竖立起来,雕像上只有两个字:“5K”。
5K雕塑,上面刻着飞天团队所有工程师的名字,无论Ta是不是仍然在团队。
之前有人无心说的那句“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”也成为了现实。
2018年现任阿里云产品总监何云飞 身上就穿着“第一行代码T恤”
2013年,中国企业IT架构升级最好的解决方式,再也不是买来一台新的机器替代掉原有机器,而是采用云计算。
从这一刻开始,这些疯狂的技术宅才有了服务全世界企业的信心;也正是从这一刻开始,坐镇第一把交椅的传奇总裁胡晓明,带领阿里云进入了“攻城掠地”的时代。
中国的网站登录阿里云的比例,从20%,上涨到30%,上涨到40%,上涨到50%。全球19个地域,两百多个飞天数据中心顺次点亮。
每个季度,阿里云都保持同比增长100%,这样逆天的增长速度持续了12个季度。
2018年初的云栖大会上,在一幅硕大的市场曲线图面前,胡晓明抬起右手,这一秒,时间像是凝固了一般。
同一年,飞天云计算操作系统获得了一个特别的奖项——中国电子学会15年以来的第一个特等奖。
在芯片领域,我们面对美国垄断只得眼睁睁地沉默。
在操作系统领域,我们面对美国的背影只能艰难追赶;
但是在云计算这片土地上,从王坚带着一群理想主义者横空出世,到胡晓明把商业战场拉至和亚马逊的AWS同一级别。中国人用了十年时间造出的全球第三、亚洲第一的阿里云,不说和美国战为和棋,至少在世界的版图上夺下了堪称广袤的一片疆土。
如此,阿里云的疯子们,理应赢得光芒和荣耀。
创业维艰,唯有曾和死神擦肩而过的人,余生才会用十倍的速度奔跑。
2018年,当年为阿里云对接淘宝立下汗马功劳的小邪正式加入了阿里云,掌管“飞天八部”,阿里云所有的现役主力技术和前沿技术,都归至他麾下。
小邪蒋江伟
小邪手中的弹药充足:
2017年发布的神龙云服务器,是对下一代云计算主机的探索。
同年发布的POLARDB,剑指商业数据库Oracle和它的继任者MySQL,也称得上是阿里云未来之星。
2018年初,飞天的分布式存储系统“盘古”升级到了2.0,成为阿里巴巴统一存储平台。
2018年秋天的云栖大会上,唐洪、小邪、何导等阿里云大咖悉数登场,发布了飞天2.0。敢称2.0,是因为他们把野心放到了“万物互联”的下一个20年。
如此尝试和未来对话的技术还有很多。
此刻的阿里云,手握历史上最好的一把牌。
(10)尾声
不久前,王坚受央视《朗读者》节目邀请,回忆了阿里云的创业史。他平静地说:“阿里云是拿命换来的”。
能用命换来梦想,未尝不是幸事。
君不见,在无数个平行世界中,疯人院里的麦克墨菲最终都越狱失败,被医生切去前额叶,再无还手之力。
一群理想主义者的长征路上,一片落叶微微改变飞舞的方向,都有可能把他们引向另一个方向,另一种结局。如果重来一次,阿里云也许无法复现今天的疆域和荣耀。但历史没有假设,可叹阿里云这群人从第一天就无来由地相信,中国人有权拥有自己的云计算。
以身为棋,胜天半子。
阿里云的创业故事走到了封底。书中悲欢离合,凡此种种,也许只博看客一叹。只有那些经历过这一切的活生生的人,才能在时间的风尘里,循着自己的脚印依稀辨别来路。
而那些走散的人呢?
他们也许会在某个秋日回忆起和伙伴同行的日子,心怀感念;他们也许有了新的忙碌的生活,来不及回望;他们也许偶然翻到新闻,看到那年王坚的滚滚热泪;他们也许在饭桌上谈笑风生,聊到当时的兄弟,忽然抬眼望向远方,干掉一杯烈酒。
我想起一个小故事。
在最初面试时,有一个大牛程序员和满弓聊过之后,本想再考虑考虑是否入职。但是出门时,他看到了阿里云办公室上的一副对联,原地思考了几秒钟,转身决定马上加入。
那副对联是这样写的:
代码成就万世基积沙镇海
梦想永在凌云意意气风发
任何执拗都会成为过往,只有时间会告诉你对错。
人们总爱说一句话:认真你就输了。而我更相信另一句话。认输,你才真的输了。
来源:浅黑科技(qianheikeji)
世事安稳,岁月静好。
电影里才有疯子。麦克墨菲在疯人院里带领一群精神病人揭竿而起,怼天怼地;饿了三天的黑皮为了抢一口面包被店主追上高架桥,末路狂奔;杰克和泰勒在午夜的搏击俱乐部里挥拳相向,鲜血淋漓。屏幕对面,我们把爆米花塞进嘴里,哭成狗或者笑成狗。电影散场,各自回家。
真正的疯子,从来不看电影。
他们把别人的目光变成聚光灯,把自己的生活变成真人秀,手提钢刀用肉身串演一个浓重的角色。他们的人生结局无外乎两种:黄.袍加身,或者玉石俱焚。
阿里云这群疯子,就用56度的荷尔蒙,在横跨十年的悠长画布上涂抹了这样一个故事。
(1)一个大问题
2008年9月,王坚加入阿里巴巴。
马云把他从微软亚洲研究院常务副院长的位置挖来,是因为阿里巴巴面临一个重大的危机——公司的“脑力”快不够用了。
阿里巴巴的“脑力”,其实就是“计算力”。
几亿用户无论是在淘宝剁手,还是支付宝上转账,这一切都要靠巨大的计算力来思考、记忆。
恰恰和人一样:
如果这个“大脑”记忆被填满,就没办法储存新的商品和交易记录。
如果这个“大脑”思维速度跟不上,就没有办法让用户及时下单、付款。
2008年,中国虽然已经加入WTO,还把国际友人请来热热闹闹地开了一次奥运会,但在科技领域仍然是个标准的“三无”国家:没有自己的操作系统,没有自己的芯片,同样没有自己的计算力系统。所以,购买国外成熟的设备和系统,几乎是BAT和所有大国企的唯一选择。
国外的东西,无外乎“IOE”这三样标配:
I(IBM,服务器提供商,他们提供的服务器俗称“小型机”)
O(Oracle,数据库提供商,他们的软件是著名的“甲骨文商业数据库”)
E(EMC,存储设备提供商,他们提供的是“集中式存储”)。
鲜有人知,那时的阿里像依赖氧气一样依赖IOE。
一个支付宝的同事给了我翻出了当年的数据:2008年,在阿里的IT架构中,淘宝和支付宝使用的绝大部分都是IBM小型机、Oracle商业数据库以及EMC集中式存储。
当年用户激增,数据越来越多,每天早上八点到九点半之间,服务器的处理器使用率都会飙升到98%。离爆棚就差两个百分点。
阿里巴巴就像赛道上的跑车:速度飞快,但引擎已经发红,再踩几脚油估计就要冒烟,后果不堪设想。
可能连马云自己都没有想到,阻碍阿里巴巴增长最迫切的阻力不是商场上的博弈、不是政策的变化,而居然是IT基础设施的瓶颈。
怎么办?花钱继续买服务器和软件啊!
这话听上去没错。但是有两个小问题:
一个问题是太贵。
那时候小型机价格大概是从几十万到百万人民币;商业数据库软件费用差不多几千万,外加一大笔维护费。王坚08年刚来阿里时就给马云算了算,按照这样的速度“剁手”,光是买机器和软件就足够让阿里破产。阿里得找到一种成本更低的技术架构。
另一个问题是不好用。
阿里在08-09年的时候,业务增长速度实在太快。每年都是十几二十倍,IOE虽然都是美国公司,但事实证明美国的月亮也不会更圆。它们的系统并没有经受过服务几亿人这么大规模的考验,此时已经变得非常难用了。
2008年中旬,马云召开了内部会议。事情已经刻不容缓,要研发一套新的技术架构来换掉阿里巴巴的旧引擎。
这个新的计算架构应该是什么样呢?
首先,它要便宜。
就像一日和三餐一样,无论去哪家餐厅,都不如自己做饭更实惠。长远来看,自己开发一套计算架构显然是最经济的。
其次,它要好用。
为了满足阿里巴巴庞大的计算任务,这套系统至少要比IOE表现更好,能同时调度数千台计算机,组成一个巨大无比的“大脑”。
于是,“阿里云”这个词,第一次出现在公司高层的话语里。而王坚,加盟阿里巴巴之后的职务恰恰是“首席架构师”,他的使命就是从零开始建立这个云计算系统。
王坚
王坚是个理想主义者。
在他丰满的理想中,这个新架构的每一行代码都要自己来写。但现实骨感:环顾四周,他身边除了几位从微软带来的旧部,几乎一无所有。
2008年10月,这个想象中属于中国的云计算系统被团队定名为“飞天”,源自中国神话中的形象。
后来人们说,阿里云是技术驱动型的企业。不过在我看来,最初阿里云应该是起名驱动型的企业。名字倒是起得不错,但作为“三无”国家,底层科技起步较晚的中国在对美国的复杂计算机系统的战争中,几十年都未尝胜绩。
中国人研究的云计算,会“飞天”还是“坠毁”,旁人心里多多少少是有判断的,只是不便明说。
说回这个疯狂的计划。
飞天相当于一个发动机的,而时间紧迫,阿里巴巴准备同时做两件事:一边制造发动机,一边为自己的主力业务淘宝网顺便造一个整车出来。
当时,淘宝网在计算力方面的主要需求就是“大规模数据计算”。所以,用飞天为淘宝造“大规模数据计算”制造整车的计划就被定名为“云梯计划”。
实际上,“云梯计划”关乎阿里的生死,不是儿戏。思来想去,公司内部还是做了两手准备:
1)用一些已有的开源软件为基础,研发一个数据计算系统,这是“云梯1”计划。
2)而以“飞天”为基础,纯自研一套数据计算系统,被定为“云梯2”计划。
彼时绝没人想到,五年后的那个下午,这两座通向顶峰的云梯会用怎样的姿态占据画面的中心。千军万马雄列两旁,目睹荣耀的火焰和退潮的海水。
历史就这样以汹涌的姿态,向那些准备好的和没准备好的人敞开。
2009年 阿里云成立
(2)招兵买马
满弓是阿里云的第六位工程师。
招他进来的,是王坚在微软的旧部,阿里云的第一技术负责人林晨曦。面试结束时,林晨曦歪嘴一笑,提醒满弓:“你加入阿里云之后,要做好随时出差的准备。”
果然,满弓签完入职合同当天下午,就被“附赠”了一张火车票。他要去天津帮助招聘。
满弓这样回忆十年前的那个下午:
“阿里研发院”2008年10月才成立,已经错过了招聘季的黄金时期。但是我们又确实太需要人才了,于是刻不容缓,要再扫荡一下那些大学,把“漏网之鱼”打捞回来。
2009年 阿里云的招聘海报
跟着阿里云的招聘队伍,满弓跑遍了全国主要的几大城市十几个学校。每到一个学校,只呆三天。
第一天做宣讲,然后马上笔试;第二天统一面试;第三天发Offer。
彼时的阿里巴巴已经很有名气了。很多错过招聘季的同学喜出望外,一时间各大学校风起云涌奔走相告齐来应聘,虽然从招聘者到应聘者,都没见过云计算长什么样子。
由于招聘人手实在太少,面对堆积如山的笔试试卷,满弓他们根本判不过来。焦头烂额的满弓擦汗时一回头,看到了同行的HR小姐姐。满弓两眼放光,二话不说把她们揪过来,一晚上就教会了她们如何判卷。
当时判卷的场景
经过这样“连滚带爬”的招聘,到了2008年年底,阿里云凑够了了三十位工程师。
话分两头。
下有林晨曦招兵买马,上有王坚每天“画饼”。
马云深受王坚鼓舞。虽然不懂技术,但是他逐渐发现,云计算这件事情的价值比一开始想象中的要大得多。
这是因为云计算系统会制造出一种具有极强弹性的计算力。这样的计算力一方面可以为阿里巴巴添置家当,另一方面还可以“批发零售”给无数中小企业,为未来世界建设了一整套“基础设施”。
这样来看,就把“独善其身的工具”变成了“兼济天下的生意”,这不正是马云创建阿里巴巴的基本信念吗?
从这一刻开始,马云就对阿里云寄予重望。只要有空,就到阿里云的团队里和林晨曦、满弓这些工程师们一起聊天讨论。
马云、王坚 和工程师们的合影
然而,事情发展到这里,就开始有些错位了。
阿里的很多的业务部门希望的是稳定地在现有系统上加以改进,最好别冒太大风险;
但飞天团队却黄巾高擎赤膊上阵左右开弓,想依靠一己之力,开发出一套改写世界历史,可以让中国人扬眉吐气的完美云计算系统。
刚才我说阿里云是“起名驱动型的公司”,你看看这帮疯子给飞天内部模块的命名,就知道他们心里在想什么了:
分布式存储的系统,就像大地一样承载万物,那就叫“盘古”。
调度系统,需要“能掐会算”,就用懂得阴阳八卦的“伏羲”命名。
结构化存储系统,就用会盖房子的“有巢”。
网络通信,就用追日的“夸父”。
等等。
飞天团队一片斗志昂扬。
其他部门的很多领导层,用半信半疑外加慈爱的眼光看着他们。
(3)淘宝的一场战争
时间不等人,转眼到了2009年。
在隔壁淘宝网的普通员工中,有人在“隔江犹唱后庭花”,有人却已经感到“山雨欲来风满楼”。
2009年,小邪刚刚加入阿里一年,在淘宝网参与系统研发。当时他和同事都感觉到,淘宝网面临的矛盾非常明显:
业务并不赚钱,09年只有一个季度勉强盈利。而赚来的这点钱,眼看都要填进去购买服务器和软件产品,入不敷出。
小邪记得很清楚,他昨天刚听说隔壁阿里云准备搞云计算,今天就迎来了一个“特殊的客人”。
林晨曦走到淘宝网技术团队面前,搬个板凳兀自坐下:“你们淘宝的大数据系统用我们的阿里云架构吧。”
“代码已经写了多少?”小邪问。
“几行吧。”林晨曦说。
事情就这样定下来了。
云梯1、云梯2,两套系统一边搭建,一边在淘宝内部实验,一边承担部分计算任务以缓解现有系统不足的压力。
当时淘宝技术保障数据库管理员的负责人是后羿。他几次欲言又止,还是硬着头皮在内部会议上宣布了这个消息:淘宝要放弃Oracle,转投自研的数据库架构了。
结果,八十多个Oracle工程师把他堵在会议室里。“你再说一句试试?”
他们的愤怒完全合情合理。“如果上边铁了心要干,兄弟们的前途在哪里?”
最终,一场恶斗转化成了几十个工程师坐在会议室促膝谈心。技术人是讲理的:淘宝已经这么大了,如果现在不刮骨疗毒,自己砸自己的饭碗,将来整个淘宝都会命悬一线,到时候大家还不是沦落天涯。想通了这些,工程师们也冷静多了。
这八十多个工程师里,包括后来的阿里技术保障部负责人振飞。振飞站出来说:“好,让我们学新技术可以,但是咱们拿事实说话。你后羿敢不敢跟我打个赌?以三年为限,用新技术的淘宝核心交易系统必须达到零故障!”
后羿咬咬牙,敢!
但后羿一个人的分量还远远不够重。毕竟淘宝上有这么多业务,这么多买家,这么多卖家,万一数据迁移失败,谁来负责?时任淘宝技术总架构师行癫(现任阿里巴巴CTO)见状,把心一横,宣布自己和部门也愿意站出来,共同承担技术风险:“干好了我们大家荣誉等身,干坏了要杀要剐我来扛!”
看到行癫都赌上了自己的身家性命,也就没人再说什么了。
2009年秋天,轰轰烈烈的IT架构升级项目在淘宝网正式启动。一群Oracle工程师,就这样含着泪,一点一点亲手拆毁自己安身立命的系统。
(4)荒野求生
林晨曦用来“忽悠”淘宝网的“几行代码”,是在北京写出来的。
2009年春节上班第一天,在北京上地的汇众大厦203这间连暖气都没有的办公室里,一帮工程师一边口呼白气,一边敲出了“飞天”的第一行代码。
飞天的第一行代码
说起来,这个地方算是阿里云最早的办公室,但是门口也没个牌子。直到半年后他们搬出大厦,保安都不知道这帮神神叨叨的人究竟是干什么的。(不过十年后的今天,他们的手机里的很多App也许都跑在阿里云的服务上。)
每天,工程师们除了噼里啪啦写代码,还得顺便“荒岛求生”——自己订水、买垃圾桶、修桌椅板凳、修无线网,连茶叶和咖啡都是从自己家带来的。
不过,他们坚信自己在做的事情还是挺伟大的。“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”角落里有人瑟瑟发抖地说。
那个时候的他们,看上去和一帮戴着眼镜的教徒无异。
时间马上又到了夏天。北京的夏天,你懂的。当时测试系统的服务器就架在办公室里,这就是个巨大的火炉。大厦的空调不行,还没到七月份,程序员就热得撑不住了。为了降温,每天上午他们都叫冰场送两大块冰来。
有一次周六,马云来北京,专门到阿里云的办公室去看看。林晨曦赶紧想打开电脑给马老师展示一下自己团队的成果。结果按了半天开关,机器都没反应。他才发现大厦停电。。。马云就这样坐在办公室等了半个小时,直到物业恢复供电才一睹阿里云飞天系统最初的芳容。
王坚跟马云说,这帮人很能干,每天晚上都加班。马云惊了,在这种地方还能加班??没过几天,阿里云就搬出了这幢大楼,进入了有空调的办公室。
同事们往办公室里运冰
(5)神坑,阿里云
金融大咖胡晓明,2005年加入阿里,以办事雷厉风行闻名全集团。
2009年6月,马云找到胡晓明,准备交给他一个大任:内部创业,做阿里金融的总裁。
胡晓明信心满怀,准备撸起袖子说干就干。不料,马老师悠悠地说,不要急,你要先答应我两件事。
马云:第一件事,你只能做100万人民币以下的贷款生意,帮助像当年的我一样借不到钱的创业者。
胡晓明:理解,这没问题。
马云:第二件事,你必须跟刚成立的阿里云绑在一起,用他们的技术架构支撑你的服务。
胡晓明:纳尼??!!
这两件事,胡晓明最终都答应了。不过阿里云这帮看上去疯疯癫癫的人,他们技术到底靠不靠谱,胡晓明可是真没底。
金融不像别的业务,这可是一个数据都不能错,一个字节都不能丢。按照“行业祖训”,打死都得用IOE这些国外大厂的基础设施,现在可好,却非得用听上去就让人怀疑的“阿里云”。。。
“明明可以坐高铁,却偏偏要骑自行车去上海。”当时研发工程师王国涛的吐槽,代表了很多阿里金融同事们的心声。
但马老师肯定有马老师的道理。阿里金融的同事们只能硬着头皮跟阿里云的朋友们握握手。
“牧羊犬”是阿里金融的第一个产品,简单来说就是给淘宝商家贷款的项目。吐槽王王国涛回忆:“当时阿里云一边搭建飞天平台,我们就一边在飞天上面开发牧羊犬应用。这就像是开发商一边在造房子,我们一边在室内装修铺地板。”
飞天果然不负众望。
数据传输问题、计算稳定性问题、处理速度问题一样都不少,翻版篆版梅花版的错误层出不穷,各种Bug形式翻新,永不重复,这叫一个皮。。。
阿里金融的工程师必须24小时盯着系统,才能防止酿成大错。当时情况危急到了什么程度呢?一位奶爸工程师为了值夜班盯系统,把自己小孩的哭声设成了闹铃。因为只有听到这个声音,他才能在无论多困的情况下从床上弹起来。。。
这段时间,提到阿里云,阿里金融的程序员们都是“眼睛干干的,有种想哭的心情”。他们的经典吐槽大概是这样:人家的是云计算,我们家的是“人肉云计算”;人家的是“分布式计算”,我们家的是“分步试计算”。。。
作为合作伙伴,林晨曦每天的表情都有点儿尴尬,出则满脸堆笑地帮阿里金融排除Bug,入则愁容满面地和同事们一起修改代码。
眼看就要过春节了,两个项目都快撑不住了。
被“猪队友”坑得够呛的胡晓明气鼓鼓地带着核心骨干跑到王坚办公室门口“讨说法”。胡晓明这个人,是出了名的“只要认定的事情就一定要办成”,大有在王坚办公室打地铺静坐的架势。王坚无奈,派出所有的技术工程师,驻扎在阿里金融的现场加班开发,只为了“让兄弟团队能过个好年”。
好不容易捱过了2009年,春节过后,阿里云发布了一次大版本升级。升级完成的一瞬间,空气突然安静了:
飞天系统稳定得不像阿里云的作品……
阿里金融从一口口呛水的状态,一下子冲出海面。
巨大的计算力让阿里金融实现了“秒级”放贷。这种技术进步让“小额多次放贷”成为了可能,这就让阿里金融几乎等于开挂,不良贷款率远低于传统金融机构。也正是因为阿里云“高效低价”的加持,单账户每年的IT成本可以控制在1元以内。
阿里金融,成为了后来的网商银行。他们就这样无意间成为了中国第一个上云的银行。
胡晓明内心OS:宝宝心里苦,但宝宝要笑T_T...
(6)“骗子”王坚
解决了稳定性,阿里云就像抓住了救命稻草,总算可以暂时喘口气。
这些成绩,也已经成功引起了其他公司的注意。于是2010年,在阿里巴巴出发两年后,很多大公司纷纷着手研究自己的云计算技术。
但所有人都没想到,有一只巨大的怪兽正在必经之路上静静等待着。
这只怪兽名为“5K”。
你还记得“云梯1”和“云梯2”两个项目吗?此时,终于轮到他们唱主角了。
两座云梯,就像“争夺家产”的两兄弟,规则很明确:
1、要想成功肩负起阿里巴巴的底层计算系统,就必须有能力独自调度5000台服务器。
2、两兄弟谁先跑到5000这根线,就“赢者通吃”,继承家业。
而5000这个目标,就写为5K。
目标就摆在这,但无论是“云梯1”还是“云梯2”,都死活达不到这个指标。
李超是飞天伏羲调度系统的研发工程师。他用苦逼来形容自己的2010到2012。当时他带着同事们没日没夜地加班,收获的就是一个接一个的系统错误。
就这样,一年过去了,两年过去了。
王坚是一个性情温和的人,但是那段时间,他几乎天天跟团队拍桌子。
满弓回忆,每次一开会大家都会把桌子收拾干净,把水杯什么的拿走,以防出现“事故”。
我记得有一次博士(王坚)很生气,砰砰地拍手机。有一个工程师实在受不了了,说博士,你拍的是我的手机……
现实不是小说。神兵天降和剧情反转并不存在。纵然他们几乎尝试了所有可能的技术策略,但就是没有一种方案可以成功调度5000台机器。
2012年底,以开源软件为基础的“云梯1”计划实现了4000台集群调度,而阿里云团队更看好的纯自研的“云梯2”还在1500台集群的数量徘徊。
越是困难时刻,越会产生分歧。
实话实说,当时大多数的技术大牛,都觉得用经过全世界验证的Hadoop为基础的“云梯1”更有希望,对“云梯2”嗤之以鼻。而阿里云这帮人就是不认,因为根据他们的推断,Hadoop在4K到5K的路上,肯定会遇到一个不可逾越的沟壑,于是倔强地带着团队大举投入“云梯2”。
在一片质疑和争吵中,“最寒冷的冬天”就这样降临了。
1934年到1936年,从苏区出发到陕北会师,三年长征,工农红军从8万人锐减到3万人。
从2010年到2012年,在阿里云最艰苦的长征三年,“战损率”只多不少。
由于没有成绩没有进展,连续几年阿里云整个部门都在集团拿最低分。
满弓、李超他们开始收到团队同学的辞职书,林晨曦也收到了部下的转岗信。这些邮件,最终都一封不少地塞在王坚的邮箱里。
一般来说,三年时间足够判断一件事情到底靠不靠谱。“世界末日”那年,人们几乎已经认定了阿里云不可能做出一套云计算系统了。不仅如此,很多阿里的同事都叫王坚“骗子”。开始大家还在背地里说,后来,大家都不再忌讳,公司里流传着很多骗子王坚的笑话。“一个学心理的博士居然当上阿里巴巴的CTO,心理学学得真好啊!”
无论是“伏羲”还是“盘古”,这些开天辟地的名字,此时都成为了阿里云这些人要满足“个人野心”的明证,成为了狂妄的代价,成为了“不自量力”的耻辱。
当时内网论坛里对阿里云和王坚的吐槽
满弓、李超、飞天总架构师唐洪、林晨曦,他们每天都是低着头上班。今天,左边的工位空了,明天,右边的工位空了。。。
“谁也不知道王坚当时帮我们抗了多大的压力。。。”李超回忆起那段日子,只说了这么一句话。
眼看阿里云成立就要满五年了,集团里却风言风语地传着“阿里云要被撤掉”的消息。
某一天,马云突然召集阿里集团高管开会,所有业务部门的负责人都估计是马云要宣布关掉阿里云的消息,于是纷纷带上自己的技术负责人参会,准备一声令下,就瓜分阿里云的技术人才。
在2012年的阿里云年会上,王坚走上台,他紧紧攥着话筒,几次抬眼望向远处,几次欲言又止,最终泣不成声。这个曾经扬言要用一己之力把中国云计算镌刻在世界科技史上的“疯子”,就那样孤零零站在原地,面对台下黑压压的一群错愕的人。仿佛无数时间的列车在他眼前呼啸飞逝,而他手里没有握着任何一张车票。
这是阿里云故事里最为人所知的一个细节。但我猜很少有人记得,王坚一边哭,一边说了什么。
他说:“这两年我挨的骂甚至比我一辈子挨的骂还多。但是,我不后悔。只是,我上台之前看到几位同事,他们以前在阿里云,现在不在阿里云了…”
就像王坚的一位老部下把辞职信交到他手里时,对他说的那样:做云计算的感觉就像集体合围抱一棵大树,谁都知道最终大家的手会连在一起,但谁也不知道那一刻会发生在什么时候。真的真的对不起,我撑不住了。。。
如果把阿里云所有曾经的员工加起来,可能是现在的好几倍。有太多太多的人都在那段暗淡的日子里离开了。这不怪他们,任何一个能认真判断利弊的人,也许在那时候都应该离开阿里云。也许只有“疯子”,才会选择留下。
就在阿里云最危急的时候,好友朱珑找到林晨曦,鼓励他离职创业。但林晨曦给朋友撂下一句斩钉截铁的话:“现在我绝对不能走。如果你想等我创业,先让我把阿里云扶上正轨。”
阿里云苦苦撑着,人心飘摇,流言四起。
流言终于传到马云耳朵里。
“我每年给阿里云投10个亿,投个十年,做不出来再说。”他对着阿里巴巴集团所有人,斩钉截铁地说。
这一句话,让所有的流言顺次平息。
在阿里云年会上,马云做了这样的独白:
“我知道,所有留下来的人其实是真正阿里云的精髓。
有的时候不是你技术有多强,而是我们有多团结,互相多配合,多支持,多理解。
换任何一个公司,吃不消内网上那么多人骂的,我有一段时间也是特别替大家难过,就像我骂儿子可以,我打儿子可以,不允许别人骂我儿子的,要不然我要翻脸的。
我没有想过公司内部对阿里云有那么大的意见,我真没想到。但是你们都扛过来了,这是我深以为傲的,如果你们能抗得过内部人骂,抗得过那么多人指责,我们还有什么扛不过未来五年的发展?”
李超给我看了这张照片。
这是当年参加5K项目的同事。他说,这些人中现在只有十几个还在阿里巴巴。
李超又给我看了另一张照片。
阿里云成立满六年的时候,为所有从第一年走到现在的员工做了一个人偶。所谓的“所有”,只是眼前这五个人偶。满弓和李超就在其中,他们相顾一笑。
这场长征,从摩肩接踵走到踽踽独行。年轻的人们为了共同的梦想相互温暖,又难免为了各自的梦想互道珍重。只是那些曾经鲜活的伙伴,就这样成为离去的背影,越走越远,消失在视野里,也消失在生命里。
再多情的看客,恐怕也难解其中滋味。
(7)5K
阿里云的神坑,不仅“坑”了胡晓明的阿里金融,也在“坑”淘宝网。
之前说过,淘宝网从2009年就开始了“云梯计划”。到了2012年,局面变得有些尴尬:
1、无论是云梯1和云梯2,都没有冲上云计算的技术标准:5K的规模。
2、虽然没达标,但是淘宝网没有选择,只能“赶鸭子上架”,让两架还在试验中的云梯承担一些重要负载。
被刀架在脖子上的行癫心急如焚。
2013年3月28日,一封来自集团技术保障部架构师云铮的邮件直达高层:
按照数据增量与未来业务增长的情况,云梯1和云梯2两套系统的存储和计算能力将在今年6月21日到达瓶颈。
到那时,数据业务将会停滞,淘数据,量子能业务都会受到影响;阿里金融的贷款业务将因为无法进行信用数据运算而中止。
这一天终于来了。人们洪水般的“买买买”为阿里巴巴划定了Deadline。要想维持正常的业务,他们必须在不到三个月的时间里解决问题。
这个时候,把飞天推上5K,几乎已经是唯一的选择了。事到如今,这已经不是阿里云自己的战斗,而是整个阿里巴巴集团的“背水一战”了。
在这个关头,阿里云需要集团所有人的帮助。
各个部门的技术大牛迅速组成增援大军列立山头,旌旗飘扬。但是在进入战斗序列之前,一个纠缠了各路大神五年恩怨情仇的问题必须有个了断:
最初,因为要做两手准备,以Hadoop为基础的“云梯1”和以飞天为基础的“云梯2”一直并行。这个时候,时局已经紧迫到不允许团队分流,他们必须抛弃掉一个云梯。
抛弃哪个?
云梯1,依靠开源技术,更加成熟,但几年的实践证明,把它推到5K有明显的的技术瓶颈。而且,最核心的技术转向开源系统,也许会让阿里巴巴在未来遇到更多技术制约;
云梯2,自研技术,难度更大,但它的架构和代码都是基于阿里自身诉求而设计的。自主可控的5K一旦成功,就会打下阿里巴巴下一个十年的江山。而一旦失败,后果也将不堪设想。。。
此时做出任何抉择,都会彻底改变阿里巴巴的历史。但历史又只在彼时彼刻给阿里巴巴一次机会,开弓没有回头箭。所有人的目光都看向王坚。
王坚说了两个字:“飞天!”
再没有一句质疑,再没有一丝埋怨。那些曾经看好或者不看好飞天的技术大牛,这个时候撸起袖子一齐杀了进来。
核心技术系统的正明团队,全员投入5K的攻坚战;负责应用集测测试的许呙兢,在得知调度系统的日志自动收集和分析工具缺口严重,二话没说主动请缨;褚霸、多隆、长仁这些分散在各部门的的技术牛人也都冲进来了。各路神仙在这几个月亲近得不分彼此。
褚霸回忆当时的场景:“早上9点进入项目,11点我们就开始解BUG。”
就连在电梯里,都会人问阿里云的同事“最近怎么样?需不需要帮忙?”他们来自一些兄弟团队,有负责安全的,有负责集成测试的。
阿里云自己的同事更是全力冲刺。
新员工刚刚入职,就立刻被派往“战场”。本来是北京分公司的员工,入职之后直接拉到杭州帮忙5K项目。都加入公司两个月了,还不知道自己北京的工位在哪里。
而一位叫做李泉的同事,连续几个礼拜连轴转,半夜两三点被叫起来解决问题,早晨八点又出现在工位上。被同事封为“李铁人”。
在最后的测试阶段,杭州和北京两个办公室的同事电话24小时通着,人可以轮班休息,电话不能掉线,那部用来接听的电话都烧得滚烫。
就这样,一行行代码累积起来,在赛博世界的疆土上一眼望不到边界。他们交错重叠,像从白垩纪开始慢慢累积的地层。直到这片大陆,终于浮出海面。
2013年6月底,5K进入了最后的稳定性测试。
怎么测试系统的问题定性呢?之前带领“八十勇士”围攻后羿的振飞,提出了一个真·钢铁直男的测试办法:拔电源。
他的理由是:“如果这种突然暴力断电都能撑得住,阿里云还有什么不稳定的呢?”
拉电的同学反复问了三遍:拉吗?拉吗?拉吗?最后才颤抖着双手拉下了电源。
这一刻,时间停止了,只有机器重新启动的声音。
四个小时以后,当系统完全恢复运行的时候,很多阿里云同事的背后,已经被冷汗打湿了。经过系统自检,一切正常。虽然还有十台服务器光荣就义。但是,数据毫发无损!
这一刻,在场见证的人都明白:成了。
所有的技术路线之争,所有的进退成败之辩,所有的隐忍委屈不甘,所有的怀疑嘲讽忧虑,就在此时此刻突然画上句号。
盛夏的杭州,阿里巴巴热血翻涌,阿里云的“疯子”们却心如止水。
(8)阿里云这群疯子
阿里云,成为了中国第一家拥有完整云计算能力的企业。
2015年,在计算界的奥运会Sort Benchmark中,阿里云计算100TB数据排序只用了不到7分钟,把 ApacheSpark之前创造的23分钟世界纪录一下子缩短了一多半。这说明,中国人研发的云计算系统不仅成功了,而且不比世界上任何现存的云计算系统差。
成功登顶的“云梯2”,后来更名为ODPS,“加冕”成为了阿里巴巴各项业务通用的大数据计算平台。
ODPS验证成功之后,阿里立刻启动“登月计划”,把所有的数据和计算都迁移到飞天为基础的系统上,全盘替代IOE和云梯1。2013年5月,阿里巴巴最后一台小型机下线。7月,淘宝最后一个Oracle数据库下线。阿里巴巴这台战车,用了五年时间,在超高速行驶中,没有踩一脚刹车,成功更换了发动机。
因为突破了技术瓶颈,在5K之后,ODPS只用了几个月就冲上了单集群10K,进而实现了无限制扩展。到2018年,已经更名为MaxCompute的ODPS达到了数万台的规模。
哦对了,还有一件小事。当年振飞和后羿的那场“世纪赌局”,后羿赢了。用了三年时间,新的淘宝核心系统果然实现了零故障。
这段时间,阿里云也迎来了两个变动:
2012年秋天,林晨赴约去创业。提及过往,他如此回忆:“阿里云的四年,像是过完了一辈子。以后的事情,都是下辈子的。”他和朱珑创立了依图科技,如今是人工智能领域最炙手可热的公司之一。
2014年秋天,胡晓明来了。这个当年去王坚办公室“上访”的热血青年,陪着阿里云走过了最漫长艰难的岁月。也正因如此,此时他比任何人都更坚信云计算的力量。
2015年7月22日,云栖大会北京峰会开幕。新的领导团队第一次在公众面前露面。
胡晓明任阿里云总裁。李津扛起产品研发,在淘宝网鼎力帮助阿里云的小邪作为技术顾问。等等等等。
名单里没有王坚。王坚知道,当有人能比他更好地带领阿里云前进的一刻,就是他放手的时候了。
这个老男孩,此时静静坐在时光的河岸边,痴痴傻笑。梦回少年,肝胆皆冰雪。
(9)另一个奇迹
在阿里巴巴的云栖小镇,一尊雕像被竖立起来,雕像上只有两个字:“5K”。
5K雕塑,上面刻着飞天团队所有工程师的名字,无论Ta是不是仍然在团队。
之前有人无心说的那句“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”也成为了现实。
2018年现任阿里云产品总监何云飞 身上就穿着“第一行代码T恤”
2013年,中国企业IT架构升级最好的解决方式,再也不是买来一台新的机器替代掉原有机器,而是采用云计算。
从这一刻开始,这些疯狂的技术宅才有了服务全世界企业的信心;也正是从这一刻开始,坐镇第一把交椅的传奇总裁胡晓明,带领阿里云进入了“攻城掠地”的时代。
中国的网站登录阿里云的比例,从20%,上涨到30%,上涨到40%,上涨到50%。全球19个地域,两百多个飞天数据中心顺次点亮。
每个季度,阿里云都保持同比增长100%,这样逆天的增长速度持续了12个季度。
2018年初的云栖大会上,在一幅硕大的市场曲线图面前,胡晓明抬起右手,这一秒,时间像是凝固了一般。
同一年,飞天云计算操作系统获得了一个特别的奖项——中国电子学会15年以来的第一个特等奖。
在芯片领域,我们面对美国垄断只得眼睁睁地沉默。
在操作系统领域,我们面对美国的背影只能艰难追赶;
但是在云计算这片土地上,从王坚带着一群理想主义者横空出世,到胡晓明把商业战场拉至和亚马逊的AWS同一级别。中国人用了十年时间造出的全球第三、亚洲第一的阿里云,不说和美国战为和棋,至少在世界的版图上夺下了堪称广袤的一片疆土。
如此,阿里云的疯子们,理应赢得光芒和荣耀。
创业维艰,唯有曾和死神擦肩而过的人,余生才会用十倍的速度奔跑。
2018年,当年为阿里云对接淘宝立下汗马功劳的小邪正式加入了阿里云,掌管“飞天八部”,阿里云所有的现役主力技术和前沿技术,都归至他麾下。
小邪蒋江伟
小邪手中的弹药充足:
2017年发布的神龙云服务器,是对下一代云计算主机的探索。
同年发布的POLARDB,剑指商业数据库Oracle和它的继任者MySQL,也称得上是阿里云未来之星。
2018年初,飞天的分布式存储系统“盘古”升级到了2.0,成为阿里巴巴统一存储平台。
2018年秋天的云栖大会上,唐洪、小邪、何导等阿里云大咖悉数登场,发布了飞天2.0。敢称2.0,是因为他们把野心放到了“万物互联”的下一个20年。
如此尝试和未来对话的技术还有很多。
此刻的阿里云,手握历史上最好的一把牌。
(10)尾声
不久前,王坚受央视《朗读者》节目邀请,回忆了阿里云的创业史。他平静地说:“阿里云是拿命换来的”。
能用命换来梦想,未尝不是幸事。
君不见,在无数个平行世界中,疯人院里的麦克墨菲最终都越狱失败,被医生切去前额叶,再无还手之力。
一群理想主义者的长征路上,一片落叶微微改变飞舞的方向,都有可能把他们引向另一个方向,另一种结局。如果重来一次,阿里云也许无法复现今天的疆域和荣耀。但历史没有假设,可叹阿里云这群人从第一天就无来由地相信,中国人有权拥有自己的云计算。
以身为棋,胜天半子。
阿里云的创业故事走到了封底。书中悲欢离合,凡此种种,也许只博看客一叹。只有那些经历过这一切的活生生的人,才能在时间的风尘里,循着自己的脚印依稀辨别来路。
而那些走散的人呢?
他们也许会在某个秋日回忆起和伙伴同行的日子,心怀感念;他们也许有了新的忙碌的生活,来不及回望;他们也许偶然翻到新闻,看到那年王坚的滚滚热泪;他们也许在饭桌上谈笑风生,聊到当时的兄弟,忽然抬眼望向远方,干掉一杯烈酒。
我想起一个小故事。
在最初面试时,有一个大牛程序员和满弓聊过之后,本想再考虑考虑是否入职。但是出门时,他看到了阿里云办公室上的一副对联,原地思考了几秒钟,转身决定马上加入。
那副对联是这样写的:
代码成就万世基积沙镇海
梦想永在凌云意意气风发
任何执拗都会成为过往,只有时间会告诉你对错。
人们总爱说一句话:认真你就输了。而我更相信另一句话。认输,你才真的输了。