gpt4 book ai didi

linux - 关于 SCSI 保留

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:51:53 25 4
gpt4 key购买 nike

我正在尝试编写一个程序来阻止使用 SCSI 2 保留的 LUN。

在 SCSI 2 预留中,LUN 可以由具有不同路径的同一主机预留,还是 I-T-L 联结只有一条路径。

例如:假设主机尝试从同一目标但使用目标的不同端口保留已保留的 LUN。这可能吗?

基本上,LUN 预留仍然是同一台主机,但来自不同的路径。

[编辑]对于上述问题,我已经得到了所需的答复,但还有另一个问题。假设主机在 LUN X 上有保留,连接断开或主机发出注销问题。预订会怎样?是否取决于主机驱动程序来清除保留并清除其数据,或者保留仍然存在,如果其他主机尝试保留相同的 LUN,则会发生冲突。我尝试用谷歌搜索,但找不到与此问题相关的规范。

最佳答案

每个 I_T_L 节点都是一条路径。当您使用 SPC-2 中描述的 RESERVE(6) 或 RESERVE(10) 命令时,这就是您要保留的内容。因此,一次只能激活一条路径。如果那是你想要的,那你很好! (编辑:需要明确的是,发出 RESERVE 的第二个 I_T_L 关系会发生预订冲突。)

如果您的启动器和目标可以处理它,SPC-3 中的 PERSISTENT RESERVE/RELEASE 命令会提供更大的灵 active 。您可以向 LU 注册每个关系,然后设置一个“仅限注册人独占访问”的保留,阻止其他所有人访问,但允许它访问已注册的关系。

在 Redhat 集群软件中使用的 SCSI fence 脚本中的错误描述中可以看到这方面的一个例子。现有解决方案无法与多路径 I/O 互操作,因为冗余路径不断遇到预留冲突。解决方案是注册所有路径:https://bugzilla.redhat.com/show_bug.cgi?id=661134

[编辑] 以回答您的附加问题:如果连接中断,预订仍将保留。来自 SPC-2:

This command shall request that the entire logical unit be reserved for the exclusive use of the initiator until the reservation is superseded by another valid RESERVE command from the same initiator or until released by a RELEASE command from the same initiator that made the reservation, by a TARGET RESET task management function performed by any initiator, by a hard reset condition, or by a power on cycle.

关于linux - 关于 SCSI 保留,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30461222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com