什么是存储虚拟化?
SNIA(存储网络工业协会)对存储虚拟化的定义:
通过对存储(子)系统或存储服务的内部功能进行抽象、隐藏或隔离,使存储或数据的管理与应用、服务器、网络资源的管理分离,从而实现应用和网络的独立管理。对存储服务和设备进行虚拟化,能够在对下一层存储资源进行扩展时进行资源合并、降低实现的复杂度。
通过存储虚拟化技术,云存储可以实现很多新的特性。比如,用户数据在逻辑上的隔离、存储空间的精简配置等。
原理模型
存储虚拟化的作用如下图:
目标
存储虚拟化架构如下图:
简化IT基础架构如下图:
融合:技术基础(更可靠、更可控、更灵活、更易扩展、更低成本)
开放:个性化基础(SOA的标准中间件架构和应用开发接口)
面向应用:以应用为先导,资源动态分配、统一管理
按实现结果划分模式
带内虚拟化
用途:
异构存储系统整合;
统一数据管理,在业务运行同时完成复制、镜像、CDP等各种数据管理功能;
优点:
服务器、存储设备的兼容性好;
虚拟化和数据管理功能由专用硬件实现,不占用主机资源;
丰富的数据管理功能;
配置简单,易于实施;
缺点:
虚拟化设备发生故障,整个系统将中断;
带外虚拟化
用途:一般用于不同存储设备之间的数据复制。
优点:
虚拟化设备发生故障,整个系统将不会中断
缺点:
主机资源占用较大
大部分产品缺乏数据管理功能
主机和存储系统需要严格的兼容性认证
数据初始化同步复杂
配置复杂,实施难度高
封装
磁盘封装
磁盘扇区的物理地址一般用C-H-S(柱面号-磁头号-扇区号)表示;
磁盘虚拟化就是将扇区地址用LBA(逻辑块地址)表示,屏蔽底层物理磁盘的概念;
磁盘虚拟由磁盘自身固件完成;
磁盘虚拟化的结果是使磁盘的使用者无须了解磁盘的内部硬件细节,通过块地址就可以访问磁盘;
存储子系统封装
块虚拟化是指对多块硬盘建立RAID,划分逻辑卷(LUN);
每个逻辑卷对于使用者都完全等同于一块物理硬盘。物理上来说,这个逻辑卷的所有数据块,都是通过RAID处理,分布在不同的物理硬盘上;
块虚拟化的结果是使存储的使用者无须关心RAID实现的具体过程,只要象读写普通硬盘一样读写这个逻辑卷,就能获得RAID对数据的保护功能;