Eil*_*Eil 3 linux ubuntu iscsi multipath
我刚刚将功能正常的 Ubuntu 16.04 主机升级到 18.04,现在遇到多路径问题。
软件包版本:* multipath-tools 0.7.4-2ubuntu3 * open-iscsi 2.0.874-5ubuntu2.7
我有一台 Dell PowerVault MD3860i,有四个通往主机的路径。升级之前,multipath -ll
是这样的:
backupeng (3600a098000b5efae00000e9a5b9b58f5) dm-2 DELL,MD38xxi
size=8.0T features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
|- 3:0:0:1 sdb 8:16 active ready running
|- 4:0:0:1 sdc 8:32 active ready running
|- 5:0:0:1 sdd 8:48 active ready running
`- 6:0:0:1 sde 8:64 active ready running
Run Code Online (Sandbox Code Playgroud)
现在看起来像这样:
backupeng (3600a098000b5efae00000e9a5b9b58f5) dm-2 DELL,MD38xxi
size=8.0T features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 rdac' wp=rw
|-+- policy='round-robin 0' prio=14 status=active
| |- 5:0:0:1 sdd 8:48 active ready running
| `- 6:0:0:1 sde 8:64 active ready running
`-+- policy='round-robin 0' prio=9 status=enabled
|- 3:0:0:1 sdb 8:16 active ready running
`- 4:0:0:1 sdc 8:32 active ready running
Run Code Online (Sandbox Code Playgroud)
我的/etc/multipath.conf
看起来像这样:
defaults {
user_friendly_names yes
path_selector "round-robin 0"
path_grouping_policy multibus
}
multipaths {
multipath {
wwid 3600a098000b5efae00000e9a5b9b58f5
alias backupeng
}
}
Run Code Online (Sandbox Code Playgroud)
出于性能原因,我需要将所有路径放在同一个路径组中,就像以前一样。我的理解是path_grouping_policy multibus
应该这样做。在过去的几个小时里,我尝试重新启动 multipathd、在主机上从头开始设置 iscsi 和多路径配置等。
multipathd -k
我可以粘贴->的完整输出show config
,但我在其中看到的内容与我的 multipath.conf 文件一致。我还可以提供其他信息吗?
您是否实际测量过性能并发现其性能下降?您实际上可能会发现它有所改进,尽管差异可能不是很大。
Dell PowerVault MD3860i 似乎是一种主动/被动(也称为非对称或 ALUA)类型的存储系统:它有两个存储控制器,并且每个磁盘在任何给定时间都被视为由其中一个控制器“拥有”。如果通过当前不“拥有”该磁盘的控制器访问磁盘,则会触发所有权切换,从而为磁盘 I/O 操作增加一些额外的延迟。
因此,最好仅使用使用当前拥有正在访问的磁盘的控制器的路径。
您的新multipath -ll
输出表明dm-multipath
正在使用该协议从存储系统接收 ALUA 信息rdac
。也就是说,存储控制器告诉dm-multipath
它当前应该使用哪些路径。这rdac
协议是 LSI/Engenio/NetApp 存储控制器及其 OEM 使用的较旧协议,并且很好理解。还有其他类似的特定于供应商的协议,SCSI-3 ALUA 将成为传递此信息的新标准方式,尽管并非所有存储系统都使用它。
您将默认的path_grouping_policy设置为multibus
,但它很可能被编译为multipath-tools
. (一般特定节拍:适用device
或multipath
部分中的任何设置都将覆盖该部分中设置的值defaults
。)
这些内置默认值是与存储设备制造商合作实现的;显然,multipath-tools
Ubuntu 16.04 中的版本还没有 Dell PowerVault MD3860i 的特定默认值,但在 Ubuntu 18.04 中却有。
您可以使用 查看这些内置默认值sudo multipath -t
。对于您的存储系统,相关设置组可能如下所示:
device {
vendor "DELL"
product "(MD34xx|MD38xx)"
product_blacklist "Universal Xport"
path_grouping_policy "group_by_prio"
path_checker "rdac"
features "2 pg_init_retries 50"
hardware_handler "1 rdac"
prio "rdac"
failback "immediate"
no_path_retry 30
}
Run Code Online (Sandbox Code Playgroud)
path_grouping_policymultibus
适用于真正的主动/主动存储系统,它允许您不受限制地使用任何和所有路径。这些往往是更大、更高级别的存储产品。
您可以编写自己的device { ... }
或overrides { ... }
阻止来multipath.conf
覆盖这些设置,但只有当您从存储供应商那里获得特定信息,或者您有测试结果证明您实际上比供应商更了解时,您才应该在生产中这样做和dm-multipath
开发商。
归档时间: |
|
查看次数: |
3215 次 |
最近记录: |