9 月 21 日,EGO 北京分会会员、SmartX CTO 张凯作为线上分享第一季嘉宾,与超过 400 位 EGO 会员交流了《 SmartX 在超融合领域的实践 》。本文根据当天口述内容整理。
张凯,EGO 北京分会会员、SmartX 联合创始人 & CTO。张凯 2011 年毕业于清华大学计算机系高性能计算所,毕业后在百度基础架构部工作两年,主要工作在分布式系统和 Hadoop 大数据相关工作。同时,张凯也是 sheepdog 分布式块存储开源社区早期贡献者。在 2013 年张凯和两位清华师兄徐文豪和王弘毅一起创办了 SmartX ,担任 CTO。
大家好,今天跟大家分享 SmartX 在超融合领域的实践,第一部分是关于超融合架构技术,包括 SmartX 公司产品和行业趋势等内容,第二部分是创业经验和感悟。
SmartX 公司的使命是 make IT simple ,我们希望通过软件方式,解决当前数据中心里最难解决的问题。我们把这些问题按照层次和阶段进行划分,首先是 SDS ( Software Defined Storage )软件定义存储,其次是 HCI ( Hyper Converged Infrastructure )超融合架构,最后是企业云。
在某种程度上,计算是依附于存储的,而数据的价值在很多时候就决定了公司的价值。怎么利用好数据、怎么挖掘数据的价值,除了计算算法,存储如何更好地辅助计算也是一个很大的话题。
SmartX 核心业务是分布式存储,主要应用领域集中在虚拟化,包括私有云和公有云,主要面向 OpenStack 、KVM 、VMware 、Xensever 等环境。在软件定义存储的基础之上,结合虚拟化计算和 HyperVM 技术,以及软件定义网络 SDN 和 NFA 技术。这些技术融合在一起,或者说,把这些技术部署在同样对等的服务器上,比如都是 x86 平台,我们认为这种部署的方式架构就叫做超融合架构。
也就是说,一台服务器既提供了计算、存储和网络功能,把服务器横向扩展,它就组成了一个小型的私有云环境,它不再对外部有额外的硬件依赖,比如专用存储网络、专用存储设备等。
这其实是一种架构上的演进,因为现在传统的数据中心更多的还是 “ 计算是计算、存储存储、网络是网络 ”,很多都需要硬件支撑。尤其是网络和存储,在很多时候都采购专业硬件。超融合架构就是希望把它们融合在一起,这样的好处:
首先是成本降低,用户不需要采购各种各样的复杂硬件。
其次从运维角度来看,超融合强调的是统一运维、统一管理、单一管理入口以及用户体验等等,这些都降低客户运维成本。
超融合架构本身只是一个架构,它向前演进还会有企业云和混合云的概念。SmartX 会和厂商一起做企业云的整体方案。我们认为,未来的数据中心都是以超融合架构为主,私有云也好,公有云也罢,更多的还是融合在一起,不管是管理上、架构上、运营上 …… 硬件都是标准 x86 服务器,公有云和私有云之间可能会通过混合云和企业云的方式连接,不同的业务会运行在不同的环境里面,它们互相之间也会有数据通信和交换。这也是我们未来发展的一个重要的方向。
SmartX 是在 2013 年 7 月份成立的。2016 - 2017年,业界权威 Gartner 、IDC 分别将 SmartX 列为国内最主流的超融合厂商。2017 年 8 月份,我们完成接近一亿元的 B 轮融资。现在 SmartX 在北京、深圳、北美都有研发中心,销售覆盖了北京、上海、深圳、广州等城市。
并不是所有的分布式存储都可以简单的和计算去融合,直接变成超融合架构。挑战还比较多:
我们应用的场景是虚拟化 Hypervisor 。首先它不像对象存储,它对延迟的要求很高,它可以随机地覆盖写。在分布式场景下有随机的更新,所以其中性能优化是非常大的挑战。
我们把存储和计算搬到一起了,如果你存储消耗太多的计算资源,就会影响用户业务。比如一个物理机有 40 核,那就需要花 40 核 CPU 的钱。
如果存储运行要占 30 核的话,他只有 10 核用来计算,它只能卖 1/4 的钱,这对用户是非常不划算的。和传统方式以及一些 SaaS 产品相比,我们在存储资源的消耗上只有他们的 1/10 ,在这种情况下还要在性能上远远高于他们,这就非常难了。我们在这方面做了很多工作,大家有兴趣可以线下交流。
对存储来说,稳定性和数据安全性一定是第一优先级的,其他都可以次要考虑。
如何解决超融合的技术挑战、实现超融合的技术优势?
SmartX 的核心是软件,我们有自己的 ZBS 分布式块存储,在之上是我们自己打造的基于KVM的 Elf Compute 虚拟化平台,同时还支持 VMware vSphere 、Ctrix XenServer 和 OpenStack 。
另外,我们有超融合一体机 SmartX Halo 。很多客户的机架位比较紧张,这个服务器在空间上跟之前相比是 1/4 。他在整体的功耗上跟之前的四台联 U 服务器相比也有一定优势,很多传统企业希望越简单越好。
我们希望给客户最极致的体验,也就是说,在客户那里只要上架、加电,做一些简单的网络配置,登录管理界面以后就是一个完整的私有云。它是可以和公有云媲美的私有云环境,也支持横向扩展。
需要扩容的时候,你再买一个两 U 的服务器就可以扩容一倍的节点,而且所有的扩容都是平滑扩容和动态扩容,中间不需要停机,升级也不需要停机。如果发生任何硬件故障:
首先从软件层面,我们肯定保证所有的单点故障,我们也做了机架级安全等功能。
其次,所有的硬件都是双倍的,比如电源、网络。
另外,硬件设计非常模块化,有任何一个硬件故障都可以在线更换,比如一个节点坏了可以直接把抽屉拉出来,再插上新的抽屉,里面又是一个新的服务器,通过软件重新部署一下就可以。电源模块也是一样的。
首先,我们觉得,一个公司的基因是从公司创立时就决定的,我们最早希望从兴趣、能力和市场三个方面来衡量,或者选择我们想要做什么事情。我们都对系统感兴趣、对技术感兴趣、有能力做这件事,并且市场也是我们非常看好的,所以我们选择超融合方向的分布式存储。
其次,我们希望做一个有技术影响力的公司,这就决定我们不会以开源技术方案为主。我们要解决数据中心里最难的问题。如果已经有人解决得很好了,那就不需要我们来解决。我们希望能够面对最难的问题,并且给客户带来最大的价值。
这四年来,我的一个很重要的感悟就是,选择比努力更重要。努力很重要,但选择比努力更重要。涉及到自己的选择,包括我们选择分布式存储、选择自主研发、选择技术转型等,这些是在创业道路上不断地给自己增加难度的,但是我们认为这是值得的,现在回想过去也是非常难得的。
为什么没有选择开源?我们热爱开源模式,但是不会选择已有的开源软件。上图是我列的机构贡献数排名,可以看到 Redhat 占了近 70% 以上的 commit ,而国内一些公司基本上都不到 1%。
如果这些代码不是你自己贡献的,你没有对项目的绝对控制,那你怎么敢向客户保证你提供的质量是靠谱的?各个硬件公司发展非常迅猛,想通过软件发挥硬件的性能,那势必要对现有软件架构都做颠覆,我们选择自己开发。
企业级市场风生水起,收购、IPO 、创业公司等等。我列了几个收购案例,尤其是 Dell 收购 EMC 应该是 IT 领域最高金额的收购。这个行业是被大家看好的,所以才会有这么资本和巨头投入进来。
企业级软件也是有优势的
首先是技术壁垒。SmartX 最早花了两年多去研发产品,完全没有做任何的市场行为,也没有销售人员。我们花了两年时间形成技术壁垒,我们认为,其他的公司如果要赶上我们的节奏,也要花两年的时间,甚至更长。
其次是用户粘性。企业级软件的用户粘性是很强的。企业级软件的生命周期本来就很长,一个版本或一个产品可能会有五年甚至十年的生命周期。
另外是口碑。口碑一旦形成,客户还是非常认同好口碑的产品的。
当然了,也有很多劣势
很多客户的要求很苛刻,要求软件部署之后不能升级。尤其很多金融客户,他觉得我跑了两个月甚至一年都没问题,我就认为它是没问题,我就不升级了。但是,之后有什么问题,我们也必须为客户解决。
其次是很多客户是不能远程服务的。客户有敏感数据,比如公安,他的机房进出都是非常严格的,也不能远程服务。客户自己维护这么复杂的系统,对软件的自维护性要求就非常高。
另外就是本土优势比较弱。比如做 APP ,针对中国做本土优化,可以和海外巨头拉开差距。但是企业级软件,客户已经先入为主地习惯了 VMware 或者 EMC的产品体验和服务,想让客户从别人的软件上迁移到我们的软件上,还是有很大难度的。当然这也是一把双刃剑,如果我们的产品做得好,我们获取海外市场也就相对容易。
创业做了这几年以后,觉得自己做得不好、还有提高空间的地方,主要是和管理相关的,包括团队管理、时间管理、激励和惩罚等。这也是我加入 EGO 的原因之一,希望和大家去学习管理方面的经验。
我的分享就是这些,最后祝大家身体健康。谢谢!
我相信每一个创业公司甚至大公司本身都存在很多问题。创业公司怎么和大公司竞争还是有一些优势的,我觉得最重要的是看你想吸引什么样的人。
想吸引到技术很牛的人,那你要在这方面展现出公司实力;想吸引很有创造力的人,那你要在这方面多外宣传公司的创造力。我们要在市场上发出自己的声音,让人才看到我们,这是我认为的一个比较有效的方式。
非巨头公司如何平衡业务/生存问题和长远技术储备问题?
这个问题很尖锐,确实是我们现在面临的问题。我们现在是一部分人做前沿研究,其他人专注业务。我们面临的竞争比较激烈,我们距离心中认可的位置还有不少距离,但是新的技术又很难放弃,所以我们会不定期的有部分人去做长远的技术调研和技术储备,这是我们现在使用的方式。
SmartX 超融合与私有云的关系如何?底层是否基于 OpenStack ?
超融合架构是私有云搭建的一种架构方式,也是未来企业私有云的架构趋势。
私有云强调 IT 资源的按需使用,需要一个充分虚拟化和灵活使用、扩展的基础架构,超融合架构恰恰能满足这些要求。相比当前超融合虚拟化的产品,私有云更加强调自服务。
SmartX 为 OpenStack 提供存储层的服务。具体实现是:SmartX ZBS 分布式存储组件通过 iSCSI 接口支持 OpenStack 平台的 Cinder 服务, Nova 服务和 Glance 服务,对外提供虚拟机镜像和虚拟卷服务。
以联通沃云为例,联通最早采用开源分布式文件系统 Ceph,但无论是社区版还是商业版Ceph都不能完全满足联通沃云需求:
高负载的性能;
开源依赖社区修复,响应慢;
Ceph 产品化程度低,二次研发成本高;
首先从软件架构上讲,当前双方的理念比较一致,都选择了类 Google Colossus 的架构,和 Ceph/ GlusterFS 等基于哈希的开源系统不同,这种架构通过分布式元数据服务来精准控制数据块在系统中的分配位置,以求达到最优的 I/O 性能和稳定性,更好的利用超融合架构中,计算和存储运行在同一台主机上的优势。
在具体实现细节上,SmartX 对系统架构的简洁有更高的追求,我们自己实现了高可用分布式元数据管理,而不是像 Nutanix 一样基于开源的 Cassandra ,同时为了提高存储性能,SmartX 很早就在本地硬盘上直接构建了用户态的文件系统,绕过 Kernel 文件系统层的性能开销,而 Nutanix 仍然在利用 Linux Ext 4 。
下一步的发展方向上,SmartX 也不会和 Nutanix 一样向 “ 上 ” 走向云的管理层甚至提供云服务,而是专注在超融合方向,在产品品类上做横向的扩展,不仅提供类似 Cohesity 、Rubric 这样的超融合近线存储,更会做在线和近线的管理和数据融合,甚至基础设施与数据管理、分析层面的融合。
最后,相比 Nutanix ,SmartX 有更好的开放性,目前产品在虚拟化方面除了支持 VMware 、Citrix 、KVM 等多种虚拟化平台和 OpenStack 等云平台;在硬件方面支持不同厂商多种型号的 x86 服务器,因此用户不用担心虚拟化软件和服务器硬件厂商的锁定。同时 SmartX 提供本地的技术服务,这点客户也很看重。
< 完 >
听说过超、听说过融合,却是第一次听说超融合。你有没有这种每个字都认识,但组合在一起就完全不知道说的是什么的这种经历?
推荐阅读
关于 EGO极客邦科技旗下的高端技术领导者社群,汇聚全国超过 400 位技术大牛,其中不乏「饿了么」、「知乎」、「同程旅游」、「得到」、「喜马拉雅」、「新浪微博」等著名企业的 CTO 及技术 VP 。EGO 致力于组建全球最具影响力的技术领导者社交网络,联结杰出的技术领导者学习和成长。