BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

甘泉:青云如何提供一个更好的云
录制于:

| 受访者 甘泉 关注 0 他的粉丝 作者 InfoQ 关注 13 他的粉丝 发布于 2017年5月20日 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。
30:48

个人简介 甘泉,青云联合创始人、研发副总裁,具有14年软件开发相关工作经验。曾在华为公司、IBM 软件实验室任职;后在百度网页搜索部担任阿拉丁产品检索基础架构负责人。对Linux操作系统、网络、存储以及分布式系统架构、软件工程等方面有比较深入的理解。

QCon是由InfoQ主办的全球顶级技术盛会,每年在伦敦、北京、东京、纽约、圣保罗、杭州、旧金山召开。自2007年3月份首次举办以来,已经有包括传统制造、金融、电信、互联网、航空航天等领域的近万名架构师、项目经理、团队领导者和高级开发人员参加过QCon大会。

   

1. 大家好,这里是Qcon北京2017的采访间,我们邀请到了青云的甘泉老师,甘泉老师,您好。先向大家解释一下您自己吧?

甘泉:我是青云QingCloud的创始人,同时现在也是研发的负责人,基本上就这样。

   

2. 在加入青云前,您有过14年的软件开发经验,也在数家大型IT公司任职,您怎样评价每一段经历给您带来的收获呢?

甘泉:我的经历要比这上面说的多,不仅仅在那几家比如像华为、百度、IBM工作过,我实际上也参加过两次创业公司,说实话,都失败了,但是我觉得加入过大型的IT公司,以及加入过创业公司,这两段对我来讲都是非常宝贵的经验。从我的感觉来说,参加大公司就好像参加一个正规军,或者集团军,你只要做好一个士兵就可以了,而创业公司完全不一样,它就像一个特种部队一样,人数很少,但是要求每个人能力都很强,要求非常有效率,所以这两段的经历对我来讲都是一笔很宝贵的财富。

   

3. 是怎样的契机让你们决定创建青云?IT行业是人才密集型行业,能否讲讲初期组建团队和后期发展技术团队的经验呢?

甘泉:这个跟第一个问题是有一定的关系的,我是工作经历很长,创建青云之前就有十几年,Richard也有将近十年的在IBM工作的经历。创业初期的团队,很大部分是依赖于以前我们所认识的这些人,也就是说人品很重要,在你以前参加工作的时候,如果你人品好,人家信任你,在你创业的时候,那时候是风险最高的时候,生死未卜,在那个时候如果有人愿意Join你的话,一定是跟你交心的朋友,所以在创业初期,我们的很多人是从以前IBM,包括我以前创业公司认识的那些志同道合的人加入进来的。我们当初想创立青云也算是机缘巧合,当时Richard在IBM的项目遇到一些阻力,IBM可能会选择另外一条道路去做云计算,对于Richard而言,他自己心目中有一种对云计算的看法跟理解,正好我们几个人,平时又在一起研究一些项目,或者研究一些趋势,最后大家就决定如果IBM不让我们做的话,那我们就自己做,所以当初是由于这个决定而去创办的青云。现在回想起来当时的这个决定胆子确实是有点大,如果让我再成熟一点,再去看待当时的选择的话,我会觉得自己的胆子真大,当然我觉得这也是好处,年轻有年轻的好处,无知者无畏,虽然这几年,一直到现在,我觉得都非常的艰难,遇到过好几次外界不知道的生生死死,很多时候我们都面临着关于生死的选择,终归我们挺过来了。现在团队的情况就好的多,我们以前风险最高的时候,是靠那些以前的朋友,同事加入进来,现在,青云有一定的知名度,我们再建立团队的时候,就会把那些跟青云志气相投的人吸引过来,我觉得目前我们做得还不错。

   

4. 两年前,您曾经在采访中说过,青云的所有精力都在如何提供一个更好的云,能不能讲一讲这两年来,你们又为此付出了哪些努力?其中比较重大的技术变化是什么?目前在云计算市场上,您认为青云有哪些技术优势?为什么会有这样的优势?

甘泉:其实青云的技术跟产品一直都在变,只不过这种变化如果你不去了解的话,从外人看来不是那么的明显,但从我们自己的角度来讲,已经有过好几次翻天覆地的变化了,当初12年、13年,我们推出第一版青云产品,到15年,16年我们基本把青云底层的那一块全部重写,为什么要重写?因为我们要适应一个非常大规模部署的情况,以前由于我们设计能力的问题,也受制于当时客户的规模,有些问题没有暴露出来。后来随着我们的规模越来越大,如果要进行大规模的部署,那么底层架构就需要去适应这种变化,到目前为止,青云在底层的网络、存储,以及调度系统基本上都已经到了2.0的水平。在上层,我们在PaaS层也有一个比较重要的产品,就是APPCenter2.0,那是我们一个真正的PaaS平台,在这上面去构建SaaS应用,像这几点都是在IaaS和PaaS领域我们所做的努力,也是为了提供一个更好的云。在这一点上,我觉得青云跟别的做的不太一样,因为很多云现在其实并不太关注于底层架构的优化跟产品能力的提升,好像更多的集中在想去弯道超车,直接去做SaaS业务,很多的云开始集中于做SaaS业务,而忽视对底层平台的开发,但是青云一直执着于要把我们的平台建好,因为如果平台不建好的话,我们认为在上面承载更多的业务就是一句空谈,只是说的热闹而已,真正的客户想要上来的时候,你实际上是承担不了的,所以我觉得青云现在所走的道路,也许听上去不是那么的热闹,我不愿意称呼自己是学院派,我更愿意称呼自己为实践派,当然我尊重学院派,但是从我个人的角度来讲,我是要为产品负责,我更愿意把产品打磨好,不太计较一时的得失。

   

5. 您如何看待时下对计算和存储分离的讨论,青云在这方面有怎样的考虑?

甘泉:说实话,我在这个技术圈子里这么久,发现隔三差五的总会有一些技术热点出现,讨论这,讨论那,当然这说明这个行业现在还非常有活力,我不排斥这种讨论。我的意思是,就计算和存储分离这个讨论而言,我认为你坚持任何一个观点,我都会说No,你说两个要分离我说No,你说两个不分离我也说No,为什么呢?因为它没有一个答案。存储一定得是多维的,我做云计算做了这么久,我知道你不可能通过一套存储架构去实现所有的存储需求,存储一定是多维的,要在性能跟容量等很多层面上考虑。比如说冷存储跟热存储,计算跟存储要不要分离?取决于什么呢?取决于你这个存储到底要做什么,如果这个存储是非常热的,一定要近,为什么呢?因为如果离的远的话,I/O路径一定长,它的延迟跟稳定性一定是有问题的,所以一定要近,越近越好,最好计算在哪里,存储就在哪里。但如果是冷存储的话,就没必要去做这个事情,你可以尽量离的远,没关系,它对延迟没有要求,甚至对稳定性都没有要求,所以我觉得计算跟存储是否要分离,取决于你的业务,要用最合适的技术去做最合适的方案,去解决它应该解决的问题,光拿技术本身讨论,我觉得意义不大,这还是我刚才说的,我是个实践派,不是个学院派,当然话说回来,我很尊重他们,但是我觉得技术要为产品服务,而不是反过来。

   

6. 青云在异地容灾及跨数据中心复制方面遇到过怎样的挑战?因为近来国内国外云厂商们有一些重大的宕机事故,甚至引起数据丢失,您认为在这方面应该怎样做到防患于未然呢?

甘泉:云计算厂商发生宕机,包括青云发生宕机,我觉得这个都是有的,但首先我要说明一点,青云没有丢失过数据。每一次出现这种事故,对于我们还有我们的用户都是一个极大的伤害,包括对青云本身也是一个极大的伤害,对用户信心也是个极大的伤害,青云从我们产品一出来,到现在,我们是有异地的灾备,以及复制的物理条件,我说的是物理条件,意思是有办法可以将几个数据中心连起来,去做复制,去做同步,去做灾备,但问题在于用户对于青云的要求远不只于此,他的要求不是只把物理上联通就可以了,他要求你做一个产品帮他们去做灾备,做复制,这些不应该是用户要去考虑的事情。现在确实有一些用户水平可以,他们自己就去实现了这一套,我觉得他们非常了不起,但是作为一个云厂商而言,这应该是我们要做到的事情。今年我们就会在可用区(availability zone)以及region方面,推出自己的产品,意思就是用户不用再去考虑异地灾备以及复制的问题,你只要说你需不需要做这个事情,需要做,我们就帮你做,这是我们今年要推出的一个产品,也是青云要做到的事情。也就是说从最根本的来讲,我们每一个区,每一个zone里面,青云要做好基础设施的保障,要保障首先服务器不宕机,或者尽量少宕机,整个zone的大型的事故最好是不发生,万一发生的话,我们也有可用区的这种产品能够让你跨区,能够实现异地双活,一个区域宕机了以后,另一个区也许是需要点时间,但是终究你能够很快的回来,这是我们云计算厂商需要做到的事情,青云现在还没有做到,但是今年就会有。

   

7. 青云的云平台都用到了哪些比较知名的开源项目呢?可否选择其中一两个,说明下青云进行了怎样的定制化研发?还有您怎么看待开源解决方案和选择技术自研这两条路的利弊?

甘泉:外界一直对青云有一种误解说青云好像不怎么用开源,什么都想自己做,但说实话,这不是我们的初衷,这不是我的出发点,我对开源从来没有什么偏见,或者好恶,我非常尊重他们的劳动。但是问题在于,很多时候,开源意味着你可以随时去下载去修改,从它的本质上来讲,它不是一个直接的商业产品,这意味着什么呢?意味着很多时候他没有什么责任感,我说的责任感不是指技术责任感,他一定是有技术责任感的,但是他没有产品的、服务的那种责任感。这样的话,很多时候我们会面临一种窘境,就是我想用你的东西,但是我发现我很被动,因为我是提供商业产品的,用户对我的要求非常的高,出了问题立即要解决,我如果依赖于开源社区,我就会发现他们的响应非常的慢,解决东西也会非常的慢,我去提一个Request,发现他们的程序员也许正在休假。选择开源,还是选择自己做,根本出发点是到底能不能满足用户对我产品的要求,一方面是你的产品的能力是不是能达到用户的要求,另外一方面是你这个产品从未来的发展来看,能不能在长期的时间跨度上,满足青云长期发展的要求,这两方面对于我们来讲,都是比较严肃的问题。青云到目前为止,除了Linux,还有像QEMU虚拟化组件、MySQL数据库组件,除此之外的大部分,包括网络、存储、调度系统,整个都是青云自研的,我再次重申一遍,青云自研的原因不是因为我们喜欢自己做,我们也希望社区能做好,但说实话,很多时候他们做不好。

   

8. 青云会不会有把自己的某一个模块,或者技术开源出去?

甘泉:当然会,我们实际上在比如QEMU还有libvirt这几个虚拟化技术上已经贡献了好几个Patch,回馈给社区。我们如果用了开源的东西,而且能去解决问题,发现问题,我们一定会回馈给社区的,不会藏着掖着。另一方面的开源是,比如我们的APPCenter今年也会开源,我们会把我们认为需要大家共同营造的这部分也开源出去,在github上面有青云的专门的一个目录,叫QingCloud,里面提供的开源项目列表挺长的,当然很多东西并不大,但是我们一直都在贡献。总之我想说明一点,就是青云对于开源的态度,我们是没有什么成见的,我们欢迎跟开源软件,还有开源社区合作,去把事情能做好。

   

10. 现在是已经发生了变化?

甘泉:从12年一直到16年,大概四年时间,我们都是工程师直接处理工单,但是现在有点应接不暇了。因为用户多了,而且用户对于云计算的要求非常的高,别看我们负责的是IaaS或者PaaS这一层面的,但是用户只要他的业务出现任何问题,他都会找你,这也许是他的问题,但是他也会找你,他认为我是跑在你这个平台上面,你就应该跑的好。我不是抱怨,我理解用户的这种行为,所以很多时候我们要去帮助用户解决他的业务的问题,在这个方面会占用工程师大量的时间。以前我们虽然是这么做,但是从16年开始我们也建立了自己的客服系统,我们现在是分一级二级三级,到第三级是工程师去解决,一级是电话客服,二级是专门做工单预处理的这部分客户人员,他们负责解决大部分的已知问题,以及用户问的常见的问题,他们会屏蔽大部分的工单,因为很多工单用户都已经问过了,已经解决过了。剩下那10%,20%还是要由工程师直接解决的,这也是我们觉得我们的工程师必须要去做的,因为你在卖一个产品,你是这个产品的Owner,那么你还有一个职责是要为这个产品做服务,为你的客户做服务,不能离客户太远,工单很多时候用户直接问这个产品的问题,那么这个产品的Owner要跟用户去沟通,更好的了解用户对产品的看法。在这一点上,我觉得每个工程师,虽然辛苦,他们还要写Code,还要做新产品的研发,但是跟客户的交流这个渠道不能断,所以我们坚持用工程师直接处理工单这么一种方式。

   

11. 青云是否有考虑发展自己的生态体系,比如携手更多的ISV软件开发商,你们的AppCenter是其中的一个举措吗?

甘泉:AppCenter当然是我们其中的一个举措,AppCenter的定义是这样的,如果把我们以前的IaaS,就是云平台底层那块,看作是资源交付的自动化的话,那么APPCenter就是应用交付的自动化,这是两个层面的东西,我们并不是要去直接做应用,我们是要用一种规范化的方式能够让应用的交付变得更加的规范,更加的方便,这是以前所没有做到的。所有的云平台以前都只提供资源,用户的业务需要直接对应于资源,这是一件很麻烦的事情,现在是你可以把你的业务通过一种规范的方式打包成应用,应用再去翻译成资源,我们希望通过这种方式服务更多的独立软件开发商。他们以前是没有章法,完全按照自己的方式去说,我如何在云平台上提供自己的服务,现在是有一个规范,而且这个规范里面我们帮他们做了非常多的事情,他们可以非常轻松,非常方便的在青云的平台上开发软件应用,只有这样都做好了之后,我觉得合作才会变得更加的顺畅,否则以前的话,不仅仅是软件开发商,包括我们自己在青云上开发一个应用的时候,一个熟练的工程师,可能都要花好几周,或者一两个月去开发一个应用,在这种情况下,我们如何去团结这个生态?如果我们自己都这么艰难的话,我们怎么让那些开发商能够非常Happy的为我们开发应用,这是做不到的,AppCenter就弥补了这个不足,当然AppCenter是一个比较新的理念,我们现在也在推广让用户去接受,用这种方式去开发应用,但是从我们内心来讲,我真心觉得它是一个非常好的应用交付的方式,也希望大家能够尽快的接受它。

   

12. 那这个从APPCenter到IaaS层翻译是你们来做的还是他们?

甘泉:是这样,我们定义的是规范,也就是说对于开发商而言,你只需要像写文本一样,写上你这个应用需要什么样的资源,以及这些资源之间是一种什么样的关系,它不是让你去写Code,是让你去写配置,当你们通过配置把资源之间的关系,还有规格都定义好之后,你点应用的创建deploy的时候,我们会为你创建这些应用,以及按照你定义的方式让他们之间发生关系。以前的方式是什么?因为没有中间的定义的这一层,我们APPCenter PaaS框架,如果你要开发一个应用的话,你需要直接去跟资源打交道,需要去写要创建哪些主机加载什么样的硬盘,他们之间通过什么样的方式交互,这些都是你来定义,你实现的,我们只提供API。

   

13. 如果说这个应用非常复杂,在不同情况下对资源的请求波动比较大,负责均衡这些事情会怎么处理呢?

甘泉:是这样,一个应用部署的时候只是规定这个应用的基本的有哪些元素构成,以及他们之间的关系,它的规模实际上是你在创建应用的时候,你需要去定义的,它是中型、小型还是大型,至于小型、中型、大型对应的你需要起多大的虚拟机,用多大的硬盘,这些是你在定义的时候,你自己就已经写好了的。之后比如说一开始你想试一下,你可以起一个小型的应用,在运行的过程中,你觉得能力不够了,你可以选择对应用扩容,扩容成中型,它自己会按照我们既定的方式把它扩容成中型应用,中型还可以扩展成大型应用,在这个过程中,你是不需要再去推翻重来的,你只需要点操作说,我要去扩容,像这种方式就能够实现一个应用的可持续的发展。

   

15. 这一块应该也可以通过容器已经提供了的基本的能力实现?

甘泉:当然,你说的容器以及虚拟机,这些都属于资源层面的东西,也就是说,应用本身你去定义那些应用的配置的时候,你可以规定应用是跑在容器上面,还是跑在虚拟机上面,这都是没有问题的,你甚至可以Switch。所以为什么说应用本身屏蔽了资源这层呢?说的就是这个意思,对于业务,也就是应用的使用者而言,你其实并不关心它是跑在容器上面,还是跑在虚拟机上面,你只关心我需要这样一个应用来帮我解决问题,当你部署它的时候,它会自己去按照它的要求跑在容器上面,或者跑在虚拟机上面,甚至跑到物理机上面,这是资源层面的东西,我们对上要屏蔽资源层面的东西,这就是应用中心的价值所在。

   

16. 最后一个问题,您认为青云在国内市场的愿景是怎样的,有国际市场拓展的规划吗?青云离您创业初衷时的成功还有多远?

甘泉:青云在国内的愿景其实没有那么大,也许Richard的愿景会比较大,但从我的愿景来讲,青云能够在公有云和私有云上面保持国内领先地位,不掉队,我觉得青云就基本完成了任务,因为作为一个创业公司不容易,尤其是像现在云计算这样风起云涌,每一个大公司都把云计算作为自己的战略的时候,青云还能保持第一集团不掉队,我觉得我们已经非常了不起了,以后怎么着那是以后的事情。至于说成功不成功,我是这么看待的,对于青云而言,当然以后上市,包括变成一个非常大的公司,这是成功,但是对我而言,我定义青云的成功,还是以前的那个初衷没变,就是青云是要提供一种更好的云,云是干什么的?云是要提供一种新的IT资源交付的方式,从这个角度来讲,如何定义青云是否成功,我觉得我的定义很简单,如果能有一大批的传统的对于IT资源强依赖的企业,能够把他们的核心业务搬到云上来,如果能实现这个目标,我们青云就会在从传统IT到现代IT、新型IT的转型中起到决定性的作用,如果能达成这个目标,我认为青云就成功了,其他的在我看来都不算成功。

InfoQ:好的,谢谢甘泉老师。

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT