虚拟硬盘机制.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
虚拟硬盘机制 虚拟硬盘是什么 虚拟硬盘,即Virtual Disk,是由RAID DISK向上提供给RAID LUN使用的空间形式。我们在创建RAID LUN时,RAID DISK按照RAID LUN的大小提供给RAID LUN固定数量的虚拟磁盘,而RAID LUN在这些虚拟磁盘上实现RAID算法。虚拟磁盘的出现是为了支持非连续的物理段,可以将两个或多个不连续的空闲段从逻辑上组合成一个连续的空间,因此它既可以是连续的物理段,也可以整合非连续的物理空间,这样就能解决物理硬盘(Physical disk,简写成PD)分配时产生的碎片问题,提高物理磁盘的利用率。 一个物理磁盘可以虚拟成多个虚拟磁盘(虚拟化操作是在创建RAID LUN过程中由RAID Group实现的),而每个虚拟磁盘整合的非连续物理段不能超过64个,也即RAID LUN最多包含的段个数为64,每个段的最小值为1MB。虚拟磁盘进行非连续物理段整合时,优先选择较大的物理段组成逻辑段,段选择算法同逻辑资源。 VD、PD、RAID Group和RAID LUN四者关系 虚拟磁盘的应用与实现 虚拟硬盘是RAID DISK与RAID LUN这两个模块的接口目标之一。在DISK层,只有物理磁盘的概念,亦是我们可以手动接触,拔插磁盘和磁盘上下电处理等等。而在LUN层,看到的则是虚拟磁盘,其上处理实现LUN的各种功能。这两个层之间的很多功能都会涉及到虚拟磁盘的处理,如LUN的创建删除,热备盘替换,以及RG与LUN的扫描等。 2.1 LUN创建 创建RAID LUN时,RAID DISK接收到LUN的虚拟磁盘申请,从PD中剩余的未分配的物理段找到大小总和可以满足RAID LUN要求的几个物理段,组合成一个逻辑上连续的段即虚拟磁盘,并分配VID返回给LUN。RAID LUN就可以直接使用该ID号,不需关心虚拟磁盘里的物理段是否连续。也就是说LUN只关注自己存放的内容,并不知道自己存储在物理磁盘上的实际物理地址,RAID Group负责LUN的空间分配。 磁盘在虚拟化时,DISK会告知该虚拟磁盘的uuid,所属LUN中的其他虚拟磁盘,亦会告知该虚拟磁盘所处的物理磁盘以及该物理磁盘上是否还有其他虚拟磁盘等等信息,LUN创建好之后,LUN的超级块即LUN DDF, 放置在物理磁盘上的一块特殊空间,位于 DDF分配的位置, 该空间不能用于存储业务数据,亦不算作LUN的容量大小。 2.2 DDF DDF即物理硬盘数据格式(DISK DATA FAMAT)的简称,指物理硬盘上的一块特殊空间,一般位于物理硬盘的最尾部,使用该物理硬盘创建阵列时阵列容量不能包含该部分空间,因此该物理硬盘空间不能用于存储业务数据。 当硬盘用于创建RAID Group时,每个物理硬盘要为此保留1GB空间,用于存放各种配置信息,包括LUN DDF信息。目前开发实现一个RG上只允许创建一个LUN ,即一个PD上只能创建一个VD,DDF格式如下: uint32_t signature; /* 区段的签名,0xa92b4efc */ uint32_t major_version; /* 1 */ uuid_t rg_uuid; /* RAID Group全局唯一标识符 */ char rg_name[MAX_RAID_GROUP_NAME_LEN]; /* RAID Group名称 */ uint64_t ctime; /* RAID Group创建的时间戳,低40位是秒,高24位是微秒或0 */ uint64_t disk_sectors; /* RAID Group占用的物理硬盘容量,512字节扇区数量 */ int32_t level; /* -4 (多路径), -1 (JBOD), 0,1,4,5 */ /* 硬盘常量信息 - 64 bytes */ uint64_t data_off; /* 该硬盘的用户数据区域的起始扇区,通常是0 */ uint64_t data_sectors; /* 该硬盘可用于保存数据的512字节扇区数量 */ uint64_t rg_pri_ddf_off; /* RAID Group DDF主区起始于硬盘中的哪个扇区 */ uint64_t rg_sec_ddf_off; /* RAID Group DDF备区起始于硬盘中的哪个扇区 */ uint64_t vd_pri_ddf_off; /* 虚拟硬盘DDF主区起始于硬盘中的哪个扇区 */ uint64_t vd_sec_ddf_off; /* 虚拟硬盘DDF备区起始于硬盘中的

文档评论(0)

添香小铺 + 关注
实名认证
服务提供商

专注于产业研究、商业计划、房地产营销策划、企业运营及咨询管理方案撰写,欢迎咨询。

1亿VIP精品文档

相关文档