在过去的八年时间里,我们把CPU性能提高了10倍。即使你正在使用1.5万转的2.5英寸SAS驱动器,IOPS性能也仅仅提高了2.5倍,从100次IOPS提高到250次IOPS。
2.5英寸驱动器的每个驱动器的存储容量稍低一些,所以在正确架构的情况下你能更有效地使用它。现在希捷1.5万转、73GB的2.5英寸SAS驱动器IOPS性能提高了9.86倍,CPU数量和CPU性能比是10:1。这非常接近现有的CPU数量,比使用1.5万转300GB驱动器的3.6:1好很多,因为驱动器更少。
万一我正着手开发一个虚拟环境的系统架构,那么我会首先看一看现有系统的以下五个重要因素:
● 从服务器到存储器的带宽利用率是多少?
● 从服务器到存储器的IOPS利用率是多少?
● 从服务器到存储器的可用带宽是多少?
● 从服务器到存储器的总IOPS是多少?
● 底层文件系统是什么?这些文件系统如何处理同时写入的多个数据流?
上面的第五点是问题的症结所在。万一你不知道文件系统分配多I/O请求数据有多么糟糕的话,那么你就很难决定到底需要多少IOPS带宽。
IOPS随着CPU性能的提升而增加。万一CPU性能增长了10倍,那么磁盘的IOPS至少要提高10倍甚至更多。问题是,由于IOPS和带宽的原因,I/O性能并不随着密度增加而提高。记住一点,采用老系统的时候,更少的数据流流向更少的磁盘驱动器,文件系统可能连续分配数据,减少寻道和旋转延迟的开销数量。即使你可以有效地维持不变的CPU计算能力,那也有可能在使用新系统的时候要处理更多的I/O请求。现有的PCIe 2.0总线设计速度要比老式的PCI总线高许多,我发现大多数PCI总线无法达到标定的性能水平,并且没有必要达到,因为我们被局限在把1Gb光纤通道里,作为最高速度连接。新的PCIe 2.0在老系统上的带宽大约是老式PCI总线的30倍之多。相比老系统来说,能够处理更多的I/O请求可能导致驱动器层级更多的寻道和旋转延迟。
作为整合和虚拟化数据中心的架构师,你不能只拿着一份表格就想当然地在这或者在那把服务器数量精简到原来的1/10,还期望获得你预期的性能水平。你要考虑到配置的方方面面,考虑到在某些方面CPU和密度扩展比例并未保持同步。当对一个环境进行架构和虚拟化的时候,你需要考虑整个数据路径,其中包括文件系统如何在老系统上分配数据,如何在新系统中运作等等,因为随机I/O请求可能会更多。