Node Creation with Unknown MAC address(es)#
A reset or powercycle of a node triggers a DHCP client request which embeds the node's MAC address. A head node with an interface that is listening on that private cluster network and which recognizes that MAC address will respond with an IP address that is associated with that MAC, unless directed to ignore that node. A ICE ClusterWare™ head node can be so directed to ignore the known-MAC node by using a _no_boot attribute (see _no_boot).
By default, a ClusterWare DHCP server that does not recognize the incoming MAC will ignore the incoming DHCP client request. To override this default, either enable the Accept unknown nodes? switch on the Cluster Settings page or run the following command:
scyld-clusterctl --set-accept-nodes True
Any head node that shares the same database will add that new MAC to the shared ClusterWare database, assign to it the next available node index and associated IP address, and attempt to boot the node.
When all new nodes with previously unknown MAC addresses are merged into the ClusterWare cluster, return to the default functionality by disabling the Accept unknown nodes? switch or by running the following command:
scyld-clusterctl --set-accept-nodes False
If multiple new nodes concurrently initiate their DHCP client requests,
then the likely result is a jumbled assignment of indices and IP addresses.
Cluster administrators often prefer nodes in a rack to have ordered indices and
IP addresses.
This ordered assignment can be accomplished by performing subsequent
carefully crafted scyld-nodectl update
actions. For example:
scyld-nodectl -i n10 update index=100
scyld-nodectl -i n11 update index=101
scyld-nodectl -i n12 update index=102
scyld-nodectl -i n10,n11,n12 reboot # at a minimum, reboot the updated nodes
Note
Desired ordering can more easily be accomplished by performing the initial node resets or powercycling for each individual node in sequence, one at a time, and allowing each node to boot and get added to the database before initiating the next node's DHCP request.