stionmel 发表于 2012-11-4 16:47:09

vspheres 5 存储多路径屏蔽方法

屏蔽路径
可以阻止主机访问存储设备或 LUN,或阻止其使用指向某个 LUN 的单个路径。使用 esxcli 命令可屏蔽路径。屏蔽路径时,请创建声明规则,该规则将 MASK_PATH 插件分配给指定路径。
在此过程中,--server=server_name 指定目标服务器。指定的目标服务器会提示您输入用户名和密码。支持其他连接选项,如配置文件或会话文件。有关连接选项的列表,请参见vSphere 命令行界面入门.
先决条件
安装 vCLI 或部署 vSphere Management Assistant (vMA) 虚拟机。请参见vSphere 命令行界面入门。要进行故障排除,请在 ESXi Shell 中运行 esxcli 命令。
步骤
1
      
检查下一个可用的规则 ID 是多少。
esxcli --server=server_name storage core claimrule list
用于屏蔽路径的声明规则的规则 ID 都应该在 101 – 200 范围内。如果此命令显示规则 101 和 102 已经存在,则可以指定 103 来添加规则。
2
      
通过为 MASK_PATH 插件创建新声明规则,将该插件分配给某个路径。
esxcli --server=server_name storage core claimrule add -P MASK_PATH
3
      
将 MASK_PATH 声明规则加载到系统中。
esxcli --server=server_name storage core claimrule load
4
      
验证是否正确添加了 MASK_PATH 声明规则。
esxcli --server=server_name storage core claimrule list
5
      
如果存在已屏蔽路径的声明规则,则将规则移除。
esxcli --server=server_name storage core claiming unclaim
6
      
运行路径声明规则。
esxcli --server=server_name storage core claimrule run
在将 MASK_PATH 插件分配给路径之后,路径状态变为不相关,且不再由主机进行维护。因此,显示屏蔽路径信息的命令可能将路径状态显示为失效。
示例: 屏蔽 LUN
在此示例中,屏蔽目标 T1 和 T2 上通过存储适配器 vmhba2 和 vmhba3 访问的 LUN 20。
1
      
#esxcli --server=server_name storage core claimrule list
2
      
#esxcli --server=server_name storage core claimrule add -P MASK_PATH -r 109 -t location -A vmhba2 -C 0 -T 1 -L 20
#esxcli --server=server_name storage core claimrule add -P MASK_PATH -r 110 -t location -A vmhba3 -C 0 -T 1 -L 20
#esxcli --server=server_name storage core claimrule add -P MASK_PATH -r 111 -t location -A vmhba2 -C 0 -T 2 -L 20
#esxcli --server=server_name storage core claimrule add -P MASK_PATH -r 112 -t location -A vmhba3 -C 0 -T 2 -L 20
3
      
#esxcli --server=server_name storage core claimrule load
4
      
#esxcli --server=server_name storage core claimrule list
5
      
#esxcli --server=server_name storage core claiming unclaim -t location -A vmhba2
#esxcli --server=server_name storage core claiming unclaim -t location -A vmhba3
6
      
#esxcli --server=server_name storage core claimrule run

geguimin 发表于 2012-11-4 17:45:10

好文章

jar 发表于 2012-11-4 20:51:11

技术贴啊,支持。
不过实际恐怕很少需要用到吧?
屏蔽LUN的访问当然应该在Target进行访问控制,在Host进行控制明显不合理。
屏蔽某条Path更加匪夷所思了,想不出来谁会需要这么做。

ylqy 发表于 2012-11-4 21:32:00

非常感谢分享,学习学习再学习

天擎 发表于 2012-12-4 15:56:18

屏蔽路径干嘛呢?

shuhan 发表于 2012-12-4 16:07:28

谢谢楼主!!!

seanlaser 发表于 2012-12-4 16:07:58

其实可以在GUI做不用那么麻烦的。
存储适配器里面有路径配置,点禁用即可。
另外在iSCSI存储属性里面也有路径配置选项,同样点禁用即可。
说到为啥要禁用……主要还是排错。之前就遇到一个Case,用户那里的老报存储问题如果开了MPIO的话。也不是完全掉,就是发现延迟高,而且无法Storage vMotion,后来通过单独禁用特定路径发现是新加的目标端卡有问题。那卡不适合处理iSCSI,虽然是千兆,用在NFS或者SMB处理上看不出有问题。

stionmel 发表于 2012-12-4 16:08:45

试想在没有足够的存储分区的情况下,大家是不要做LUN屏蔽

jar 发表于 2012-12-4 16:09:29


大哥能否解释下,没看明白啊

adanwu 发表于 2012-12-4 16:10:14

好帖子,支持楼主。
页: [1]
查看完整版本: vspheres 5 存储多路径屏蔽方法