This is a short post about how to configure iSCSI multipathing using Nexenta. I let it is neccessary to document it since the documentation is rather spare about it.
In my lab setup i had a machine with two physically separated interfaces:
- e1000g0: 192.168.1.5/24 and
- e1000g1: 192.168.10.1/24
As you can see both interfaces are on different subnets. Note that it is a very good idea (i´d call it: “required”) to use a separate subnet for each interface. It will save you a lot of trouble and problems!
If you do not comply with this simple rule you will end up having problems with so called Arp Flux (also documented here, here, here and so on) which requires further modifications.
Note: If you modify and existing installation you only need to execute Step #2 and Step #3. Everything else should already be there.
Step #1 : Create an iSCSI target
This step is only required if you do not yet have one. If you already have one – skip this step.
Enter a desired target name into the name field or leave it blank to automatically create one:
The created target looks like this:
Step #2: Create Target Portal Groups
You need to create one Target Portal Group for each interface you want to use for iSCSI. In our case we will create two Portal Groups because we want to use two interfaces:
The result looks like this:
Step #3: Reconfigure iSCSI Target
In the next step we add our created target portal groups to the iSCSI target (created in Step #1):
The result:
Bascially were done here. Step 4 – 8 shows how to create a LUN and map these LUN to target and initiator.
Step #4: Create Target Group
If you do not already have a target group create one and add your iSCSI target. If you already have a target group skip this step.
Step #5: Create a ZVOL
A ZVOL is the LUN which will be visible on the initiator:
Step #6: Create Remote Initiator
To map a LUN (or ZVOL) to the appropriate clients you need to create a Initiator Group. These group consists of remote initiator names. The initiator name can either be found on the client e.g. Linux stores the initiatorname in /etc/iscsi/initiatorname.iscsi) or – if the client is already connected to the target – it will be display in Step 7.
If you want or need to create the remote initator manually you can do this under ‘Remote Initiator’:
Step #7: Create Remote Initiator Group
This step finally creates the remore initiator group and assigns a name to them:
Step #8: Map Target Group, Initiator Group and ZVOL
The last step finally maps the ZVOL (= the LUN to be exported), the initiator group (= the client(s) you want to export the LUn to) and the target group (the protocol you want to use to export the LUN):
Don’t you think is better to create two iscsi initiator, one by card?
Also possible. But where is the advantage of doing this? In the end you´ll achieve the same: a fault-tolerant configuration with increased throughput.
@Ronny Egner
Hello,
thanks for the answer.
I do that because for me iscsi have to be the same as FC, in FC world you have multiple wwn so for me in iscsi each card must have an initiator and i think is must simple to make a schema like this.
But i agree the result is the same at the end.
Thank you for putting together this how-to, I have been struggling to find some solid documentation on how to do this. I am running XenServer hosts and am having some issues getting traffic to flow on my second NIC. XenServer does see both paths, but continues to only use the first path. I suspect my multipath.conf may be missconfigured?
vendor”NEXENTA”
product”COMSTAR”
path_grouping_policy group_by_prio
failbackimmediate
no_path_retry30
rr_min_io128
Below is the output from multipath -ll
3600144f0fdb24d00000050cf70ea0001 dm-1 NEXENTA,NEXENTASTOR
[size=50G][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=1][active]
\_ 32:0:0:0 sdc 8:32 [active][ready]
\_ round-robin 0 [prio=1][enabled]
\_ 31:0:0:0 sdb 8:16 [active][ready]
Why do you think the traffics flows only through one interface?
Hum i didn’t try your configuration but with this i think you see only one path in vmware so you can’t enable multipathing no?
You are right. There is a failure in the article. The target WWNs must be DIFFERENT!
You need to match the “product” field to “NEXENTASTOR” rather than “COMSTAR” you can see it from the multipath -ll
If you are only going to use Nexenta you can also simply set the default {} section of the config
@Ben
Are you creating vlans ?