Storwize V7000(也就是我们常说的V7000)是新推出的一款中端存储系统,这款系统的定位虽然在中端,但是Storwize V7000提供有存储管理功能,这一功能以前只有高端存储才拥有(例如 Storwize V3700,Storwize V5000)。

底层存储结构支持:RIAD 0/RAID 10/RAID5/RAID 6

上层卷支持:普通卷/精简模式的卷/镜像模式的卷/精简镜像模式的卷

本文将为大家展示V7000存储的结构原理、配置方法以及Mdisk磁盘掉线的数据恢复方法。

【V7000底层结构及原理】
拆分来看V7000的底层原理结构其实不属于复杂的类型,整个存储结构一共分为四层。
第一层是物理硬盘,也就是数据实际存放的位置。
第二层Mdisk(就是存储中的raid),这一层是许多个多个物理磁盘的集合。
第三层叫做池,池又把诸多Mdisk组合而成为一个更大的逻辑容器。
第四层是卷,卷是面向用户的存储单位,它们是从池中分配出来的空间,(注:卷不可以跨池)。通过图形可以更加清楚的观察这四层结构:

介绍到这里大家应该就能明白了,只有第一层的物理磁盘才是最终存储数据的位置。而第二层、第三层、第四层都只是虚拟化而来的。在物理磁盘中的数据都是以小块为单位(Block)进行存储,即我们通常理解的存放在Mdisk中的数据会分成N多个Block平均分布在所有磁盘上。在Mdisk这一层,数据是以段为单位存储的,多个Mdisk组成了一个池,既在池中创建的卷会被分成若干个段放到不同的Mdisk中,不同卷的类型分布在池中的方式也不同,不过最终还是以段为单位存储在Midsk中的。
V7000的存储过程就是用户将数据存放到卷中,而卷又会被分割成若干个段分布在不同Mdisk中,而Mdisk又会将段分成若干个块分布在不同的磁盘中。最终数据全部是以块为单位分布在不同的磁盘中。

【如何配置Storwize V7000】
1、 使用管理IP连接V7000,输入用户名(默认:superuser/frombyte.com)和密码(密码:passw0rd)。

2、默认是没有任何配置的,需要先配置Mdisk,池以及卷,然后添加主机映射卷。

3、创建Mdisk,Mdisk的类型有RAID0,RAID0,RAID5以及RAID6。

4、创建池,可以将多个Mdisk划分到一个池中。

5、创建卷,卷是在池的基础之上配置的,卷的类型有通用,自动精简,镜像以及精简镜像。

6、创建主机并映射卷,主机的类型有光纤通道的主机和iscsi的主机。

至此整个配置的大致流程就算完了,

【Mdisk磁盘掉线数据恢复案例】
1、存储架构
存储型号:Storwize V7000
磁盘数量:24块(600G SAS磁盘)
Mdisk数量:2个Mdisk,(RAID 5)
卷数量:2个2T的通用模式,1个3T精简模式。

2、故障原因
由于磁盘自然老化导致Mdisk有部分磁盘掉线、上层卷无法访问。由于全局热备只设置了一个并且管理人员也没有在磁盘掉线后及时更换,造成数据丢失。
3、数据恢复方法
首先要把所有磁盘进行镜像处理,然后通过分析镜像可以得出哪些磁盘是同一组Mdisk。
然后分析一组Mdisk有没磁盘掉线情况发生。如果有磁盘掉线就直接在Mdisk组中将掉线磁盘去除掉,生成Mdisk,接着分析Mdisk之间的结构生成池(frombyte.com)。再分析卷的结构,由于不同的卷也有着不同的类型,所以存储结构也不一样。
分析完卷的结构后就可以生成每个卷的数据了。

由于对IBM V7000系列存储的底层结构研究的很透彻,所以对此系列存储的故障,数据几乎都可以挽救。但是,有一种情况数据是无法挽救的,所有磁盘被重建了。因为在创建完Mdisk之后,系统会对Mdisk做初始化,也就是清零。因此,如果存储被重建并且完成了初始化,那么这种情况下数据基本无法恢复了。

V7000存储数据恢复_底层结构原理拆解及Mdisk磁盘掉线数据恢复方法的更多相关文章

  1. C# 爬虫框架实现 流程_爬虫结构/原理

    目录链接:C# 爬虫框架实现 概述 首先需要讲的是,爬虫的原理.其实在我看来,爬虫只是用来解决以下四个问题的工具: 提取哪些网页 提取网页上的哪些内容 存储到哪里(推荐数据库/开源类/Console) ...

  2. java集合专题 (ArrayList、HashSet等集合底层结构及扩容机制、HashMap源码)

    一.数组与集合比较 数组: 1)长度开始时必须指定,而且一旦指定,不能更改 2)保存的必须为同一类型的元素 3)使用数组进行增加/删除元素-比较麻烦 集合: 1)可以动态保存任意多个对象,使用比较方便 ...

  3. HP-lefthand底层结构具体解释及存储灾难数据恢复

    HP-lefthand底层结构具体解释及存储灾难数据恢复 一.HP-lefthand的特点 HP-lefhand是一款很不错的SAN存储,使用iscsi协议为client分配空间. 它支持RAID5. ...

  4. Atitit.数据库表的物理存储结构原理与架构设计与实践

    Atitit.数据库表的物理存储结构原理与架构设计与实践 1. Oracle和DB2数据库的存储模型如图: 1 1.1. 2. 表数据在块中的存储以及RowId信息3 2. 数据表的物理存储结构 自然 ...

  5. HashSet集合存储数据的结构和HashSet集合存储元素不重复的原理

    HashSet集合存储数据的结构 HashSet集合存储元素不重复的原理 //创建HashSet集合对象 Hashset<String> set = new HashSet<> ...

  6. Java 并发系列之二:java 并发机制的底层实现原理

    1. 处理器实现原子操作 2. volatile /** 补充: 主要作用:内存可见性,是变量在多个线程中可见,修饰变量,解决一写多读的问题. 轻量级的synchronized,不会造成阻塞.性能比s ...

  7. [转]谈NAND Flash的底层结构和解析

    这里我想以一个纯玩家的角度来谈谈关于NAND Flash的底层结构和解析,可能会有错误的地方,如果有这方面专家强烈欢迎指正. NAND Flash作为一种比较实用的固态硬盘存储介质,有自己的一些物理特 ...

  8. iOS分类底层实现原理小记

    摘要:iOS分类底层是怎么实现的?本文将分如下四个模块进行探究分类的结构体编译时的分类分类的加载总结本文使用的runtime源码版本是objc4-680文中类与分类代码如下//类@interfaceP ...

  9. Java虚拟机(一)结构原理与运行时数据区域

    我们来学习Java虚拟机的结构原理与运行时数据区域. 1.Java虚拟机概述 Oracle官方定义的Java技术体系主要包括以下几个部分: Java程序设计语言 各种平台的Java虚拟机 Class文 ...

随机推荐

  1. CODEFORCES 25E Test

    题意 三个字符串,找一个字符串(它的子串含有以上三个字符串)使它的长度最短,输出此字符串的长度. 题解 先枚举字符串排列,直接KMP两两匹配,拼接即可...答案取最小值.. 常数巨大的丑陋代码 # i ...

  2. SpringMVC 注解式开发

    SpringMVC的注解式开发是指,处理器是基于注解的类的开发.对于每一个定义的处理器,无需再配置文件中逐个注册,只需在代码中通过对类与方法的注解,便可完成注册.即注解替换是配置文件中对于处理器的注册 ...

  3. Mybatis【一对多、多对一、多对多】知识要点

    Mybatis[多表连接] 我们在学习Hibernate的时候,如果表涉及到两张的话,那么我们是在映射文件中使用<set>..<many-to-one>等标签将其的映射属性关联 ...

  4. 比较工具diif-vimdiff-windows比较工具详解

    以文件形式比较: # diff <变动前的文件> <变动后的文件> 以表格形式比较: #vimdiff FILE_LEFT FILE_RIGHT 或 # vim -d FILE ...

  5. Android OpenGL ES 开发(十): 通过GLES20与着色器交互

    1. 获取着色器程序内成员变量的id(句柄.指针) GLES20.glGetAttribLocation方法:获取着色器程序中,指定为attribute类型变量的id. GLES20.glGetUni ...

  6. BaaS 的由来(1)

    百度百科是这么定义的, BaaS(后端即服务:Backend as a Service)公司为移动应用开发者提供整合云后端的边界服务.其实不仅是移动应用,现在更多的PC应用也同样适用移动端的标准. 在 ...

  7. 数据分析之Pandas和Numpy学习笔记(持续更新)<1>

    pandas and numpy notebook        最近工作交接,整理电脑资料时看到了之前的基于Jupyter学习数据分析相关模块学习笔记.想着拿出来分享一下,可是Jupyter导出来h ...

  8. 项目角度谈矢量切片运用以及Geoserver处理自定义规格矢量切片方案

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1. 背景 矢量切图方案目前已经是很常见的一个方案,在2016年时团队 ...

  9. PAT乙级-1056. 组合数的和(15)

    给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字.要求所有可能组合出来的2位数字的和.例如给定2.5.8,则可以组合出:25.28.52.58.82.85,它们的和为330. 输入 ...

  10. .net core实现redisClient

    引言 最近工作上有需要使用redis,于是便心血来潮打算自己写一个C#客户端.经过几天的努力,目前该客户端已经基本成型,下面简单介绍一下. 通信协议 要想自行实现redisClient,则必须先要了解 ...