Chinaunix首页 | 论坛 | 博客
  • 博客访问: 128510
  • 博文数量: 63
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 455
  • 用 户 组: 普通用户
  • 注册时间: 2013-11-18 17:37
文章分类
文章存档

2015年(1)

2014年(30)

2013年(32)

我的朋友

分类: 服务器与存储

2013-12-19 15:49:43

  服务器虚拟化已经把传统的磁盘推向极限,这是有证可循的。密集的虚拟机(VM)环境向磁盘阵列发送多个、随机化的读写IO请求,压垮了磁盘控制器并导致存储延时的增加和应用性能的减弱。为了解决这个问题,很多存储计划人员正在选择服务器端的高速缓存解决方案。
  服务器端的高速缓存是解决磁盘IO性能问题的一个好的方法,因为它直接移动症结所在的服务器内的高速SSD资源。与智能的软件高速缓存结合使用,公司可以极大地改善VM应用的性能,延长传统磁盘资产的寿命并避免采购全新的阵列。总之,服务器端的高速缓存可以节省大量金钱。
  挑战始终在于:市场上有多种产品。尽管这些产品在特性和功能方面具有一些共同点,但也有很多差异。所以,在采购前,你必须了解自己的特定需求。
  把性能独立于容量
  通常,所有的服务器端的高速缓存产品在设计上都把存储性能独立于容量。换言之,高速SSD可以作为性能层,而速度较慢的传统硬盘驱动器可以承担容量层的职责。这种做法具备双重优势:在加速读IO的同时,使后端存储系统能够专注于保护数据并主要执行写操作。所以,只是把读请求提交到高速缓存,读密集型环境就可获得读和写 IO的改善。
  回写高速缓存
  然而,某些写密集型环境无法承受“遍历整个网络和协议堆栈的增加的延时才能完成每一次的写操作”。为了解决这个问题,有些像是SanDisk的FlashSoft等产品的高速缓存软件技术提供所谓的“回写”高速缓存。这意味着,当一个应用程序发出一个写请求的时候,数据被写到高速缓存,一个确认马上被发送到这个应用程序,这回避了上述的延时问题。此外,由于在任意给定的时间点只有一个小数据子集起作用,因此FlashSoft实际上会对多个写请求进行排队,向SSD发出更长、更连续的写入,然后在最近的那次事务中执行一次写入,使SSD的耐久性更好。
  虚拟机管理程序还是OS高速缓存?
  另外一个考虑是虚拟机管理程序与OS高速缓存。基于虚拟机管理程序的高速缓存是提高VM性能的最简单的方法,因为只需一次安装,主机上的所有VM将可以使用高速缓存资源。不足之处在于很可能造成浪费,因为并非所有的VM都会需要高速的高速缓存。另一方面,客户端级别的高速缓存是分派有限的SSD资源的一个更具选择性的方法。然而,由于高速缓存软件必须被安装至每一个单独的客户机的OS上,因此这通常需要更多的积分时间(integration time)。实际上,诸如英特尔的高速缓存加速软件(Cache Acceleration Software,CAS)产品等高速缓存技术支持虚拟机管理程序或者基于客户端方式这两种类型的高速缓存,使管理员可以根据他们的多客户共享的基础设施的独特需求灵活地部署高速缓存软件。
  支持热虚拟机的迁移
  选择高速缓存加速技术的最重要的考虑之一可能在于该解决方案对诸如vMotion之类的高级服务器虚拟化功能的支持程度。很多产品使虚拟机管理员可以在主机之外,例如在一个具有非易失性存储(non-volatile memory,NVM)的共享的系统上,创建一个共享的高速缓存。在这种方式下,如果一台VM需要被迁移到另外一台主机上,高速缓存的内容可以继续留存在共享的存储NVM上,然后再被分派至新创建的VM上,不影响应用程序的性能。
  全局高速缓存池
  尽管如此,其它诸如Infinio和Pernix Data之类的解决方案允许在多台主机上共享SSD资源,在VM需要被迁移的时候,不必收回本地的高速缓存即可实现服务器端的高性能。在有些环境中,这可能是相得益彰之举。
  结论
  为了保证虚拟服务器基础设施投资的ROI,公司在提高VM性能的同时,需要延长已有的共享资产的寿命。服务器端的高速缓存解决方案提供多种两全其美、简单实惠的方法。
    Techtarget中国
阅读(780) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~