device mapper的multipath 驱动不能管理本地scsi磁盘吗?

发布于 2022-09-23 14:00:10 字数 2147 浏览 14 评论 0

我想尝试一下device mapper的 multipath驱动 ,于是在vmware中添加了两块scsi硬盘。想通过device mapper的multipath driver来管理这两块磁盘(当然,每个设备只有一个path)。但是在配置好multipath以后, 运行multipath  –v2,输出:
Error calling out /sbin/scsi_id  -g –u –s  /dev/sda
查了一下,发现是scsi_id的问题。他没有返回scsi device的标识。于是跟踪scsi_id代码,发现他通过sg发送一个standard inquery,获得verndor id等。然后发送一个Supported vital product data pages(page code 0x00),已获得支持的page。该page在规范中指定是必须实现的。但是这个时候返回的数据并不是0x00 page。所以进入下面代码:
/*
         * Following check is based on code once included in the 2.5.x
         * kernel.
         *
         * Some ill behaved devices return the standard inquiry here
         * rather than the evpd data, snoop the data to verify.
         */
        if (buffer[3] > MODEL_LENGTH) {
                /*
                 * If the vendor id appears in the page assume the page is
                 * invalid.
                 */
                if (!strncmp((char *)&buffer[VENDOR_LENGTH], dev_scsi->vendor, VENDOR_LENGTH)) {
                        info(udev, "%s: invalid page0 data\n", dev_scsi->kernel);
                        return 1;
                }
也就是说该scsi设备仍然发送的是standard inquery命令的返回结果。因此scsi_id无法获得scsi device的标识。
所以,有以下问题:
1.        是不是device mapper的multipath 驱动不能管理本地scsi 设备?
2.        Scsi_id无法获取标识是因为vmware的对scsi device模拟未能实现的关系吗?但是我在本地的scsi硬盘上也是同样的错误。难道他们都没有实现inquery的page 0x00?
谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

空城缀染半城烟沙 2022-09-30 14:00:10

我不太懂你这个,等待达人解答

ゞ记忆︶ㄣ 2022-09-30 14:00:10

帮顶,问得有点偏,估计很少有人会,呵呵

桃扇骨 2022-09-30 14:00:10

主要是最近在看这个。我也发现关于存储和scsi等相关开发讨论的地方比较少。cu上有个存储论坛,不过好像都是讨论怎么使用的。订阅了linux-scsi。但上面都是那些牛人在发patch,不敢打扰。实在找不到地方,所以才贴在这里。

大姐,你呐 2022-09-30 14:00:10

看了下sense data,似乎设备确实不支持page0的inquery:
sense data: 0xf0 0x50 0x00 0x00 0x00 0x00 0x00 0x0a 0x00 0x00 0x00 0x00 0x24 0x00 0x00 0xc0 0x01 0x00

sense data 说明该inquery 是ILLEGAL REQUEST.出错的命令字节为0x01。也就是evpd。说明设备确实不支持Vital product data的查询。不知道是不是direct access的设备都不支持。因为我本地scsi硬盘也不支持。

孤独患者 2022-09-30 14:00:10

自己写了个scsi_id程序,虚拟了一个scsi id给本地磁盘。现在本地磁盘能加入multipath 设备了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文