过去几十年里,数据中心技术发生了天翻地覆的变化, 2000年前后的互联网发展推动了数据中心从大型机时代转向独立服务器和集中存储架构。相比之下,独立服务器带来了比大型机更加灵活的系统的环境;可以通过网络访问让也降低了运维的复杂性。业务部门需要盈利,数据是关键因素。依赖于其灵活的容量调配和高可用设计,集中存储实现了可共享的、更大的存储资源池,并且可以提供数据的保护能力。池化让存储资源得到更充分的利用, RAID及基于存储的容灾复制技术使得数据得到充分保护, 避免因为服务器宕机、管理员误操作等引起数据丢失。
但是独立服务器和共享存储架构也存在很多问题,独立服务器带来的是竖井式的架构设计,相应的服务器资源利用效率不平均,总体来说利用率非常低下(平均 5-10%)。另外服务器也经常成为单点故障。集中存储的系统复杂性也需要额外的管理工具和技术团队来运维,专用的存储系统也让用户很容易被锁定。
虚拟化技术的出现使得多种工作负载和操作系统以虚拟机 VM)的形式运行在单一物理机上, 大大增加了物理服务器的资源利用率。
随着Vmware等厂商的推动,X86虚拟化方案的功能日渐丰富, 率也大幅提高。借助诸多高级功能,比如在线迁移、高可用和动态资源负载均衡等,用户真正获得了虚拟机的高可用能力,并且可以动态迁移和管理工作负载。 集中存储虽然通过合并路径等操作来提高效率,但大规模虚拟化集群中虚拟机的快速增长却会带来下面的问题:
虚拟机快速增长导致更多的存储,代理更加复杂的管理;
多个虚拟机征用带来的资源冲突;
存储的控制器架构带来的性能瓶颈;
做为一种日益普通的存储介质,固态硬盘的出现在一定程度上解决了集中存储的问题。 放在集中存储中的固态硬盘使得无需借助更多的阵列就可以提供更高的 IO性能和更低的相应延迟。但来自集中存储控制器和网络的瓶颈依然存储, 应用的竖井架构和复杂的存储管理依然存储。
在计算、网络和存储三层架构的传统数据中心中,随着服务器CPU处理能力的日益提升,网络日益成为瓶颈。传统的4/8/16GB FC网络带宽只能对应 1到9块固态硬盘的 I/O处理能力。另外,电商、大数据等诸多应用对实时系统要求日益提高, 相应延迟成为一个影响客户体验的问题。一个典型的网络响应时间为 0.5毫秒,而本地内存访问的延迟不到 1/100。很多基于服务器的缓存技术出现,正式为了缓解网络延迟问题。