个人简介 秦小康,现任全球领先的企业级私有容器服务平台提供商Rancher Labs大中华区总经理职务,在开源和云计算领域拥有丰富的经验,在此之前,曾负责Citrix云平台事业部在大中华地区的业务,Oracle Linux/VM在大中华区业务发展以及之前在Redhat 负责JBoss,KVM业务在中国地区的销售及产品团队。
容器大会的介绍:CNUTCon是由InfoQ主办的顶级容器技术盛会,大会的目的是促进容器技术的发展与应用。CNUTCon为期两天,主要面向对容器技术感兴趣的中高端技术人员,大会聚焦技术落地,旨在帮助参会者了解相关开源项目和技术栈,使企业可以根据最佳实践构建自己的容器解决方案,并了解容器技术的发展趋势。
1. InfoQ的各位网友大家好,现在我们是在容器大会的现场,做客我们专访间的是秦小康,秦总您好,想问您的第一个问题是,您是什么时候加入Rancher的,为什么会选择这家公司?
秦小康:我是8月初才加入Rancher。因为Rancher从事目前比较令人Exciting的一个工作,我们主要是专注于Container Service的一些解决方案,我本人也在过去这些年,主要是从事Cloud相关的Business,对容器相关的技术也有所了解,我认为未来这是一个令人比较激动的趋势,我也相信容器技术会给我们的IT和Cloud技术带来一些颠覆性的变化,能够有幸参与到这个潮流里面也是我的容幸,所以我加入Rancher,希望能够在容器时代贡献一份自己的力量。
2. Rancher目前有多少人?
秦小康:我们目前不到一百人。
3. 主要的业务是在哪一方面?
秦小康:我们现在业务的主要focus就叫Container Service,Container Service这个词可能目前还比较新鲜,但是如果大家关注AWS或者Google的话,AWS在他们服务上面已经有Container Service这种说法了,主要是说我们能够把Container作为一种服务的模式,提供给原来只是能够单一的租用虚拟机的一些用户,因为有的用户在某些场景下面需要的并不是一个VM,或者一个重量级的系统,他可能只需要得到服务的某一些功能,所以Container本身作为一种轻量级的技术更适合这些客户去使用。
4. 你们准备进入中国市场吗?
秦小康:是的,我们现在中国公司正在筹划当中。就Container Service我再说几句,Rancher的业务并不是要拷贝一个Public的Container Service,我们还是focus要给大的企业和一些特定的用户去让他们搭建自己的私有的Container Service Platform,因为不是所有的企业都有特别充足的技术力量,能够去搭一个像AWS这样的平台,但事实上他们又有这种Container Service的需求,比如说现在finance的一些公司,甚至一些互联网公司,比如Gaming公司他们都有相应的需求,但是因为IT的复杂性,他们又不可能自己维护一个特别复杂的后台的IT平台,甚至他们单独去再Build一个成熟的Container Service的平台,Rancher的作用就是,我们可以替这些相应的客户搭建他们私有的Container Service平台,这样的话,他又享受了容器服务的便捷性,又把需要搭建后台的复杂性给屏蔽了,这是我们的一个理念。
5. 我们看到粱胜粱博士他之前创立了CloudStack,现在容器时代,他又创立Rancher,可以说你们见证了从虚拟化时代到容器化时代发展的变迁,不过现在有好多人把OpenStack跟Docker经常拿来做比较,很多人都说OpenStack可能会被容器替换掉,也有人说这两者可能未来会走向融合,您怎么看这个事情?
秦小康:这个问题问的好,这也是个比较复杂的问题,我想展开说一下,容器本身有它自己的特殊性和它的一些优势,它主要的优势还是便捷性和轻量级。你刚才提到了OpenStack,我们先从VM说,相对原来传统的VM,它能够把一些不必要的负载去掉,让我想要的这些Service或者应用能够得到更多的资源,所以使用物理资源的时候就有更高的效能。另外就是你们听到业界常在讲,容器会有秒级的启动,秒级的操作,原因都是因为它对下层的资源有很多的共享,它是一个轻量级的解决方案。具体说到替代呢,我倒觉得这个词可能不适宜去使用,因为容器和我们之前OpenStack Orchestration这一层并没有特别大的重合的部分。提到Docker,Docker作为容器里面目前非常优秀的一个解决方案,它也得到了广泛的使用。我看到更多的是很多人把Docker和OpenStack和一些公有云,甚至传统的VM,像VMware这样的方案,甚至在物理机上他们都可以合作匹配工作的。今天晚上这个沙龙,我有个主题去讲容器和OpenStack怎么共存,那我的观点也是一样的,就是他们在未来很长的一段时间应该是共用的,因为相互的优势不一样。将来的容器它有一个变化就是我们未必把OpenStack为主的infrastructure Orchestration这一层,作为一个Cloud的核心组件,因为用户需要的是最终他要得到服务,至于你用什么方式提供给用户,这个手段其实可以多样。而且容器或者Docker它需要拿到的下层的一个infrastructure是来源于OpenStack,还是来源于我们之前的CloudStack,还是来源于AWS,以至于来源于一个物理机,对Docker来说,其实它并不是太Care。而且像我们提到的Container Service这种方案,将来我们会致力于要把infrastructure这一层提供给Docker,或者提供给其他容器解决方案的这一层,要让它变得特别简易和透明,不要因为下面的基础架构这一层有不同的特性导致上面Container受到影响。这样的话会影响容器技术本身的设计的初衷。所以在下个阶段,你可以看到我会把Docker从现在的AWS很快的部署到像我们国内,我部署到阿里云,甚至部署到我的私有云,甚至部署到我的物理机。当然目前这个操作其实在我们Rancher上都可以实现了,但这将来应该是容器服务的一个常态。由此你可以想象我们带来这种便利性,将来当我们把一些复杂的应用,分成micro service的时候,我们会有很多很多的容器,再备一个平台来管理,而且这些容器会在不同的公有云,不同的私有云之间比较简易的切换和迁移,这是我们下一步的远景,目前看上去这个在容器时代是很容易实现的。
6. 我们看到RancherOS跟CoreOS看起来有点像,这两者有什么区别?
秦小康:它们有很多共同点,也有很多区别,其实RancherOS当时做的原因还是因为对Docker来说,它需要下面有个轻量级的裁剪版的Linux来保证它运行的性能,传统的像Redhat、CentOS等等这样的操作系统它有很多其他的开销,但实际上这些并不是容器需要的开销,所以当在一个特定的容器的运行环境里面的时候,我们需要一个轻量级的操作系统,CoreOS的诞生也是因为这个目的,但是后来我们发现CoreOS本身也比较重,因为CoreOS里面有一个很关键的组件就是Systemd,这是Linux启动以后的一个进程,Systemd本身也比较重,但是Docker希望能够有另外的办法,让下面的容器操作系统更加轻便,这是他们想要的。最终我们大约在去年的时候发现有这么个需求,正好之前有这么个项目,所以我们专门做了RancherOS。RancherOS非常轻便,整个的总量才25兆左右,但其他相关的几个,像你提到的CoreOS,还有其他的几个容器操作系统,大约它们的Size都在200兆左右了。在大多数场景大家都够用,但是有些特别紧要的场景,比如说我们有的人想把容器放在一些嵌入式的设备,我们想放在网络设备,比如说交换机,路由这样的设备,如果你下面Running的Container OS都需要两三百兆的空间,它运行起来对性能反而有了影响,所以它需要更小的粒度,我们RancherOS主要是这样。RancherOS发布以后得到很多人欢迎,我们也没有release正式版,但很多人都把它用在生产环境里边去。
7. 也就是说其实是跟具体的应用场景有关系,而跟技术其实关系不是很大,就是应用场景去决定采用哪种方案?
秦小康:是的,带来这个好处的最主要的原因还是因为容器技术本身的设计,像Docker它本身支持这种特性,只是我们在Docker上又做了相应的SDN的层,所以可以保证Docker的不同的公有云,甚至公有云和私有云之间可以相互被发现,可以被ID,可以相互通信等等这样的功能。
8. RancherOS可以说是容器时代的操作系统,通过历史我们会发现OS的发展,它也是随着时代的变化而不断的变化,容器时代的系统,它的要求又跟虚拟化时代的系统又不一样。虽然我们看到像类似于RancherOS这些项目都发展不错,但是国内具体到生产环境,或者说我们看到的大部分人还是在用CoreOS这样比较老的操作系统在跑容器,对于RancherOS的市场您觉得会怎么样?
秦小康:这个是这样的,RancherOS只是我们Rancher其中的一个产品,或者一个方案而已。说到容器的操作系统市场,我们认为这个市场还是有的,只是我们现在并没有特别专注说一定要把RancherOS卖成一个单独的产品,当然我们还是希望更多人来使用这个产品。刚才你提到国内大多数人还都没有用CoreOS,他们很多人还都在CentOS上,很多人因为方便性,还在Ubuntu,甚至Redhat这样的Linux操作系统上,这个就跟Docker设计之初,可能还是有些出入,但是目前因为我们大多数还并没有把Docker用到真实的生产环境,或者说只是在一定程度上替掉了一些VM功能,应用场景还没有被大量的发掘出来,我想随着Docker本身使用的广泛性,或者它的部署规模上到一千一万,甚至几万这样的规模的时候,大家就会发现,下面的Container OS是一个非常关键的组件,这时候大家的要求会逐渐提高。我们也欢迎国内各行各业的同事去Rancher里面,把RancherOS download下来,给我们一些反馈和使用经验,我们也可以不断的改进。因为可以预见,将来容器本身和Docker本身的使用会特别广泛,伴随着他们的使用广泛,RancherOS的使用也会越来越广泛。提前做一些准备,对我们没有什么坏处。容器OS本身的发展,我们很多Partner也非常看中,所以很多大的公司也找到我们,希望就RancherOS做一些技术层面,甚至社区层面的合作,我们还都在洽谈当中,我们对这个前途还是比较看好。但是Rancher我们不是只有RancherOS这一个Solution,刚才我也提到,我们有专门的Container Service平台,产品名字就叫Rancher,目前还是Beta版,在几个月以后会GA,大家到时候会看到我们正式的产品,我们Beta版的Program也欢迎业界的人士去参与,如果大家有时间可以到Rancher.com download这两个产品。
9. 而且我觉得这个时机切入的也比较好,它不像OpenStack在国内已经落地了,大家都在用,Docker还是处于刚开始比较火的阶段,你们进来也是一个比较好的机会。
秦小康:老实说Docker的发展是出乎我们意料,我们是去年成立公司,过去想是在Google把产品做出来,做出来以后,想先在美国市场看一看,但是目前中国市场发展的速度远远超过我们的预计,我们本来是准备明年才开始中国的业务,今年年终开始中国公司的筹备,人员的筹备,以及业务的开展,事实上我们已经有一些中国的客户在接洽,因为目前互联网的发展,中国经济的发展,还是走的非常快的。早些年,我们的IT技术跟国外其实有一到两年的差距,目前在容器时代,我们感觉就是几个月,可能大多时候都在同步,我觉得非常好。我们在之前的Dockercon,OpenStack conference上面都看到国内很多公司的方案在上面分享,发展速度很快,所以我们尽量能够尽快,尽早的在中国把业务开展起来,当然也期待更多的朋友一起了。
10. 容器时代相比Iaas跟PAAS来说,你怎么看现在有一个新的概念叫Caas的定位和发展呢?
秦小康:Container as a Service这个概念提出来很早,自从Docker把一些原来认为比较难以实现的功能,像刚才说的跨云之间的业务的切换等等这样的Feature给到一个实现的可能性的时候,Container as a Service就有了。目前我们从公有云的角度来说,AWS还是走在前面, 他们在去年的9月份就release了自己的Container Service白皮书,甚至他们现在正式在上面宣布自己的Container Service announce,另外像Google这样的公司也做了自己Container Service相关的引擎,希望去定义一个比较大的标准,让想要做容器服务的人有一个可以依赖的依据。但是我们根据历史经验可以看到,各个大的企业还会有自己的私有的Container Service的需求。过去我们对Cloud Service的分类,比如说IAAS,PAAS这样的分类,甚至现在加了很多x as a service的东西,我觉得Container Service作为其中的一个比较重要的形式,将来肯定会长期的存在,而且它是比较主要的一个形式。过去我们做PaaS的时候遇到了一些困难,PaaS的最主要的困难是在于,虽然它兼容了很多各种语言,各种形式,各种运行环境,但是它无法做到对客户原有的开发环境不要做更改。事实上在RD这个环境当中,过去每一个公司,每一个RD的实体,每一个devops的Team都有一些自己既有的工具,环境和行为习惯,但是PaaS有一个很大的要求,就是不管是Cloud Foundry,还是其他像OpenShift各种各样的这种Solution,他们都特别希望新的客户和原有的客户都要遵照PaaS定下来的某一套规程去进行它的开发测试build,但事实上大家都知道,完全颠覆一个旧事物的这种行为是很难推行的。
11. 就光版本管理这样一个简单的事情就很推进。
秦小康:你提这个特别好,现在大家认为,Docker也好,容器也好,对DevOps这种改动是天翻地覆的,大家认为DevOps终于可以做一个能够走通的CI或者CD这样的东西,关键的问题是他们没有改变我原有的流程,我们现在也希望致力于找到一个比较平滑过渡的方式,能够真的把CI/CD的模式通过Docker实现出来。我明天有个主题演讲,我会把这部分做一次Demo,大家可以看到我们有些有成效的工作在做。有一点我们可以肯定,容器的技术对PaaS的实现,会带来特别大的便捷性,现在很多人在探讨怎么样能通过容器的技术去更好的实现PaaS,而不是原来这种比较重的PaaS,甚至有人比较激进讲出原有的PaaS已经死掉了这种言论。确实它是很难实现,他们讲到的主要的一个问题就是你不要改变我原有的开发结构,我们现在通过Container的模式,通过IAAS的发展,比如像OpenStack这样的Solution,他把原有PaaS定义的有些层级做了一点实现,比如说把infrastructure搞得便捷,这层原来是PAAS要自己去设计;比如说工作流这样的东西,IaaS可能已经有一层去实现,现在Container Service从上层把应用的某一些进程,比如说Devops的流程做的更多,反而传统PAAS定义的那些东西越来越薄,越薄是有好处的,我们定义了这么多的平台及服务的流程,将来我们真的实现PaaS需求的时候,通过Docker,Maybe通过Rancher这样的工具可以让大家更好的实现一个好的PaaS平台。我们可以看到,从DevOps这一层,把开发测试build,甚至deploy这一层,如果我们能做一个很好的实现,可以想象我们原来PaaS所想要的某一些功能已经被实现了。我们跟一些大的企业去探讨的时候,他们也有相应的感觉,很多人因为过去的原因,真的实现了很复杂的PAAS,但是他们在做一两个项目以后,这个项目基本无法再向前推进,基本上投资都已经等于零了,所以他们还是想找到一个轻便的东西。说到这里,我想提一下我们CEO梁胜他一直秉承的一个理念,就是他要做的产品和他想要推广的产品,他讲究一定要简单,我们当时推广CloudStack也好,其他也好,我们都要讲这个东西一定要简单。
12. 有点像Unix那种理念?
秦小康:没错,甚至像Google的这种界面的理念,因为现在业界也讲,简单就是最强大的了,我们确实需要一个简单的方式。现在很多人想去做大而全的工具,甚至定义框架的工具,在现在这个时代,我们认为都不是很适合需要的,你们去看Rancher就知道,像我作为业务人员,包括您自己,您可能把Rancher download下来,一个小时都装好,它就Work了,不需要特别专业的技术,还要管下面的东西,因为我们可以直接就从digitalocean,AWS,直接开主机,这个过程你只要点鼠标就解决了,所以你看到那个界面会觉得它特别简易,也不需要了解到那么多的细节。甚至我的Marketing的同事,他不懂什么技术,我们就说你可不可以把他build起来,结果他可以Build起来,当然他不是太明白具体的概念是什么,但是我们的产品他可以Build起来。我们希望做到一个特别简单易用的Solution给到将来的服务,因为本身DevOps和RD这些同事的工作非常的繁复,也比较细节,是很辛苦的,你定义了一个DevOps Solution,或者你给了一个PAAS Solution,结果增大了他的工作量,那他肯定会抵触你。所以我们希望我们给到可以简化他工作量的一个方案,我相信对你刚才提到的Container Service本身也是一种推动,如果我们今天还把Container Service做成一个特别复杂的,比如说做成了像OpenStack这样的框架,那就过于复杂了,我相信这个推广是很难的。
13. 基本上能看到这样一个规律,在没有云计算之前,大家需要自己去买服务器,自己去机房里搭,然后自己做运维,有了云计算之后,我们又做IaaS,有很大一部分运维的工作省去了,后来再出来PAAS的时候,很多连自己搭建开发环境,包括后面测试环境升级环境的工作也省去了,到Container的时代,前面这些工作都要省去了,从另一个角度来看的话,开发的成本变得越来越低,越来越便捷?
秦小康:对的,我们现在多说一点DevOps,因为容器的接入,它为DevOps给了一种可能,让你更容易的实现持续集成CI这种模式,就导致原来我们很多都要手工去循环,比如像单元测试,我们要手工去写脚本,手工去Trigger工作,都会有一个解决方案让它能自动触发,所以我们把中间的一部分东西省了时间,而且增加了简便性,目前是这样。当然CI CD还有很多事情要去做,DevOps本身也是个很复杂的课题要去解决。