【闪存虚拟化】软件定义服务器闪存

作者:范军 (Frank Fan)新浪微博:@frankfan7  Twitter:@franfan7

面临挑战

在与客户和存储厂商讨论虚拟化平台上的存储性能设计时,我们经常经常面临诸多挑战。

一存储在虚拟化平台中承担着多重的角色。比如满足存储容量的需求(Capacity),满足应用应能的需求(Latency, IOPS,Throughput),还要满足存储服务的需求(Snapshot,replication,backup )。既要满足容量,还要保证性能。那么必然要采用高性能的RAID,高速硬盘,或者足够数量的硬盘来保证性能。常常会发现购买的硬盘远远大于实际容量所需要的。

二是按照应用的总体峰值还是均值来设计?按照均值的话,可能在高峰期存储不堪重负,直接导致不能满足应用需求。可按照峰值设计,难免造成大多数时间内存储资源过剩,同时前期投入也很大。

三目前传统上存储的架构是集中共享式的。随着服务器和虚拟机的数目或负荷增大,迟早会出现后台存储设备以及存储网路的瓶颈,那么升级方案是不是灵活、简单和易拓展?对已经在线的业务有什么影响?

解决方案

混合或全闪阵列

随着闪存价格近年来的大幅下降,众多厂商开始推出自己的闪存方案。关于闪存的部署方式,有的厂商在阵列中加入闪存,与传统硬盘一起构成混合阵列。有的干脆推出全闪存阵列。这当然对阵列本身的响应速度有很大提升,但同时也有下面的局限性:

一由于IO请求从VM到闪存,仍然要经过很多层的处理,可能由于队列拥塞或者存储网络带宽造成延迟。

二从存储架构本身来讲,仍然是集中共享式。在出现性能瓶颈需要升级时,因为有兼容性的问题,不一定能采用当前市场上性价比最优的闪存。

服务器闪存

传统上服务器端闪存包括基于SAS接口的、基于SATA接口以及基于PCI-E的三种形式。相对于在阵列中配置闪存,服务器端闪存有以下特点:

一离VM距离最近,所以响应IO请求的时延最短。如下图显示,IO请求需要经过6个节点才能抵达阵列硬盘。而仅需2个节点就可以被服务器端闪存处理。即使存储网络或者阵列本身有性能瓶颈,也不会对应用有性能上的影响。

二闪存技术的发展非常快,最新的闪存往往更容易较早的在服务器端使用。

PernixDataFVP +服务器闪存

仅仅在服务器端加入闪存是第一步,怎么样才能让虚拟化平台能用到闪存呢? PernixData FVP 把所有服务器端的闪存组成一个闪存群集,并可以灵活的把闪存资源配置给DataStore或者VM。该方案的理念是将存储的性能和容量分离,由常规阵列继续满足容量要求,而利用服务器端闪存来负责性能需求。

主要的显著特点是:

一应用的性能大幅提升。

VM发出的大部分读写IO请求,都会直接由闪存来处理,从而大大减少了应用的响应时间。

二 IOPS 大幅增加

闪存的IOPS处理能力比阵列中的常规磁盘要快很多。最新Intel推出的PCIe闪存可以达到250KIOPS。

三后台阵列的成本降低。

既然PernixData利用服务器端的闪存解决了对存储性能的要求,后端阵列就只需满足容量就可以了。无需再使用高端的阵列,昂贵的高速硬盘或者昂贵的RAID,从而大大减少了阵列的成本。

服务器端闪存技术,以及PernixData的软件定义闪存群集,在虚拟化存储设计中提供了低成本、高性能和易扩展的新一代存储解决方案。

时间: 2024-08-07 04:09:51

【闪存虚拟化】软件定义服务器闪存的相关文章

闪存逐鹿——NVMe引领闪存新时代

闪存逐鹿--NVMe引领闪存新时代 大数据时代迅即降临,传统的旋转式磁盘在性能.容量等多方面捉襟见肘.闪存在IOPS.延迟及带宽三大性能指标上的绝对优势使之倍受青睐,迅速取代硬盘成为不可或缺的存储介质.2013年是闪存规模化进入数据中心的一年,因而成为载入史册的"闪存元年".过去一年的飞速发展中,闪存在数据中心中担任的角色越来越多样化,从服务器中的PCIe闪存卡.存储阵列中最适合存放热数据的全闪存阵列.适合分层存储的混合阵列,再到RAID卡中的掉电保护闪存模块等等不一而足. 展望未来,

基于SSM的超市进销存管理系统-java进销存管理

基于SSM的超市进销存管理系统-java进销存管理1.包含源程序,数据库脚本.代码和数据库脚本都有详细注释.2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善开发环境:Eclipse ,MYSQL,JDK1.7,Tomcat 7涉及技术点:MVC模式.SpringMvc.Mybatis.Spring.HTML.JavaScript.CSS.JQUERY.DWR.Ajax等系统采用Mybatis框架实现ORM对象关系映射,前台JSP实现,后台springMvc映射,使用Spring框架进行整

RHEV桌面虚拟化和服务器虚拟化的比较分析

红帽企业虚拟化平台RHEV同时支持服务器虚拟化和桌面虚拟化,在实际使用中很难辨清两者之间的区别,本文试图分析二者之间的区别与联系: 共同点: 桌面虚拟化和服务器虚拟化都需要基于虚拟化技术 差异点: 1.桌面虚拟化的数据存储 桌面虚拟化基于同一个镜像,因此发布的时候只需要修改公共的镜像就能完成所有虚拟机的更新. 用户的虚拟机存储的磁盘存放着公共镜像与用户的差异数据,节省空间. 我记得rhev的桌面虚拟化可以在thin-provision的公共磁盘上以thin-provision存放用户差异数据.

操作系統3-內存管理(分區存儲和頁式存儲)

操作系統3-內存管理(分區存儲和頁式存儲) 2. 分區存儲管理方式 分區管理的基本思想是:將內存空間氛圍一個或若干個連續的區域,稱為分區.每個分區可以存放一個獨立的用戶程序.分區的特點是一個程序可以連續地加載內存. 分區可以分為:單一分區.固定分區.可變分區和重定位分區. 2.1 單道程序的連續分配 單道程序的連續分配方式將內存分為系統區和用戶區,只能用於單用戶.單任務的操作系統. 系統區 系統區僅供操作系統使用,一般駐留在內存的低地址區,其中包括中斷向量.中斷向量是操作系統的核心功能模塊加載內

一次xshell登录服务器闪断经历

今天开发同事反应,我们有台测试服务器无法连接. 现象:登录的时候可以输入用户名,当输入密码回车后,闪断 解决过程: ping一下这台服务器的ip,可以ping通 登录vsphere服务器的控制台,由于密码当时设置比较复杂,所以进入单用户模式修改了个简单的,以便登录查看错误日志 查看sshd服务,是running状态 查看监听端口22在监听 查看防火墙,关闭状态 之后,仍然无法登录,这个就让我很迷茫了 然后google, 搞了很久也没找到答案 最后看到xshell登录界面的报错:/bin/bash

python tcp客户端服务器闪退的问题(初级)

一句废话:最近学习python核心编程,遇到了运行简单的(有多简单自己看)tcp服务器与客户端黑屏闪退的问题 原因: >>>from socket import * >>> help(socket.recv)Help on method_descriptor: recv(...)    recv(buffersize[, flags]) -> data        Receive up to buffersize bytes from the socket. &

AutoVuex插件在浏览器端浏览存放在ftp服务器中的文件

下面是我使用AutoVuex加载ftp文件在浏览器中展示的一个例子 在前面的博客中已将记录了怎么使用该插件 下面直接进入编码阶段,下面只是一个简单的例子 你需要知道你的ftp服务器用户名和密码,以及ip地址,文件的存放路径. <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>无标题页</t

安装sql 2005 闪退 连接到服务器失败。错误:0x80070424

可以尝试安装.net4.0 我是通过此办法解决.

修复烂代码,游戏服务器启动服务闪退,登陆服务器无法登陆

原文地址:https://www.cnblogs.com/linhongquan/p/9573317.html