OpenStack中的Multipath faulty device的成因及解决(part 2)
| 版权:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,可以邮件:wangxu198709@gmail.com 简介 在上次的文章 OpenStack中的Multipath faulty device的成因及解决(part 1) 中,我详细解释了fault device的成因,这篇文章重点介绍下os-brick中是如何在并发的情况下,通过哪些具体的实现避免了faluty device的形成。 在讲具体实现前,有必要提到Linux上SCSI Block device(块设备)地址(寻址)的一些细节。 Linux kernel中通过如下的层次来定位特定的LUN: SCSI adapter number [host] channel number [bus] id number [target] lun [lun] 更多细节可以参考[ SCSI Addressing ],也就是说, 一个LUN可以用 [host-bus(channel)-target-lun] 来表示 。 Linux每连接一个iscsi target,kernel都会在本地的 /sys/class/iscsi_host/host*/device/session 建立对应的目录结构,用来表示一个SCSI的设备。 $ ls -l /sys/class