介绍
在Windows Server 2008和Windows Server 2008 R2中开始支持Native Multipathing(MPIO)软件作为操作系统的一个组件存在。EMC旗下的存储阵列都支持MPIO。本文将介绍MPIO和它的安装与配置,以及使用Windows Server Native MPIO连接存储的方法和注意事项。
安装与配置Windows Native MPIO:
Native MPIO在Windows Server 2008和Windows Server 2008 R2内是一个可选安装项目,用户需要手动启动该功能才能开始使用Native MPIO软件。具体的方式是:
打开 Server Manager Management Console
选择Features > Features Summary > Add Features , 打开Add Features Wizard
点击Next选择“MultiPath I/O“、安装
重启Windows
使用Native MPIO连接EMC VPLEX、Symmetrix、DMX、VNX和CLARiiON存储系统的时候需要进行适当配置,用户可以通过两个方法完成特定存储系统的连接配置。
方法1:手动输入Vender和Device ID(建议优先使用这种方法,如果所有的存储阵列没有被初始化连接,可以避免连续重启)
使用MPIO Properties控制面板程序中的MPIO-ed Devices标签
选择Add然后输入vender和product ID(vender ID为8位字符,不满8位的用空格补全,product ID为16位,不满16位的用空格补全)
比如在MPIO中claim VNX系列和CLARiiON的Raid 1的LUN,输入字符为DGC*****RAID*1********(*这里表示为空格)
下表显示EMC存储阵列的Vender ID和Product ID:
方法2:使用MPIO程序自动Discover、Claim和管理已经连接上的阵列。如果Windows系统可以接受连续重启可以选择这种配置方式。但要注意的是只有当阵列通过最少两条链路连接到windows主机,才会在被程序识别并且列出。对于不同的存储阵列出来的结果也会有所不同:
对于VNX OE和CLARiiON系统(FLARE R26以上,配置failover mode=4ALUA)会显示为SPC-3 compliant
对于DMX、VMAX、VPLEX阵列会显示在Others中
Multipath I/O多路径管理:
MPIO提供了几种Load Balance Policy,它们的作用如下:
Failover Only:这个模式简单来说就是当一条连接到外部存储的链路检测到不能用的时候,MPIO会自动寻找到其他的可用链路继续进行Failover。在这个模式中,MPIO不提供负债均衡(Load Balance),MPIO会定义Primary Path和Standby Path。Primary Path是用来完成磁盘设备的读写请求。当Primary Path不可用的时候,其中一个Standby Path会变成Primary Path,接管I/O,剩余的Path继续为Standby Path。
Round Robin:这个模式中,所有的I/O请求会分布在每条路径实现负载均衡。这个是对于Active/Active存储的默认策略。
Round Robin with Subset:在这个模式中,用户可以指定一组Path为Active,在指定的这组Path内,应用Round Robin策略。同时,用户设置Standby Path,当所有的Active Path都不能用的时候,Standby Path会接管I/O。
Weighted Path:这个模式允许用户定义每条Path的权重,MPIO会根据权重选择相应的路径进行Failover动作。
当所有的磁盘设备在重启之后被MPIO发现之后。在Windows中的Device Manager中会显示基于各种阵列的磁盘设备。在相应磁盘的Properties中会有一个名为MPIO的标签出现,用来管理多路径的磁盘设备。默认情况下对于每个磁盘设备的Load Balance Policy是基于主机和阵列的磁盘类型而言。例如:
在Windows Server 2008中,DMX磁盘设备的Load Balance Policy为“Fail Over Only”,如果第一条列出的路径显示为“Active Optimized”则其他的路径显示为Standby。而在Windows Server 2008 R2中默认的load balance policy则为 “Round Robin”方式。然后所有的路径都列出为“Active/Optimized”。用户也可以做手动的修改。
对于VNX和CLARiiON的磁盘设备,默认的Load Balance Policy为“Round Robin With Subset“,所有到SP Own的磁盘设备的路径显示为“ Active Optimized”,所有到SP没有Own的磁盘设备的路径显示为“Active/Unoptimized”。但是需要注意的一点是,当VNX和CLARiiON系列的磁盘设备连接到Windows主机为ALUA模式(启用Native MPIO必要的模式),不能修改Load Balance Policy。
对于VPLEX磁盘设备,默认的Load Balance Policy为“Round Robin”。默认Policy可以修改为其他策略,除了“Fail Over Only”。默认Policy需要在磁盘设备级别启用,不能用于全局。
注意事项:
MPIO对于单个LUN的最大支持的路径为32个,如果超过这个限制会导致Windows出现蓝屏崩溃的现象。
当运行这MPIO的Windows Server 2008主机通过VNX和CLARiiON系列磁盘设备进行操作系统启动的时候,MPIO会将所有LUN移动到单个Storage Processor上面。
假如有任何故障发生,在修复之后,Windows 2008 Native MPIO不会自动恢复将VNX和CLARiiON上的LUN恢复到原先缺省的Storage Processor之上。例如,在升级VNX或者CLARiiON存储软件以后,所有的VNX和CLARiiON的LUN都会Own在单个Storage Processor。要解决这种情况,需要在存储端软件(Unisphere/Navisphere Manager 或者 NavisphereSecure命令行工具)将LUN恢复到缺省的Storage Processor上。
Windows Server 2008 Native MPIO支持最大2TB的性能参数统计。
参考
EMC Host Connectivity Guide for Windows
应用于
Windows Server 2008/2008 R2
反射实现Model修改前后的内容对比 【API调用】腾讯云短信 Windows操作系统下Redis服务安装图文详解 Redis入门学习
反射实现Model修改前后的内容对比 在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责. 首先我们要创建一个User类 1 p ...
Linux系统配置VSFTP软件详解
Linux系统配置VSFTP软件详解 出处 http://www.sudu.cn/service/detail.php?id=11656 vsftpd.conf 是vsftpd的配置文件,用来控制vs ...
重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解
[源码下载] 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Toa ...
重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解
[源码下载] 重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Tile ...
[RM HA4] RM状态存储与还原原理详解
RM状态存储与还原机制详解 转载请注明原始链接http://www.cnblogs.com/shenh062326/p/3562199.html. 摘要 本文基于Apache Hadoop社区最新re ...
numpy的文件存储.npy .npz 文件详解
Numpy能够读写磁盘上的文本数据或二进制数据. 将数组以二进制格式保存到磁盘 np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 ...
Windows渗透利器之Pentest BOX使用详解(一)
内容概览: 知识科普 优缺点总结 功能参数详解翻译: 控制 ...
如何在cmd窗口里快速且正确打开任意位置路径(各版本windows系统都适合)(图文详解)(博主推荐)
问题的由来 有时候,我们很苦恼,总是先系统键 + R,然后再去手动敲.尤其对win7系统比较麻烦 解决办法 方法一:复制路径(这点对win10系统做得好,直接可以复制) ,win7系统的话可能还需要设 ...
VISUAL STUDIO 2008 WINDOWS FORM项目发布生成安装包详解(转)
转自:http://www.cnblogs.com/killerofyang/archive/2012/05/31/2529193.html Visual Studio 2008 Windows Fo ...
随机推荐
Javascript下拉导航
1.右侧导航 tree.js function Toggle(e){ if(!document.getElementById) return; if(!e) var e = window.event; ...
iOS常用宏 定义
总结了iOS开发过程中的一些常用宏,以后会陆陆续续添加进来. 字符串是否为空 1 #define kStringIsEmpty(str) ([str isKindOfClass:[NSNull c ...
[AngularJS] Accessing Scope from The Console
Using Angular, you can actually access the scope and other things from the console, so when you have ...
Android软键盘调用及隐藏,以及获得点击软键盘输入的字母信息
在Android提供的EditText中单击的时候,会自动的弹出软键盘,其实对于软键盘的控制我们可以通过InputMethodManager这个类来实现.我们需要控制软键盘的方式就是两种一个是像Edi ...
Python 2.7 学习笔记 访问mysql数据库
一.基本概念 使用python操作数据库,其基本的流程如下(其实所有开发语言访问数据库的流程都是这样). 1.第一,引入相应数据库的python数据库接口模块,针对不同的数据库类型,有不同的数据库访问 ...
UVA506-System Dependencies(拓扑序)
Problem UVA506-System Dependencies Accept:285 Submit:2824 Time Limit: 3000 mSec Problem Description ...
Navicat工具的使用 1
Navicat 在生产环境中操作MySQL数据库还是推荐使用命令行工具mysql,但在我们自己开发测试时,可以使用可视化工具Navicat,以图形界面的形式操作MySQL数据库 官网下载:https: ...
python --- 05 字典 集合
一.字典 可变数据类型 {key:value}形式 查找效率高 key值必须是不可变的数据类型 1.增删改查 1).增 dic["新key"] = "新va ...
linux下忘记mysql密码的几种找回方法
今天我们主要是讲一下关于linux忘记mysql密码处理方法,下面提供了5种linux忘记mysql密码找回方法哦.方法一(先进入root权限):# /etc/init.d/mysql stop# m ...
C++:类中的赋值函数
先来看一个例子: #include #include using namespace std; class Student{ public: ...