虚拟环境下使用SSD支持内存过量秘法

云计算 虚拟化
在虚拟环境中应用内存过量使用技术可以缓解这一问题,而通过SSD来处理内存过量使用的成本效益更远高于机械磁盘。我们来检验一下内存过量使用技术如何解决服务器硬件中的内存限制,以及固态磁盘驱动器(SSD)技术如何更好地解决这个问题。

    现在的应用程序就像是内存吞噬者,占据消耗着大量的内存,因此内存往往会成为整个服务器系统中最紧缺的部件。而在一个虚拟化的服务器环境中,缺乏足够的物理内存甚至还会影响到整个系统的投资回报率,它成了高密度计算系统木桶中的那块短板。

  个中原因在于,每个处理器插槽现在支持不断增长的内核数量,为了最大化效率,每台主机都必须平衡各虚拟机所用的资源。当某台主机的内存资源开始紧缺,大量的虚拟机的运行都会受限,尽管处理器等其它资源还很充沛。

  在虚拟环境中应用内存过量使用技术可以缓解这一问题,而通过SSD来处理内存过量使用的成本效益更远高于机械磁盘。

  我们来检验一下内存过量使用技术如何解决服务器硬件中的内存限制,以及固态磁盘驱动器(SSD)技术如何更好地解决这个问题。

  服务器硬件中物理内存的缺陷

  服务器内部的内存有两种问题:可用的内存插槽数量以及高密度双列直插式存储模块(DIMM)的成本。虚拟化环境下的服务器硬件要求海量内存以支持其上面运行的数量众多的虚拟机。最新版本的vSphere可以在一台主机上支持高达1TB的内存容量以及每个虚拟机最高255GB的内存容量。而服务器内部的内存插槽数量限制了单台设备的最大内存容量,而是用高密度的DIMM则需要很高的成本。即便你目前有较多的内存插槽,假设你要扩展至最大内存容量,你必须使用大于4GB的DIMM.而8GB或16GB的服务器DIMM价格区间在400美金到1,300美金每根左右,价格差取决于速率,档次和一些其它因素。因此,如果你的虚拟服务器主机要配备128GB的内存,那么光内存的价格就可达6,000美金或20,000美金。

  vSphere(不过Hyper-V不支持)具有内存过量使用技术,其使得用户的VMware虚拟机可以使用超过物理主机实际的内存容量。这可以使你配置更少的内存,从而降低内存成本。而且在服务器已经配置最大DIMM内存而其上运行的虚拟机又要求更多内存时,这种技术也相当有用。通过内存过量使用技术,即便物理主机只有8GB的内存,而其上运行的一台虚拟机可以配置高达255GB的内存。当一台虚拟上线时,主机通过使用外部扩展内存,并不是物理内存,而是在磁盘上创建的一种特别的虚拟vswp文件。所创建的vswp文件大小等于分配给虚拟机的内存减去虚拟机启动时的物理内存预留量(默认值是0)。比如一个消耗16GB内存的虚拟机有4GB的预留,那么就会相应创建12GB的。vswp文件。这些文件为虚拟机创建后仅仅在物理主机消耗尽所有物理内存后才会使用。

  虽然内存过量使用技术是一项非常优秀的特性,但也有个最根本的问题:机械磁盘的速率较RAM而言是在慢了太多。其结果是,当虚拟机开始使用磁盘作为内存后,其性能直线下降--而这恰恰是我们在许多情况下需要避免的。根据各磁盘总的工作状态,有时一个虚拟机迁移到硬盘后就呈现出几乎是宕机的状态。

  通过SSD解决内存过量使用技术中的性能问题

  SSD提供了一个全新的解决方案以在很大程度上解决了上述磁盘技术中遇到的性能问题。一块15,000rpm转速的SAS驱动器典型的吞吐速率为180 IOPS,而相对一块SSD的吞吐量则高得多,一块3Gbps SATA SSD驱动器可以提供至少5,000 IOPS的写速率和20,000 IOPS的读速率。通过存储中SSD作为虚拟机的swap文件使得应用内存过量使用时性能不会受到很大影响。虽然SSD的性能较RAM还有一定的距离,但比起机械磁盘而言,它快出很多。

  SSD基本上可以变成服务器中的另一层RAM,提供给虚拟机。vSphere中的内存资源控制可以保障或限制虚拟机使用的最大物理内存,你可以在虚拟机切换到磁盘时很好地加以控制。设置内存预留可以确保每台虚拟机都可以有一定的物理内存;而设置内存阈值可以限制每台虚拟机可以使用的物理内存。这使得你可以确保关键的虚拟机可以访问到最快速的物理内存,而次重要的虚拟机可以在物理内存耗尽后转向使用SSD层。

  RAM和SSD的成本比较

  为了更好地说明使用SSD用于内存过量使用时的成本优势。我们看一下2种HP服务器不同配置的价格比较--第一台配置192GB的内存和一般的磁盘,而第二台配置64GB内存和SSD

  配置一:HP DL385 G7(2颗12内核处理器,192GB内存,72GB 15,000rpmSAS磁盘);成本:$15,065

  配置二:HP DL385 G7(2颗12内核处理器,64GB内存,120GB SSD磁盘);成本:$11,141

  第一台的配置中有192GB的物理内存;72GB的磁盘对于虚拟化swap文件来说实在是太慢了。而第二台配置64GB的物理内存和额外120GB的SSD存储用于虚拟化swap文件。目前HP 60GB SSD驱动器的价格约为1,000美金;120GB的约为2,000美金。其结果是使用SSD作为RAM的替代品,在这个配置中可以降低至少4,000美金的成本。而且SSD的价格正在稳步下降,容量亦在逐步提升,随着系统使用时间增加,应用SSD将带来更多好处。

  除了使用SSD存储来替代RAM以外,你还可以使用SSD来补充RAM.上述HP服务器的配置中配置了总共24颗处理器内核,约可以支持超过50个虚拟机。不过,服务器可以提供的最大内存支持仅有256GB.你可以增加SSD驱动器来为虚拟机提供额外可用内存,以增加每台物理服务器的集成密度,提高服务器的处理器利用率。

  不论在内存层面或是在存储层面应用,SSD技术较机械磁盘提供了极大的性能提升,使得你在架构虚拟环境中的服务器时有了更多的选择。使用SSD来取代RAM只是许多创新想法中的一个。其提供了较RAM而言更高的性价比,而且可以应用在任何规模的虚拟化解决方案中以提供额外的内存容量。虚拟化要求物理服务器资源的平衡使用,以避免任何性能瓶颈,并最大化利用虚拟环境中昂贵的服务器硬件成本。SSD所提供的这种资源方式确保资源使用平衡并提供需要大内存支持的虚拟机可以获取其所需的内存资源。

责任编辑:何巍 来源: eNet硅谷动力
相关推荐

2021-03-04 20:46:32

virtualenvwPython虚拟环境

2013-01-05 15:49:25

数据保护虚拟化

2015-07-07 15:42:16

网络安全虚拟化安全

2020-05-22 08:52:08

LinuxPython工具

2010-06-11 13:58:12

惠普关键业务支持服务

2009-02-02 15:07:54

服务器虚拟化VMware

2009-12-29 10:50:47

2020-07-06 07:00:21

PyCharm虚拟环境

2021-10-28 19:08:29

Python虚拟环境

2021-03-01 08:00:00

Linux开发虚拟环境

2016-04-12 10:12:53

2010-11-04 09:43:15

虚拟备份

2019-07-02 06:31:27

Python虚拟环境代码

2014-12-04 11:09:42

数据备份数据保护虚拟环境

2012-04-01 14:38:06

Windows Ser虚拟化

2013-10-11 16:47:38

2011-08-22 13:56:09

Linux虚拟

2021-11-15 05:44:16

Python虚拟环境开发

2023-05-05 16:37:13

CPU 性能虚拟环境虚拟化

2010-05-06 11:13:10

虚拟化
点赞
收藏

51CTO技术栈公众号