针对为什么要从门槛很高,而且有欧美巨头把控的企业级存储领域创业,SMARTX创始人徐文豪表示,创业的初衷首先是希望给企业带来价值,他们希望的是解决企业最难的问题,目标就是打造创新驱动的,能和世界一流企业竞争的一家创新公司,不仅是在国内,还要在全球。
SMARTX创始人团队(从左到右) 王弘毅 徐文豪 张凯
支撑徐文豪雄心的是SMARTX的技术和产品,SMARTX意图颠覆的就是企业一直使用的笨重、复杂的存储架构,SMARTX通过软件重新定义数据中心,将类似Google等互联网公司数据中心的架构带给企业,并结合最新的硬件趋势,为企业构建更快速,更易扩展,更灵活的数据中心。
SMARTX深深的烙上了创始人徐文豪的印记,这位硕士毕业于清华的高材生认为,在系统领域,最牛的人并不存在于学术圈,而是在工业界中。“VMware的联合创始人Mendel Rosenblum就是一个典型的例子”,他在加拿大UBC(英属哥伦比亚大学)读书期间,意识到,在系统领域,顶尖研究人员,都是像Rosenblum、Jeff Dean这样在工业界打拼的人。于是他下定决心,投身到工业界中打磨出一个兼具创新性和实用性的系统。
下文是对SMARTX创始人徐文豪的专访实录:
拉上师兄师弟创业
CSDN:国内对SMARTX的了解并不多,首先想请介绍下目前的公司情况和团队人员,以及从事存储领域创业的初衷?
徐文豪:我之前是在硅谷Nimbula公司工作,这是EC2的创始人Chris Pinkham做的一个Startup,后来被Oracle收购了。当时做虚拟化的计算解决方案的时候,发现用户最大的痛点都是存储的问题,计算控制层很容易做到高可扩展和高可用,而传统存储无论是在性能上还是可扩展性上都成了瓶颈。回国创业后,在考虑方向的时候,最终就确定了数据中心中虚拟化环境下的分布式存储方向。
组建团队时,第一时间想到的自然是自己读书时的师兄弟,我们在清华读书时都是在高性能计算所,也是一个足球队的队友。毕业后他们分别去了微软亚洲研究院和百度基础架构组工作,一直都是做分布式系统的研究和研发。微软亚洲研究院和百度基础架构组应该是当时中国做分布式系统最好的两个地方。本来就是朋友,有天然的信任关系,他们也非常认可这个方向,一拍即合,他们就立刻加入了,这时我们其实就拥有了一个涵盖虚拟化Hypervisor技术,分布式存储技术和大规模互联网运维实战经验的一个团队。后来团队慢慢扩张,又有EMC和Redhat的兄弟加入。
CSDN:存储这一块,基本上是属于门槛比较高的一个基础领域,您觉得这块的门槛有哪些?
徐文豪:第一,存储的高门槛来源于它对于稳定和可靠性的要求,对于一个企业最宝贵的是数据,所以说企业在选用存储的时候非常的小心,存储必须能达到很高的稳定性,他们才会使用。未来的数据中心肯定是围绕“数据”和存储来设计的,而不是计算。
第二,是它的研发和技术的门槛。尤其是虚拟化环境下的分布式存储领域,要求团队既懂虚拟化技术,又要懂分布式存储和本地文件系统,所以说它本身是一个需要综合非常多的计算机系统知识的才能做好。
第三,是代码和测试门槛,要求你的团队的工程性非常好,代码质量控制需要非常的严格,对于人员要求自然也就高了,在这个领域,一个优秀的工程师可以完爆100个甚至1000个平庸的工程师。分布式存储系统对于测试更是一个高挑战,要自动化所有的测试,不停的制造各种网络失效、硬盘坏掉,这种大规模下才会出现的一些失效的东西,通过模拟来测试分布式系统,这些都是比较高的门槛。假如说你半年,或者是九个月开发完,你可能需要一年,甚至更长的时间去把它测试、加固。
SMARTX的定位就是能和世界一流企业竞争的公司
CSDN:从一开始成立SMARTX公司,SMARTX的定位是什么?
徐文豪:SMARTX的核心定位是一家不断创新和颠覆的高科技公司,只不过在我们做的时候,虚拟化盛行,而虚拟化环境下的一大痛点是存储,因此我们也就从做虚拟化环境下的存储开始起步。目前全球的存储创业公司基本都是以色列人和印度人做的,我们想做一个更加优秀的科技公司,跟这些世界一流的工程师去竞争。
对比Nutanix,挑战VMware
CSDN:从颠覆EMC等传统存储类厂商,到产品性能方面超越Nutanix等一票硅谷竞争对手和前辈们,再到从存储纬度支持“去VMware”挑战,你们的目标是成为“NEXT VMware”?
徐文豪:这个只是记者的写法,我们没有这么想。VMware是一个创新的榜样,但不是我们的目标,事实上VMware跟我们不仅仅是竞争对手,也是合作关系,我们需要关注的是市场和客户需求,做本领域最具创新性的公司,不仅是在国内,还要在全球。我们跟本领域的大部分公司都有过交流,包括Nutanix,在技术上,我们已经完全不输于他们,但是我们在商业和市场上有很多要跟他们学习的地方。
CSDN:那能具体的对比一下,SMARTX跟Nutanix吗?包括技术、产品上的差别?
徐文豪:Nutanix的最主要产品形态是一体机,一体机是支撑它收入的最主要来源,而我们的商业模式是软件方案,从这个角度看,在美国跟我们比较像的是Maxta。但是Maxta做得不怎么样,我们基本上不用在技术上和它对比。
在技术上,我们的架构要比Nutanix更加的干净和更加的稳固,为什么这么说呢?举个简单的例子,Nutanix的Meta Data,也就是元数据管理,依赖于一个外部的开源项目,叫做Cassandra,它是一个分布式的数据库,它把所有的存储元数据放在了这个更加复杂的分布式数据库里面,来实现它的元数据扩展,这可能帮助他们很快的出产品,但是存在很大的隐患。Cassandra本身就是一个非常难维护的东西。它如果出了问题,我相信Nutanix他们一定非常头大。他们自己不但要运维自己的存储系统,还要运维Cassandra,还要写一套管理系统来管理它,而在这个方面我们并没有依赖于一个开源项目去管理我们的原数据。我们自己实现了一个为我们的存储系统定制的一个分布式的元数据机群。非常的稳固,也非常的干净。这也符合我们工程的一些价值观,我们不喜欢Hack,不想把不必要的复杂度引入到我们的系统中。
SMARTX 技术栈
CSDN:能详细的给我们分享一下SMARTXOS1.0版本,这款超融合架构产品使用了哪些技术?
徐文豪:首先SMARTX OS最核心的是存储,叫做SMARTX ZBS,ZBS是一个分布式可扩展的分层存储。它不但是可扩展的,而且它可以利用SSD和万兆网络等快速的硬件来实现热数据和冷数据的自动分层,帮助用户把最热的数据放在最快的存储设备上;
ZBS是一个并行块存储集群系统,支持单虚拟磁盘并发读写,一个虚拟磁盘可以同时挂载到多个虚拟机同时读写,因此ZBS可以很好的支持Oracle RAC等集群数据库系统,用户的关键业务可以无缝的迁移进来。
ZBS是一个面向虚拟机的存储系统,在虚拟化支撑上,我们目前支持KVM、VMware和Xenserver。无论用户使用哪种Hypervisor,都可以获得瘦供给,分层存储,秒级快照克隆,时光机,异地容灾,同城双活等存储特性。你以前需要够买,例如EMC高端存储,一个很昂贵的方案才可以做到这个数据保护级别,现在SMARTX OS加上这种X86服务器就可以做到。
另外,SMARTX OS对OpenStack的支持非常的好,我们现在国内有一些OpenStack的合作伙伴,他们的OpenStack集成到了SMARTX OS中,虚拟机秒级启动。未来,SMARTX OS会支持Docker和Kubernete。
开发历程解密
CSDN:能否分享下你们的开发历程?你在开发过程中,遇到哪些坎?
徐文豪:开发的时间主要花在两个方面,一个是在架构设计上,包括分布式系统和本地文件系统的设计,我们没有基于一个开源的系统做,开源的系统存有设计和实现上的很多问题,我们也没有用现有的本地文件系统,而是直接在硬件的裸设备上去实现了一个自己的文件系统来保障好的性能;一个不好的系统设计,会让你事倍功半,会花很多的时间去写一些无用的代码,非常的复杂,最后达到的效果还很差,所以我们将很多时间花在了设计上,确保我们是在一个正确的道路上前行。
第二个是在代码review和自动化测试上,存储拼的就是工程人才和测试。
而上面说的这两个方面,我觉得是做一个稳定的分布式系统的保障。
CSDN:关于测试这一块,能展开说一下,你刚才一直强调测试这块?
徐文豪:举一个例子吧,我们的基于Gerrit,Jenkins,Docker和Beaker的整套自动化集成,部署测试方案,当一段代码提交后,Jenkins会在我们的测试集群上启动一个Docker容器运行所有的单元测试,Docker为我们提供了更细粒度的资源隔离,使得我们可以在同一个物理机上同时运行多个Patch的测试用例,提升了我们的测试效率。当单元测试都通过后,Jenkins会通知Beaker自动在多于三台物理机上安装部署SMARTX OS,并自动运行所有的集成测试,这些集成测试中就包含了大量的失效测试,功能测试,用户案例测试,压力测试和各种回归测试等。
这里面充满了挑战,比如说失效测试,随机地制造网络和硬盘失效是不够的,这些失效事件还必须能够在某个特定的是简单出现,比如一个硬盘坏的写失败,在代码的不同的branch上,造成的后果也是不一样的,那这样的话,其实你的测试空间是一个非常大的无穷集合,那我们就必须得花很多时间来研究怎么通过有限的测试集来验证系统的正确性。
能软件解决的一定会软件解决
CSDN:为什么SMARTX要将存储完全软件化?
徐文豪:其实计算机历史上已经证明了无数次了,任何一个问题,当它能够被软件解决的时候,它一定会被软件解决。例如你当年的486DX 66MHZ的时候,想看电影,必须买一个1200RMB的解压卡,后来随着CPU能力的加强,通过CPU的计算,加上一个软件就可以解码看电影了,现在谁还会去买专门的解压卡去看视频呢?
所以说,我们之所以现在能够用软件来解决存储设备的问题,也是跟现在硬件的发展分不开的,如果早五年也做不到,现在硬件的发展主要来自于几个方面,一个是CPU,Intel的CPU已经可以在12个月就可以推出下一代,它的核数可以越来越多,很多以前专用的存储硬件,已经可以通过软件在CPU上运算解决;
第二个就是固态硬盘的发展,固态硬盘的随机读写能力是普通硬盘的10倍,甚至上百倍,上千倍,固态硬盘,是存储热数据的一个介质趋势。
第三个,就是现在万兆网络已经很普及了,如果你做一个分布式存储,千兆网络是不可能做到的,因为太慢了,本地的固态硬盘再快,从另外一个机器取数据,网络的延时和带宽都是不够的。现在随着万兆网络,Infiniband的普及,为我们做分布式存储提供了更好的传输介质。
这些通用性硬件的发展,使得用户可以很轻松地获得一个满足性能要求的硬件配置,而通过安装我们的软件就可以获得性能和扩展性俱佳的存储服务了。
未来会支持Docker
CSDN:那现在你们公司和一些合作厂商,这方面有一些规划吗?
徐文豪:有,现在有非常多的渠道已经开始找我们,多家已经开始合作;硬件厂商也在找我们合作,我们后续会发布更多的合作消息;而计算生态上,国内很多虚拟化计算供应商,以及OpenStack厂商都在跟我们合作。
CSDN:下一步的一些规划方面透露一下?
徐文豪:下一步,我觉得比较值得期待的是,我们对于docker的支持。——PHP培训