{{:Design Warning}}
In a hierarchical cluster where many service nodes are used to manage the compute nodes, sometimes a service node may be out of order or may need to be shutdown for maintenance. Sometimes, the admin may decide to move some nodes from one service nodes to another. In order not to make minimum impact to the compute nodes, it is needed to smoothly move the responsibility of the source service node, say sn1, to the destination service sn2. This design assumes that
A utility will be developed for both AIX and Linux to do the take over.
In this design, the service node pool concept will be explored. To define a service node pool for a node, noderes.servicenode will be a comma separated list of service node and noderes.xcatmaster is usually left to blank. However, this design will add the support for noderes.xcatmaster not being blank. It can be the host name of the adapter of a service node that faces the compute nodes. In this case, the first service node in the list specified in the noderes.servicenode must point to THE SAME SERVICE NODE defined in noderes.xcatmaster. Here is how it works:
The MASTER will be used by the postscripts to setup the server for some services, for example, syslog server. In fact the current code already works this way. We need to go through the code to make fixes in the places that assume the noderes.xcatmaster is blank for service node pool. The service node take over only works when
A command called snmove will be implemented. It'll take two service node names as input, transfer the responsibilities from the source service node to the destination service node.
**snmove -v|-h**
**snmove noderange -d sn2 -D sn2n [-i]**
Move management responsibilities for the given nodes to sn2.
**snmove -s sn1 [-S sn1n] -d sn2 -D sn2n [-i]**
Move management responsibilities for all the nodes managed by sn1 to sn2.
sn1 is the hostname of the source service node adapter facing the mn.
sn1n is the hostname of the source service node adapter facing the nodes.
sn2 is the hostname of the destination service node adapter facing the mn.
sn2n is the hostname of the destination service node adapter facing the nodes.
-i: No action will be done on the nodes.
If -i is not specified, the syslog and setup ntp postscritps will be rerun on the nodes to switch the syslog and NTP server.
When the snmove is invoked, it must be invoked on the mn. It will perform the following functions:
For Linux:
For AIX:
TBD.
In system p, we can ask to have a direct bootp or broadcast bootp during node deployment. A flag (-d) will be added in rnetboot command to indicate a direct bootp is requested. If -d is set, the noderes.xcatmaster ,which default to site.master if blank, will be used as the bootp server for the nodes to be deployed.
Wiki: Enhancement_on_makeroutes_and_snmove_commands
Wiki: XCAT_2_Mini_Designs_for_New_Features