新闻资讯

你所在的位置:网站首页>新闻资讯
浅谈HP EVA存储
作者:灵犀 时间:2020-09-11


【关于EVA存储的一些定义】

1.Disk Group是一个逻辑上的磁盘集合,简称DGeva8000中最多允许16DG,每个DG中的磁盘类型必须是相同的,也就是说要么是FC的要么是FATA的,但是允许不同的SIZE 和不同的speed,比如说146GBFC300GBFC可以放在同一个DG中,10KPM15KPM的也可以在一个DG中。

2.Virual disk简称VD,当一个VD被创建后,把它presenthost就成为一个LUN。一个LUNhostl来说就是一个硬盘。大小在1GB-2TB之间,且最多1024VD

eva中有硬盘损坏时,如传统raid一样,需要利用raid技术来重建,即Reconstruction。重建后,会继续执行leveling,将所有的数据平均分散到DG中的每个物理磁盘上。

3.关于RSS+EVADG无论多大,冗余组的最小单位是RSS,也就是说每个RSS组都是自己保证冗的,如果所有Vdisk都是vraid5或者vraid1的话,DG里每个RSS组同时坏一块盘的情况下,数据也是没有问题的。每个RSS组的硬盘数量为6-11个,默认是8个,当DG12块盘会被分成两RSS组。实验证实,当空间够用情况下,DG里面的硬盘损坏减少到4块时数据也是没有问题的,但创建时DG至少需要8块盘

4.关于restructuring,当硬盘损坏发生,会执行数据重构,重构的数据会放在同一rss组里的其他硬盘里。只有当重构完成之后才会在整个dg里面做leveing以达到整个dg平衡。如果同一组里的剩余空间不够就需要先leveing出去一部分数据。所以官方建议dg的使用率不要超过90%

5.关于ungroup,当我们因为某种原因需要把好盘踢除DG的时候执行此操作。ungrouprestructuring的机制完全不一样。ungroup的时候,被踢的盘的数据并非由同RSS组的其他盘来承载,而是其所在的整个RSS组的数据都往外移动。本平台下,ungroup一块盘这个RSS组总计移动了1.6T的数据,是盘容量的4倍,大概3小时。1.6T的数据怎么确定应该是和Vraid级别和数据占用量有关。虽然数据移动是1.6T,但消耗的可用空间需要2T,这是因为,可用空间是用每块盘剩余容量的最小值和盘数来计算的,ungroup过程中各个盘的剩余空间是不一样的。而且ungroup过程中RSS的数据冗余应该是保证的

6.关于leveingleveing就是把数据打散平均分配在所有盘上,不建议存储在做leveing的时候做换盘动作,但通常情况下如果是坏盘,数据重构完成之后,在leveing未完成之前我们就会更换硬盘,并group。但强烈不建议在leveing结束之前ungroup硬盘。 leveing优先级低,是系统在闲的时候,见缝插针的去做。所以leveing时间和系统繁忙程度成正比。 实际数据表明我们可以最大限度的缩小leveing所需要的时间,通常情况下数据重构或者是主动提盘,之后的 leveing需要40-50个小时。如果ungroup盘结束之后马上进行硬盘更换并group,那么leveing 的时间和ungroup所需要的时间差不多,也是3个多小时。我想这是因为这个时候的虽然leveing优先级低但算法比较简单,所以很快。如果ungroup完了之后等上几个小时你在去换盘并group的话,leveing时间相应延长。最效率的做法你可以一天换一块盘中间等3个多小时就ok,最不效率的干法,你今天去ungroup,明天去换盘并group,那么后天leveing也完不成,你只有第四天在去ungroup第二块盘了。

7.关于保护级别,EVA提供了singledouble的保护级别可选,single会预留2块盘的空间,double会预留4块盘的空间。都说是预留了,也就是说在已分配空间不变的情况下面,即使你选择none,你的保护级别是什么对于数据安全来说是没有影响的。保护级别的作用是怕用户不注意把空间划完了,如果你非常懂得规划,保护级别有没有是一样的,他并不能提高你的数据冗余。

8.关于冗余,第5点说了,保护级别不能提高数据冗余,数据冗余是由vraid来提供的,如果你做了vraid0,那么坏一块盘的情况下即使你使用了double的保护级别,数据照样丢失如果vdisk都为raid1,如果DG硬盘数为单数,就会有一块盘不会被使用。


【eva系列存储结构原理概述】 

EVA系列存储是一款以虚拟化存储为实现目的的HP中高端存储设备,系统中至少有8块磁盘。内部的结构组成完全不同于普通的基于简单RAID的存储,称之为VRAID。
EVA会对每个物理磁盘(简称为PV)进行签名(写在每个磁盘的0扇区),签名后即分配进不同的DISK GROUP。在disk group中,每个PV会按一定大小划分为若干存储单元(按AIX的说法,暂且称为PP吧),PP的大小为2的整数次幂,且应该在2-16M之间。
每个PV中有有限数量的PP,这些PP合起来形成整个DISK GROUP的可用空间。所有的PV按5-15组成若干组RSS(HP的官方资料中讲最小的RSS磁盘数量是6,最大应不到15,但对底层的分析得知,存在5和15个PV的RSS情况),每个RSS就是一个所谓常规RAID的冗余组,但这个冗余组不等同于常规RAID,与常规RAID相似的是,常规RAID是以磁盘为单位的RAID算法,而RSS是基于PP的RAID算法。
为提高性能,HP EVA会有倾向地轮流分配不同的RSS组,但这些RSS之间的数据存储是基于JBOD的(HP官方和很多资料上称是RAID0,或许是宏观的概念),每个RSS组成的stripe 的成员其实是不同PV中不同位置的PP。
无论RSS中成员数量有多少个,对于VRAID5,一个stripe中的PV数总是5个。对于VRAID6,一个stripe中的PV数总是6个。例如,对于VRAID5,EVA会尽可能在N个磁盘中做C(N,5)的组合情况,以期实现IO 负载均衡。
当一个RSS中某个PV离线,控制器会从同一个RSS组中其他磁盘(同一条带中已存在的PV之外)中寻找可用的PP,在逻辑上实现每个stripe的rebuild,从而保证整个存储的安全性。
当一个RSS中损坏的磁盘数量足够少时(少于等于6个),这个RSS的安全性就非常低了,这时候,EVA会合并此RSS到另一个RSS中,这样可用的冗余空间就是共享的了,空间就可以从另一个较安全的RSS中迁移过来。
为了保证有足够的空间提供冗余保护,在创建disk group时,EVA会提供一个Protection Level的保护级别,single表示用2个磁盘的空间做冗余 ,double表示用4个磁盘的空间做冗余。但这个冗余不同于hotspare,这个冗余空间仅会预留到每个PV的尾部,一则,多个磁盘,IO会更均匀,更快;二则,尾部的空间通常是质量较差的空间。

【EVA系列常见故障】
1、RSS中多个磁盘掉线,超过冗余保护级别。
2、加入新磁盘,进行数据迁移时,新磁盘存在物理故障(此时无法回退,也无法前进)。
3、VDISK 删除或EVA initialize。
4、突发性主机与存储无法连接。无法discover到存储。

【数据恢复解决原理】
eva系列最核心的结构部分来自于所有vdisk的运算pp表,这个pp map表会因为磁盘的不断迁移而迁移。所有的故障均可基于此map进行恢复。
当pp map不存在时,根据不同的条带之间的冗余关系,可有优化算法对所有PP进行条带性集合,从而形成若干组正确的条带数据,再基于文件系统结构、数据结构等特征,重组若干条带。

【数据恢复解决过程】
1、原始磁盘镜像,将EVA主机一端的连线拔出,直接连入主机hba卡上,就可以认到所有物理硬盘,之后通过专业手段(Linux下的dd,windows下的winhex等)进行磁盘镜像。因eva主机与扩展柜之间多是铜线连接,故而,可能需要在扩展柜上增加光纤收发模块,再通过光链路接入fc hba卡上。当然,也可以把所有硬盘拆下来后,放入其他光纤通道柜中进行镜像。
2、通过 HP eva恢复程序进行计算分析,重组后直接写成镜像文件。
3、按常规方式解析出文件,恢复结束。

电话
消息
微信
短信