VMware Solutions Discussions

MSLA Setup for NFS/ISCSI/MGMT/CIFS and Multiple VLANs

cserpadss
5,941 Views

We are reconfiguring our FAS2040 using an MSLA setup for load balance. Our switching infrastructure is a 3750 stack of 4 members and the clients connecting to the Filer are 6 ESXi 5.1 servers via NFS/iSCSI as well Windows machines via CIFS.

NFS Subnet / VLAN: 10.1.200.0 / 200

iSCSI Subnet / VLAN: 10.1.300.0 / 300

Mangement Subnet / VLAN: 10.1.400.0 / 400

CIFS Subnet / VLAN: 10.1.500.0 / 500

ESXi NFS VMkernel IP: 10.1.200.15

ESXi iSCSI VMkernel IP: 10.1.300.15

Load Balancing options: Route based on IP hash

I'm thinking that e0a and e0b can be put into a VIF to serve NFS/management traffic so I would assign the following IP and aliases to the LACP VIF:

10.1.200.26, 10.1.200.226, 10.1.400.26

I'm put e0c and e0d in another VIF for iSCSI and CIFS:

10.1.300.26, 10.1.300.226, 10.1.500.26

Within vSphere I would have to divide the datastore load evenly between 10.1.200.26 and 10.1.200.226, correct?

The goal is to serve iSCSI/NFS/CIFS and management traffic through the 4 ports in the filer. Splitting the load between the 2 ports in each VIF is ideal, although I could also split it among all four ports by creating a single 4-port VIF with 4 iSCSI IP's, 4 NFS IP's and 1 IP for MGMT and CIFS...

What would be your recommendation? Also I need to tag a VLAN id to each IP.

Below is what I am planning on running:

vif create lacp vif1 -b ip e0a e0b
vlan create vif1 200 400

ifconfig vif1-200 10.1.200.26 netmask 255.255.255.0 mtusize 1500
ifconfig vif1-200 alias 10.1.200.226 netmask 255.255.255.0
ifconfig vif1-400 alias 10.1.400.26 netmask 255.255.255.0

vif create lacp vif2 -b ip e0c e0d
vlan create vif2 300 500

ifconfig vif2-300 10.1.300.26 netmask 255.255.255.0 mtusize 1500
ifconfig vif2-300 alias 10.1.300.226 netmask 255.255.255.0
ifconfig vif2-500 alias 10.1.500.26 netmask 255.255.255.0

route add default 10.1.500.1 1
routed on

reboot

Do you want to see the switching setup as well?

9 REPLIES 9

ogra
5,941 Views

Alias will work natively if they belong to the same VLAN. I have done it in the past.

It seems your Alias are from different VLANs. In that case VLAN tagging should be required.

Conceptually, I don't see a problem.

cserpadss
5,941 Views

Thanks for your feedback. I've made a couple of changes with regards to aliases then. What do you think?

vif create lacp vif1 -b ip e0a e0b

vlan create vif1 200 400

ifconfig vif1-200 10.1.200.26 netmask 255.255.255.0 mtusize 1500

ifconfig vif1-200 alias 10.1.200.226 netmask 255.255.255.0

ifconfig vif1-400 10.1.400.26 netmask 255.255.255.0

vif create lacp vif2 -b ip e0c e0d

vlan create vif2 300 500

ifconfig vif2-300 10.1.300.26 netmask 255.255.255.0 mtusize 1500

ifconfig vif2-300 alias 10.1.300.226 netmask 255.255.255.0

ifconfig vif2-500 10.1.500.26 netmask 255.255.255.0

route add default 10.1.500.1 1

routed on

reboot

At this point as long as the ether channel group and the associated ports in the switch stack are configured for dot1q trunks with the allowed above vlans it should work. Anything else you can think about?

ogra
5,941 Views

Well yeah it looks good.

Just 1 thing I skipped earlier is, why are you creating VLANS ? You aren't doing VLAN tagging anywhere.

If I understand it correctly, you are attempting to use 1 VIF (LACP) to have 2 IP addresses of different subnet. Correct ?

Then, I don't see the reason for VLAN creation.

Let me know !

Cheers !

cserpadss
5,941 Views

The etherchannel group will be in trunk mode and will allow for connection to VLANs 200 and 400, in our network a vlan represents a subnet. Thus vlan 200 is used on the network 10.1.200.0.

interface Port-channel1

description LACP_VIF1_for_Filer1A

switchport

switchport trunk encapsulation dot1q

switchport trunk allowed vlan 200,400

switchport mode trunk

switchport nonegotiate

spanning-tree guard loop

spanning-tree portfast trunk

interface GigabitEthernet1/0/11
description Filer1A_e0a_2x_LACP_802.1q_Trunk
switchport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 200,400
switchport mode trunk
switchport nonegotiate
spanning-tree guard loop
spanning-tree portfast trunk
channel-protocol lacp
channel-group 1 mode active

interface GigabitEthernet 2/0/14
description Filer1A_e0b_2x_LACP_802.1q_Trunk
switchport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 200,400
switchport mode trunk
switchport nonegotiate
spanning-tree guard loop
spanning-tree portfast trunk
channel-protocol lacp
channel-group 1 mode active

ogra
5,941 Views

Just to add 1 more thing.

I don't the partner VIF interface for failover. If you don't mention that when controller fails the IP failover won't happen. As there is nothing to failover to.

cserpadss
5,941 Views

You're right, I hadn't added that yet into the rc file. Below is what the new configuration should look like:

ifgrp create lacp vif1 -b ip e0a e0b

vlan create vif1 200 400

ifconfig vif1-200 10.1.200.26 netmask 255.255.255.0 mtusize 1500 partner vif1-200 mediatype auto flowcontrol full up

ifconfig vif1-200 alias 10.1.200.226 netmask 255.255.255.0

ifconfig vif1-400 10.1.400.26 netmask 255.255.255.0 mtusize 1500 partner vif1-400 mediatype auto flowcontrol full up

ifgrp create lacp vif1 -b ip e0c e0d

vlan create vif1 300 500

ifconfig vif1-300 10.1.300.26 netmask 255.255.255.0 mtusize 1500 partner vif1-300 mediatype auto flowcontrol full up

ifconfig vif1-300 alias 10.1.300.226 netmask 255.255.255.0

ifconfig vif1-500 10.1.500.26 netmask 255.255.255.0 mtusize 1500 partner vif1-500 mediatype auto trusted wins  flowcontrol full up

route add default 10.1.500.1 1

routed on

options dns.domainname domain.com

options dns.enable on

options nis.enable off

savecore

bbjholcomb
5,941 Views

Did you mean to define two igrp's with vif1?

ifgrp create lacp vif1 -b ip e0a e0b

ifgrp create lacp vif1 -b ip e0c e0d

Best practice is to use A and C ports in one vif and B and D in another. The A&B ports share a ASIC chip, the same is true for the C&D ports..

cserpadss
5,941 Views

No that was a typo, it should have been vif2 and that's good to know about the port chips!

Revised config:

ifgrp create lacp vif1 -b ip e0a e0c

vlan create vif1 200 400

ifconfig vif1-200 10.1.200.26 netmask 255.255.255.0 mtusize 1500 partner vif1-200 mediatype auto flowcontrol full up

ifconfig vif1-200 alias 10.1.200.226 netmask 255.255.255.0

ifconfig vif1-400 10.1.400.26 netmask 255.255.255.0 mtusize 1500 partner vif1-400 mediatype auto flowcontrol full up

ifgrp create lacp vif2 -b ip e0b e0d

vlan create vif2 300 500

ifconfig vif2-300 10.1.300.26 netmask 255.255.255.0 mtusize 1500 partner vif2-300 mediatype auto flowcontrol full up

ifconfig vif2-300 alias 10.1.300.226 netmask 255.255.255.0

ifconfig vif2-500 10.1.500.26 netmask 255.255.255.0 mtusize 1500 partner vif2-500 mediatype auto trusted wins  flowcontrol full up

route add default 10.1.500.1 1

routed on

options dns.domainname domain.com

options dns.enable on

options nis.enable off

savecore

ogra
5,941 Views

Hi,

Just curious to check back.

Did it work ?

Public