I am about to implement an iSCSI solution on our network. The thing that is bothering me though is that we are only using 1 switch from the SAN to node connections. Since each node has 2 NICs, is anyone able to give me some tips on how to set up a second switch and use the second NIC in such a way that if the first switch were to die, then the second switch would take over?

Maybe in any case, even if there was a failover solution, would data loss still occur due to the "switch over" time required?

O/S is Centos 5.5

  • Question is lacking detail, for one the server operating system will effect answers regarding the 2nd NIC configuration, can you please provide this information?.
    – Oneiroi
    Apr 25 '11 at 20:00

set up a second switch and use the second NIC in such a way that if the first switch were to die, then the second switch would take over

Simply. You do not.

You keep both lines separate. One dies, who ares.

The trick is to use MPIO (Multi Path IO) which is part of the ISCSI implementation / Standard. Your server and the SAN agree to use two paths for every LUN. Then the server can, when one path dies, just not use that one.

Also does load balancing while both paths work without funny playing around with bonding etc.

  • Thanks for this. Is there any documentation on how to get this going with a CentOS 5.5 target and initiator? I've tried Google, however I'm lost with all the different iSCSI implementations..
    – jtnire
    Apr 25 '11 at 20:13
  • No, sorry. I dont use Linux.
    – TomTom
    Apr 25 '11 at 20:14
  • I'm accepting this answer as it gave me some very helpful pointers on what to search for on Google. I found this guide which at least helps me with the initiator end of the puzzle: how2centos.com/…
    – jtnire
    Apr 25 '11 at 20:25
  • Great ;) The really good news is that MPIO makes a LOT of stuff a LOT easier, like "real" redundancy with syncing backend SANS ;)
    – TomTom
    Apr 25 '11 at 20:27
  • I think this is what you are looking for. docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/… Apr 25 '11 at 21:22

Also, it's typically preferable to keep iSCSI traffic separate from the rest of your network traffic; ideally you use separate NICs and switches from your regular network. If you have two single port NICs in the machines, you may want to think about adding another NIC, so that you can have >=2 separate paths for iSCSI, plus a port or two for regular network traffic.

Before you go down the rabbit's hole of redundant iSCSI connections, you should stop to think about the rest of your architecture. Yea it's great to have multi-path iSCSI, but if you have only one power circuit, and it goes down, well that extra iSCSI connection isn't doing much for you. Or if you have only one SAN, same problem.

TomTom's answer is spot on --I'd vote if I could, but I'm not registered.


Yes you should have a second network switch, with the switches cross connected to either other. Each NIC on your client machine should have it's own IP address.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.