Iscsi mpio

在ESXi 5.0之前的版本中,要想實現完整的iSCSI MPIO(容錯/負載均衡),需要通過複雜的命令列才能實現。
在ESXi 5.0中,可以通過圖形管理介面來簡單的實現。
步驟:

1 首先,新增一個iSCSI-1 VMKernel (同時會新建一個vSwitch2),(本案例使用vmnic2/vmnic3兩張物理網卡)


9-27-2011 17:27:22 上传

下载附件 (72.99 KB)


9-27-2011 17:27:23 上传

下载附件 (66.8 KB)


9-27-2011 17:27:24 上传

下载附件 (59.8 KB)

2 在vSwitch2中,再添加一個iSCSI-2 VMKernel


9-27-2011 17:27:25 上传

下载附件 (80.8 KB)

然後會得到這樣一個配置的vSwitch2


9-27-2011 17:27:26 上传

下载附件 (21.41 KB)

3 在vSwitch2中,編輯iSCSI-1 VMKernel的屬性,在NIC Teaming下的Override switch failover order處打上勾,
然後將vmnic2設為Active Adapters, vmnic3設為Unused Adapters


9-27-2011 17:27:28 上传

下载附件 (106.95 KB)

同樣的方法編輯iSCSI-2 VMKernel的屬性,在NIC Teaming下的Override switch failover order處打上勾,
這裡要注意,要將vmnic3設為Active Adapters, vmnic2設為Unused Adapters


9-27-2011 17:27:29 上传

下载附件 (97.59 KB)

到此,iSCSI VMKernel設置完成。

4 創建Software iSCSI Adapter(iSCSI Initiator)
在ESXi 5.0中,默認是不存在Software iSCSI Adapter的,沒關係,可以在Storage Adapter中創建一個


9-27-2011 17:27:12 上传

下载附件 (58.13 KB)

 


9-27-2011 17:27:21 上传

下载附件 (23.14 KB)



9-27-2011 17:27:21 上传

下载附件 (78.17 KB)

5 然後在iSCSI SAN中給予此iSCSI Initiator訪問共用vmfs lun的存取權限。
然後在此Software iSCSI Adapter(vmhba35)的屬性中設置iSCSI LUN的連結。


9-27-2011 17:27:30 上传

下载附件 (33.61 KB)


9-27-2011 17:27:31 上传

下载附件 (46.41 KB)

6 在Software iSCSI Adapter(vmhba35)的屬性中設置Network Configuration,將 iSCSI-1和 iSCSI-2加入到其中


9-27-2011 17:27:32 上传

下载附件 (84.48 KB)


9-27-2011 17:27:33 上传

下载附件 (95.36 KB)

然後Rescan All Storage … 添加上分配的LUN, 這是可以看到Patch Status由原來Not used變為了Active.


9-27-2011 17:27:34 上传

下载附件 (82.66 KB)

到此,只實現了 iSCSI MPIO的容錯功能,要實現負載均衡,繼續一下步

7 打開iSCSI Storage的屬性,點擊右下角的Manager Paths…


9-27-2011 17:27:36 上传

下载附件 (111.93 KB)

可以看到默認的Path策略是Fixed(VMWare) – 【固定】,
在下面的路徑資訊中可以看到路徑C1的Status為Active(I/O),
並在Preferred(首選)中標注了*, 而路徑C0的Status為Active,
Preferred中沒有標注*這個策略是不能實現負載均衡的.


9-27-2011 17:27:37 上传

下载附件 (102.46 KB)

將策略改為Round Robin(VMWare) – 【迴圈/輪轉】


9-27-2011 17:27:37 上传

下载附件 (107.03 KB)

修改完成後可以看到:路徑C1和C0的Status都為Active(I/O),Preferred中都沒有標注*


9-27-2011 17:27:38 上传

下载附件 (77.51 KB)

至此,設置基本完成,測試一下多個VM的I/O,可以看到由原來的集中於vmnic2的I/O,現在平均分佈到
vmnic2/vmnic3兩者當中。


9-27-2011 17:27:35 上传

下载附件 (82.05 KB)


9-27-2011 17:27:39 上传

下载附件 (89.5 KB)


9-27-2011 17:27:11 上传

下载附件 (93.17 KB)

鏈路負載均衡策略除了以上的基本設置,還可以通過2個主要參數進行細調,
以符合不同的要求或環境。調整Round Robin策略通過命令列進行操作:

設置完預設的Round Robin策略後,以命令列模式執行

esxcli storage nmp device list

可以看到Round Robin策略的默認設置,其中紅字處標明了當前啟用的策略及其應用參數:
naa.6000eb38732d44470000000000000027
Device Display Name: LEFTHAND iSCSI Disk (naa.6000eb38732d44470000000000000027)
Storage Array Type: VMW_SATP_DEFAULT_AA
Storage Array Type Device Config: SATP VMW_SATP_DEFAULT_AA does not support device configuration.
Path Selection Policy: VMW_PSP_RR
Path Selection Policy Device Config: {policy=rr,iops=1000,bytes=10485760,useA NO=0;lastPathIndex=0: NumIOsPending=2,numBytesPending=36864}

Path Selection Policy Device Custom Config:
Working Paths: vmhba35:C0:T00, vmhba35:C1:T00

VMW_PSP_RR說明當前啟用了Round Robin策略
2個主要的參數 iops=1000, bytes=10485760
前者限定在進行1000次io操作後切換到下一個路徑,後者限定在發送10485760位元組的資料後切換到下一個路徑
可以通過以下命令列來修改這2個參數的值,以符合不同的要求或環境。

修改iops參數:
esxcli storage nmp psp roundrobin deviceconfig set –type=iops –iops 888 –device naa.xxxxxxxxxxxxxxxxxx

修改bytes參數:
esxcli storage nmp psp roundrobin deviceconfig set –type “bytes" -B 12345 –device naa.xxxxxxxxxxxxxxxxxx

iSCSI LUN的UUID(naa.xxx)可以通過命令: esxcli storage core path list 獲取

有很多人關心Jumbo Frames的設置,那就補充一下:
要設置 Jumbo Frames,打開連接iSCSI SAN的vSwitch(vSwitch2)的屬性,在這裡你可以針對整個vSwitch2(All Port)
做JF修改,也可以只針對其中所有設置了MPIO的iSCSI VMkernel(port group)做JF修改。


9-28-2011 10:45:03 上传

下载附件 (52.78 KB)


9-28-2011 10:45:02 上传

下载附件 (62.16 KB)

注1:要能實際啟用Jumbo Frames,整個iSCSI鏈路的所有連接設備(網卡/OS or Hypervisor/交換機/存儲端)都要支援和啟用JF,
才能實現效果。另外,不是所有的設備或環境下啟用Jumbo Frames都能帶來很大性能的提升,建議以自己的評估測試結果
來決定是否啟用。

注2:另外要提醒一點,如果VM中設置了MSCS群集服務,MSCS不能通過設置為Round Robin策略
的路徑來連接MSCS共用盤,否則會出現I/O錯誤。

發表留言