cancel
Showing results for 
Search instead for 
Did you mean: 

How Do I Move HA groups to a new cluster?

k_lewis1
Level 2

Hi - I have an existing cluster on hardware that is being decommissioned.  We've built a new cluster independent of the old one (unique cluster number, main.cf, heartbeat network, fencing luns, etc)  and zoned the disks to both clusters. 

I'd like to know if there is an easy way to move the groups from the old to the new cluster without installing anything new like Global Cluster.

I'm concerned that manually adding the service groups will leave lots of room for error.  Can I dump the config in a way that can then be fed to ha commands on the new cluster?  Might something like that work in this case with a little tweaking of the output file? 

I'd also be okay with a simple cut and paste from the main.cf if it's really that simple.  I'd like to know if I could simply change node names or are there more changes required.

Details:

  • solaris 10 all around
  • vcs ha cfs clusters running software version 5.1mp3
  • 3 nodes in each cluster
  • only filesystems and underlying disk groups are moving, no ip's or other resources

Thanks in advance for any help.  I need to pull this off on Saturday and figured I'd ask for any help I can get.  I'm also asking support via a case we have open just in case.  I'll report my results in the end.

1 ACCEPTED SOLUTION

Accepted Solutions

RiaanBadenhorst
Moderator
Moderator
Partner    VIP    Accredited Certified

Hi,

 

It would really have been easiest to add the new nodes to the cluster, and then remove the old nodes once you've got the application/service groups running on the new nodes.

 

If you prefer to keep your new cluster and you'd like the service group configuration imported from the old cluster you can use the hacf -cftocmd to dump the configuration contained in the main.cf file to a shell script you can execute to rebuild the configuration. You'll need to edit this file and keep the sections relating only to the service groups (there are a lot of lines relating the the agents etc). You'll then also need to edit any line that has a reference to the old system names, and update them with the new. Simply find and replace in vi might do the trick.

 

Having said this you still need to ensure that everything is installed exactly in the same way as it was in the old cluster.

 

I would still go with the method of adding the new nodes to the old cluster which you can easily do by updating your llt configuration (assuming the heartbeats are in the same vlan, or easily configurable). Then jus join the cluster, install your application(s), update the service groups so that the new nodes are in the system list, test failover, and finally remove the old nodes.

 

R

View solution in original post

3 REPLIES 3

Gaurav_S
Moderator
Moderator
   VIP    Certified
well .. first & foremost, I have you have presented the same shared storage to new cluster as well & both the clusters (new & old) can see the same shared storage (same number of disks).. Other then that, I believe, simply dumping the main.cf should be easiest way ... so here is what I would suggest.. -- offline all the service groups from old cluster -- If you are using IOFencing, this should clear all the keys, still have a check on IOFencing keys & make sure you have cleaned all the keys from data disks & coordinator disks (using vxfenclearpre tool) -- shutdown CVM/CFS/ VCS / vxfen / GAB /LLT from old cluster On the new cluster -- Copy the main.cf from old cluster to new cluster -- Edit the main.cf & edit it, replace the hostnames with new ones in all the occurrances in main.cf. This step is important, hostnames appear multiple times in main.cf (systemlist, autostartlist etc).. make sure you replace all occurances... -- copy /etc/llthosts , /etc/llttab , /etc/gabtab , /etc/VRTSvcs/conf/sysname & make the necessary changes, you will need to change llthosts for sure & llttab as well -- I would also recommend to use the types.cf from old node only .... also copy all the additional *.cf files from old cluster.... -- If you have configured any triggers, you will need to copy triggers as well to new cluster.. That is it I hope... Gaurav

RiaanBadenhorst
Moderator
Moderator
Partner    VIP    Accredited Certified

Hi,

 

It would really have been easiest to add the new nodes to the cluster, and then remove the old nodes once you've got the application/service groups running on the new nodes.

 

If you prefer to keep your new cluster and you'd like the service group configuration imported from the old cluster you can use the hacf -cftocmd to dump the configuration contained in the main.cf file to a shell script you can execute to rebuild the configuration. You'll need to edit this file and keep the sections relating only to the service groups (there are a lot of lines relating the the agents etc). You'll then also need to edit any line that has a reference to the old system names, and update them with the new. Simply find and replace in vi might do the trick.

 

Having said this you still need to ensure that everything is installed exactly in the same way as it was in the old cluster.

 

I would still go with the method of adding the new nodes to the old cluster which you can easily do by updating your llt configuration (assuming the heartbeats are in the same vlan, or easily configurable). Then jus join the cluster, install your application(s), update the service groups so that the new nodes are in the system list, test failover, and finally remove the old nodes.

 

R

k_lewis1
Level 2

This is exactly what I was after.  I'll be using the hacf command. 

I can't add the old and new nodes to the same cluster as they can't share a network.  That would have been best.  We have done that in the past with great results.

Thanks!