First of all, yeah I know it's not really MultiSAN but this is how Apple sells it.
So that we are all clear: this is about how you could set up multiple volumes, hosted by different metadata controllers, within one SAN. And how you could mount that on your clients. All done without Xsan Admin. For some it might be pretty straight forward. But when you don't know how to do it reading this might just save your day.
In this example we've got two volumes. Volume PRODUCTIONsan is hosted by metadata controllers 1 and 2, with IP adresses 192.168.0.101 and 192.168.0.102. Volume ARCHIVEsan is hosted by metadata controllers 3 and 4 with IP addresses 192.168.0.103 and 192.168.0.104.
MultiSAN is not a new thing. Back in the day with Xsan 1 it was allready possible except not with the Xsan admin. My collegae Donald Kok wrote this before on Xsantity but here is a recap.
The trick is within your fsnameserver and fsmlist file located at /Library/Filesystems/Xsan/config/ With Xsan 1 your fsmlist should contain this: [Volume Name] [metadatacontroller] [priority]
So like this:
PRODUCTIONsan 192.168.0.101 0
PRODUCTIONsan 192.168.0.102 1
ARCHIVEsan 192.168.0.103 0
ARCHIVEsan 192.168.0.104 1
So within fsmlist you name every volume that is there and who is hosting it. Also you define who is the primary ( 0 ) and who is the secondary ( 1 ).
Within your fsnameserver you tell this again. But now only your metadata controllers. You should do this on the server and the client.
Like : [metadatacontroller] [priority]
So like this:
Within Xsan 2 this has changed. You need to devine in fsmlist only the volumes and priority of the current metadata controller. So every metadata controller will have a different fsmlist.
It should contain this: [MyVolumeName] [dot (myself) ] [priority]
So if I was doing this on the second MDC is would look like this:
PRODUCTIONsan . 1
Just that and only that! Notice the dot. It means this server. You could also fill in the IP address if you want.
Let's do another ond to get the point. Fsmlist on MDC 3 would look like this:
ARCHIVEsan . 0
So basically the answer to the question "what should I do?"
Within the fsnameserver file only devine the metadata controllers. There is no need to devine the priority here anymore! So basically the answer to the question "who are the MDC's?"
So on every client and server it would be like this:
All you need to do know is reload Xsan by doing this as root:
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.xsan.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.xsan.plist
Each metadata controller should now also see the volumes hosted by the other metadata controllers. Also each client should also see and be able to mount all the volumes within your san.
Simple huh?! Indeed but figuring it out yourself could take a while...