
Я пытаюсь настроить MPIO между автономным ESXi 7.0 (бесплатная лицензия) и сервером SCST.
Я создал 4 vmknics (vmk1,vmk2,vmk3,vmk4) с адресами IPv6
(2001::1/64,2002::1/64,2003::1/64,2004::1/64)
и я назначил
(2001::64.02.2002::64.02.2003::64.02.2004::64.02.2004)
к 4 разным сетевым картам на Linux-компьютере.
Каждый сегмент L3 находится в отдельной VLAN.
У меня также есть vmk0, настроенный с IP-адресом IPv4.
Когда я выполняю netstat на сервере SCST, я вижу, что он прослушивает 0.0.0.0:3260 и :::3260
Я нашел эту замечательную статью, но команды на хостах ESXi относятся к версии 4.0, а на ESXi 7.0 я этого не делаю.НЕТиметьesxcli swiscsi
Насколько я понимаю, мне нужно привязать vmknic к vmnic, но я не смог найти никакой соответствующей документации по CLI/ESXCLI в 7.0.
Я по-прежнему вижу один путь вместо нескольких для каждого из моих устройств:
[root@ESXi:~] esxcfg-mpath -b |grep -B1 "Adapter"| grep -v -e "--" |sed 's/Adapter.*//'
eui.3163656561363833 : SCST_FIO iSCSI Disk (eui.3163656561363833)
vmhba64:C0:T0:L2 LUN:2 state:active iscsi
eui.3363613336363835 : SCST_BIO iSCSI Disk (eui.3363613336363835)
vmhba64:C0:T0:L8 LUN:8 state:active iscsi
eui.3761663561303238 : SCST_FIO iSCSI CD-ROM (eui.3761663561303238)
vmhba64:C0:T0:L1 LUN:1 state:active iscsi
eui.3562393762313730 : SCST_BIO iSCSI Disk (eui.3562393762313730)
vmhba64:C0:T0:L5 LUN:5 state:active iscsi
eui.6631393662333130 : SCST_BIO iSCSI Disk (eui.6631393662333130)
vmhba64:C0:T0:L0 LUN:0 state:active iscsi
eui.6164373835346366 : SCST_FIO iSCSI CD-ROM (eui.6164373835346366)
vmhba64:C0:T0:L4 LUN:4 state:active iscsi
eui.3639313435343362 : SCST_FIO iSCSI CD-ROM (eui.3639313435343362)
vmhba64:C0:T0:L3 LUN:3 state:active iscsi
eui.3332653439383239 : SCST_BIO iSCSI Disk (eui.3332653439383239)
vmhba64:C0:T0:L6 LUN:6 state:active iscsi
eui.3762393937356132 : SCST_BIO iSCSI Disk (eui.3762393937356132)
vmhba64:C0:T0:L9 LUN:9 state:active iscsi
eui.3466376564643362 : SCST_BIO iSCSI Disk (eui.3466376564643362)
vmhba64:C0:T0:L10 LUN:10 state:active iscsi
eui.6233633835373866 : SCST_BIO iSCSI Disk (eui.6233633835373866)
vmhba64:C0:T0:L7 LUN:7 state:active iscsi
Программный адаптер iSCSI, похоже, связан со всеми сетевыми картами VMK.
[root@ESXi:~] esxcli iscsi logicalnetworkportal list -A vmhba64
Adapter Vmknic MAC Address MAC Address Valid Compliant
------- ------ ----------------- ----------------- ---------
vmhba64 vmk0 ac:1f:6b:98:19:a4 true false
vmhba64 vmk1 00:50:56:66:f3:a2 true false
vmhba64 vmk2 00:50:56:66:9b:7e true false
vmhba64 vmk3 00:50:56:68:b5:38 true false
vmhba64 vmk4 00:50:56:61:ee:67 true false
Что я упускаю?
решение1
В конце концов я понял, что означает «привязка физической сетевой карты» к сетевой карте VMK, т.е.
esxcli network vswitch standard portgroup policy failover set -a vmnic4 -p PG-iSCSI_01
esxcli network vswitch standard portgroup policy failover set -a vmnic5 -p PG-iSCSI_02
esxcli network vswitch standard portgroup policy failover set -a vmnic6 -p PG-iSCSI_03
esxcli network vswitch standard portgroup policy failover set -a vmnic7 -p PG-iSCSI_04
Требования к приведенным выше утверждениям заключаются в том, что для каждой группы портов активен только один активный vmnic, а остальные не используются, т.е.
esxcli network vswitch standard portgroup policy failover set --active-uplinks=vmnic4 --portgroup-name=PG-iSCSI_01
esxcli network vswitch standard portgroup policy failover set --active-uplinks=vmnic5 --portgroup-name=PG-iSCSI_02
esxcli network vswitch standard portgroup policy failover set --active-uplinks=vmnic6 --portgroup-name=PG-iSCSI_03
esxcli network vswitch standard portgroup policy failover set --active-uplinks=vmnic7 --portgroup-name=PG-iSCSI_04
и конечно же после создания портгрупп
esxcli network vswitch standard portgroup add --portgroup-name=PG-SCSI_01 -vswitch vSwitch1
esxcli network vswitch standard portgroup add --portgroup-name=PG-SCSI_02 -vswitch vSwitch1
esxcli network vswitch standard portgroup add --portgroup-name=PG-SCSI_03 -vswitch vSwitch1
esxcli network vswitch standard portgroup add --portgroup-name=PG-SCSI_04 -vswitch vSwitch1
и после добавления vmknic в каждую группу портов
esxcli network ip interface add --interface-name=vmk1 --portgroup-name=PG-iSCSI_01
esxcli network ip interface add --interface-name=vmk2 --portgroup-name=PG-iSCSI_02
esxcli network ip interface add --interface-name=vmk3 --portgroup-name=PG-iSCSI_03
esxcli network ip interface add --interface-name=vmk4 --portgroup-name=PG-iSCSI_04
Давайте пересканируем iSCSI адаптер (если это не проблема)
esxcli storage core adapter rescan -a
Мы можем быстро проверить, что все пути используются для каждого устройства.
for dev in $(esxcli storage core device list | grep -e '^[^\ ]' | xargs);do echo -n "Device: $dev Paths:"; path=$(esxcli storage core path list -d $dev | grep -e '^iqn'| wc -l); echo $path;done
Device: eui.3163656561363833 Paths:5
Device: eui.3363613336363835 Paths:5
Device: eui.3761663561303238 Paths:5
Device: eui.3562393762313730 Paths:5
Device: eui.6631393662333130 Paths:5
Device: eui.6164373835346366 Paths:5
Device: eui.3639313435343362 Paths:5
Device: eui.3332653439383239 Paths:5
Device: eui.6332303139666464 Paths:5
Device: eui.6233633835373866 Paths:5
Конечно, все путидолжно бытьвАктивное состояние
esxcli storage core path list -d eui.3163656561363833 | awk '/^i/{dev=$0}/Runtime/{rn=$3}/State/{printf "%20s %7s %s\n",rn,$2,dev}'
vmhba64:C0:T0:L7 active iqn.2019-05.com....-00023d000002,iqn.2020-02.l...l:bm01-1234abcd,t,1-eui.6233633835373866
vmhba64:C5:T0:L7 active iqn.2019-05.com....-00023d000017,iqn.2020-02.l...l:bm01-1234abcd,t,1-eui.6233633835373866
vmhba64:C4:T0:L7 active iqn.2019-05.com....-00023d000012,iqn.2020-02.l...l:bm01-1234abcd,t,1-eui.6233633835373866
vmhba64:C3:T0:L7 active iqn.2019-05.com....-00023d00000d,iqn.2020-02.l...l:bm01-1234abcd,t,1-eui.6233633835373866
vmhba64:C2:T0:L7 active iqn.2019-05.com....-00023d000008,iqn.2020-02.l...l:bm01-1234abcd,t,1-eui.6233633835373866