第一部分
ECS Stack
超融合产品的设计思想与架构
选型宝:客户在哪些场景下,会产生购买超融合一体机的需求?
EasyStack:我觉得一般我们用户选择超融合一体机,大概会有两个维度:
一种用户的维度是说,业务相对稳态,我就是要做整合,要简化IT、降低运维成本,例如一些医院、学校。
另一些客户,他的业务在不断的增长,体量不断扩大,希望上云,但是要找到一种稳妥的、可进化的上云路径。
例如,第一步,先把分布式的基础架构搭起来,再一步一步往前走,比如像中关村发展银行就是个典型例子,他们是个城商行,如果要把整个架构上云,是个很大的挑战,先从开发测试系统开始,让应用开发是在云化平台上去做,慢慢再转到生产系统当中来,他们需要超融合一体机具备持续进化到云的能力。
选型宝:ECS Stack 有着怎样的设计思想?云就绪的超融合,是否可以理解为,就是为了交付云,而设计的一个超融合?
EasyStack:在设计上,ECS Stack 具备 超融合+云计算的两个视角。
▣ 超融合视角:
从超融合的视角:一方面,ECS Stack要像传统超融合那样部署、扩容方便,另一方面,相比于传统超融合,ECS Stack需要在性能、可靠性、可用性、这些特征上表现更好,以承载客户关键应用的业务需求。
▣ 云计算视角:
ECS Stack融入了我们企业级云计算平台的一些基本的要素,可以成为客户上云的基础设施,同时ECS Stack具备可持续进化的能力,能够满足客户从超融合向到云计算平台进化的需求。
选型宝:从架构上看,ECS Stack跟以前的超融合一体机,有什么不一样?
EasyStack:
ECS Stack采用全对称分布式微服务架构。
关于超融合这个名词其实已经有十年了,这十年它的架构也发生了几代的迭代,我们看到业界的一些报告当中已经讲到了,其实现在超融合架构已经从第一代、第二代,发展到了第三代。
第一代超融合架构,主要还是把计算存储融合在一个物理服务器上,它的整个控制平面会独立在整个超融合的物理服务器之外,是一种单独的物理控制器的方式,当然这种架构其实没有做多大的发展就慢慢被淘汰了,当下市场上可能只有极少数的超融合产品还采用这种架构。
现在市场上主流的超融合架构都属于第二代架构,在这代架构当中,超融合的控制平面已经放到了虚拟机当中,整个架构是全对称的,我们可以看到几乎99%或者说几乎100%现在的市场上友商的产品,都采用第二代架构的形式。
第三代架构,全对称分布式微服务化的架构,这架构当中最重要的一点是把控制平面放到我们的容器平面里,用容器的方式去承载,将它全对称地放在所有的物理资源之上,这种架构实际上是从互联网行业里面学到了很多的经验,可以说企业级产品的下一代架构。
第二部分
ECS Stack
如何让超融合更快、更稳、更简单?
选型宝:从超融合视角,新的架构,让ECS Stack相比于传统超融合,有哪些方面的提升?
EasyStack:
正如前面所讲,从超融合的视角:ECS Stack一方面,要像传统超融合那样部署、扩容方便,另一方面,相比于传统超融合,ECS Stack需要在性能、可靠性、可用性、这些特征上表现更好,以承载客户关键应用的业务需求。
1、更高性能
通过最佳的软硬件联合设计的实践,找到软件跟硬件的最佳配置。
硬件:业内首次将4U4节点应用在超融合中,打造高密度的性能小怪兽
大家可以看一下,ECS Stack一个是4U高的服务器,有24个盘位,其实我们很多的朋友可能都听过2U4节点,听过一些高密度的刀片服务器,但是4U4节点应用在超融合场景当中,是EasyStack的首创。
我们为什么会选择这样的一个形态?大家可以看到24个3.5寸的大盘,这使得我们的存储容量和性能之间可以获得一个非常好的平衡,业界很多的超融合产品都使用2.5寸的小盘,ECS Stack没有这么选择,我们选择了3.5寸大盘,很多朋友会问那你的性能怎么办?因为3.5寸大盘的转速会低于2.5寸,没问题,后面我们会介绍,我们在存储上采用了一系列的新技术,可以使得我们在性能和容量之间取得一个平衡。
这样的一个产品当中我们还可以在它的机箱内部,每一台服务器上有两块系统盘,所以它的密度非常高,一个4U的框架里面,我们可以获取32盘位的硬盘的插槽数量,同时每一个节点,每一个服务器上能够提供两个千兆网接口,两个万兆网接口,还具备有两个PCI-E槽的扩展槽位,能够留给未来拓展。
这样的一个产品当中,我们可以承载30个云主机、50个云主机、100个云主机,各位可以试想一下,当下你的机房里面如果还使用物理服务器,30个应用可能就是60U,可能是2-3个机柜;在这样的一个小的4U4节点里面,我们可以把计算存储网络都能承载下来,它的密度和它的性能的这种比例是非常合适的。
这样的一个机器,我们可以阐述它为一个是性能小怪兽。
软件:越读越快的分布式存储系统,提升读写性能
大家最早以前认识超融合,都是从分布式存储开始的,因此,对于超融合来讲,一个好的分布式存储系统非常重要。
从我们的角度来说,我们对分布式存储系统的性能优化主要体现在两个方面:
(1)、通过数据的自动负载均衡机制,提高性能
我们会提供数据的自动负载均衡机制,所有的数据过来,会打散分布在每一个节点上面去,这样数据量会分散开,读写会分散开,避免的IO瓶颈。
(2)、多级缓存机制,越读越快
另外一方面,就是一般对磁盘IO的来自于读和写,我们会做读加速和写加速,还要做读写加速,我们会设计两种性能加速的机制。
比如说我们会设置两级缓存,一级缓存是内存,主要做读IO加速。然后我们还会设计SSD的Cache,它是做读写加速的,我每次读IO也好,写IO也好,SSD Cache都会做加速,所以两级缓存去保证高性能的读写。
比如说我一个读IO过来,我会优先从我的Memory去读,如果Memory里面没有才会到达SSD里去读,如果SSD有的话把数据读走,把SSD数据读走之后,我们的数据会自动被复制一份到我的Memory来,下次读就会从Memory读走,所以是个越读越快的过程。
如果Memory也没有,SSD没有,最后才会到最慢的机械盘这个池子里面去把数据读走,同时读走也会把数据再拷贝一份到我的SSD的缓存里面,SSD读走,又会拷到我的Memory缓存,越读越快。
写对我来说,我会优先去写SSD的Cache,写到SSD的Cache,就会返回一个我已经写完成了,这样的话不用等着每次的IO全部落到最慢的机械盘里面,才回馈一个写完成的操作,这样加速写操作。
2、可靠性—— 达到99.999%的数据可靠性
可靠性提高,主要体现在以下几个方面:
(1)、全冗余设计,无单点风险
全对称全冗余部署:任意节点角色和配置相同,控制、计算、存储等关键组件融合部署,全对称全冗余设计,无单点风险,从架构层面提高可靠性。
(2)、通过三副本的强一致性,提高数据可靠性
每个IO写来下都会以三副本强一致的方式,写到整个存储系统里面去,一份数据过来回流,三个拷贝在我的整个存储系统里面。对我来说相当于是,比如说我有六个节点的超融合系统,可能坏三分之二的这样超融合的节点,整个数据层面也会保证不可丢。
3、高可用性
接下来,我们看一下全对称分布式微服务架构如何提升平台的可用性,主要是通过三种机制,来保证平台的高可用性:
(1)、微服务以容器化方式部署,互不影响;
(2)、微服务以多副本的运行,提高可用性;
(3)、故障自愈的机制。
机制1:微服务以容器化方式部署,互不影响;
所有平台的控制、平面的服务、关键组件的服务以及关键系统模块的服务,我们全部以微服务化的方式做部署。
微服务的方式部署,我们采用业界比较标准的方式,以容器作为一个基本运营单元,容器带来的最大好处,你可以把容器理解成一个非常轻量级的虚拟化的一套技术,我的启动速度会非常快,我的隔离力度也可以变得非常的细。
大家都吃过火锅,有一种很有名的火锅叫九宫格火锅,九宫格火锅就是在一个火锅里面有九个格子把各种食材隔开,底下的汤料是大家共享的,食材和食材之间不会互相串,吃起来比较方便,同时食材之间也不会互相影响。
我们的这个全对称分布式微服务架构就好比这样一个九宫格,或者是更多的格子,底层是我们的微服务编排管理系统,你可以理解成九宫格火锅底下相同的汤料,来保证你所有的微服务系统之间互相通信、互相连接。
这些格子就好比我们一个个隔离开的以容器作为运行单元的服务,服务和服务之间不会互相影响,同时来自于容器运行的启动速度快、隔离度这些特点能够保证你这些服务之间不会互相影响,当某一个服务出问题,其他服务仍然可以正常提供服务,能带来一个很好的隔离性。
机制2:微服务以多副本运行在多个节点上,提高可用性;
另外一个,就是我们所有的微服务系统全是以多副本的方式运行在多个节点上,这样带来一个好处就是任何一个节点宕机,都不会带来整个服务层面的全部停机。
机制3:故障自愈的机制
故障自愈性的特点来自于哪里,来自于我们的整个全对称分布式微服务架构上面。
我们把500家头部客户的云平台建设和运维经验,沉淀在一个“自愈中心”的引擎里。
我们的监控中心会持续的监控整个微服务控制平面,哪一个微服务或者哪一组微服务出现问题了,会自动告警,并触发自愈中心里的自愈知识库,这个自愈知识库帮你做判断,并把这些出了问题的微服务做自动的修复或者自动的重启,能够使你的系统快速回来,这是一整套的自愈机制。
通过这种隔离力度,通过这种多副本的机制,通过这种故障自愈的机制,我们可以提升整个平台的可用性。
4、部署与扩容方便
全对称的架构带来了部署和扩容的方便。
每一个节点既是我的控制节点,又是我的计算节点,同时也是我的存储节点。每一个节点角色是一样的,配置也是相等的。这样带来两大好处,一个好处就是我的系统的架构非常简单,大家可以看到这样一些节点,配置相同角色,相同的节点就可以很快速的提供出来。
还有一点就是我后期的扩容也可以变得很简单,我不用在想我到底是扩控制节点,还是扩存储节点,还是扩计算节点,随着你增加节点之上,我的性能和容量都能获得线性的增加,这是全对称分布式微服务架构为部署和扩容带来的价值。