The procedure to follow to remove a node from a resource group depends on whether the resource group is a scalable resource group or a failover resource group. For detailed instructions, see the following sections:
To complete the procedure, you must supply the following information.
Node names and node IDs of all of the cluster nodes
# scconf -pv | grep “Node ID” |
Name(s) of the resource group or groups from which you plan to remove the node
# scrgadm -pv | grep “Res Group Nodelist” |
Names of the IP Networking Multipathing groups that are to host the network resources that are used by the resource groups on all of the nodes
# scrgadm -pvv | grep “NetIfList.*value” |
Additionally, be sure to verify that the resource group is not mastered on the node that you are removing. If the resource group is mastered on the node that you are removing, run the scswitch command to switch the resource group offline from that node. The following scswitch command brings the resource group offline from a given node, provided that new-masters does not contain that node.
# scswitch -z -g resource-group -h new-masters |
Specifies the name of the resource group that you are switching offline. This resource group is mastered on the node that you are removing
Specifies the nodes that is now to master the resource group.
For more information, see the scswitch(1M) man page.
If you plan to remove a node from all of the resource groups, and you use a scalable services configuration, first remove the node from the scalable resource groups. Then, remove the node from the failover groups.
A scalable service is configured as two resource groups, as follows.
One resource group is a scalable group that contains the scalable service resource.
One resource group is a failover group that contains the shared address resources that the scalable service resource uses.
Additionally, the RG_dependencies property of the scalable resource group is set to configure the scalable group with a dependency on the failover resource group. For information about this property, see Appendix A, Standard Properties.
For details about scalable service configuration, see Sun Cluster Concepts Guide for Solaris OS.
Removing a node from the scalable resource group causes the scalable service to no longer be brought online on that node. To remove a node from the scalable resource group, perform the following steps.
Remove the node from the list of nodes that can master the scalable resource group (the nodelist resource group property).
# scrgadm -c -g scalable-resource-group -h nodelist |
Changes a resource group
Specifies the name of the resource group from which the node is being removed
Specifies a comma-separated list of the names of the nodes that can master this resource group
(Optional) Remove the node from the failover resource group that contains the shared address resource.
For details, see How to Remove a Node From a Failover Resource Group That Contains Shared Address Resources.
(Optional) Update the Load_balancing_weights property of the scalable resource to remove the weight of the node that you are removing from the resource group.
The scrgadm(1M) man page.
Perform the following steps to remove a node from a failover resource group.
If you plan to remove a node from all of the resource groups, and you use a scalable services configuration, first remove the node from the scalable resource groups. Then use this procedure to remove the node from the failover groups.
If the failover resource group contains shared address resources that scalable services use, see How to Remove a Node From a Failover Resource Group That Contains Shared Address Resources.
Update the node list to include all of the nodes that can now master this resource group.
This step removes the node and overwrites the previous value of the node list. Be sure to include all of the nodes that can master the resource group here.
# scrgadm -c -g failover-resource-group -h nodelist |
Changes a resource group
Specifies the name of the resource group from which the node is being removed
Specifies a comma-separated list of the names of the nodes that can master this resource group
Display the current list of IP Networking Multipathing groups that are configured for each resource in the resource group.
# scrgadm -pvv -g failover-resource-group | grep -i netiflist |
Update netiflist for network resources that the removal of the node affects.
This step overwrites the previous value of netiflist. Be sure to include all of the IP Networking Multipathing groups here.
# scrgadm -c -j network-resource -x netiflist=netiflist |
The output of the preceding command line identifies the nodes by node name. Run the command line scconf -pv | grep “Node ID” to find the node ID.
Changes a network resource.
Specifies the name of the network resource that is hosted on the netiflist entries.
Specifies a comma-separated list that identifies the IP Networking Multipathing groups that are on each node. Each element in netiflist must be in the form of netif@node. netif can be given as an IP Networking Multipathing group name, such as sc_ipmp0. The node can be identified by the node name or node ID, such as sc_ipmp0@1 or sc_ipmp@phys-schost-1.
Sun Cluster does not support the use of the adapter name for netif.
Verify the updated information.
# scrgadm -pvv -g failover-resource-group | grep -i nodelist # scrgadm -pvv -g failover-resource-group | grep -i netiflist |
In a failover resource group that contains shared address resources that scalable services use, a node can appear in the following locations.
The node list of the failover resource group
The auxnodelist of the shared address resource
To remove the node from the node list of the failover resource group, follow the procedure How to Remove a Node From a Failover Resource Group.
To modify the auxnodelist of the shared address resource, you must remove and re-create the shared address resource.
If you remove the node from the failover group's node list, you can continue to use the shared address resource on that node to provide scalable services. To continue to use the shared address resource, you must add the node to the auxnodelist of the shared address resource. To add the node to the auxnodelist, perform the following steps.
You can also use the following procedure to remove the node from the auxnodelist of the shared address resource. To remove the node from the auxnodelist, you must delete and re-create the shared address resource.
Switch the scalable service resource offline.
Remove the shared address resource from the failover resource group.
Create the shared address resource.
Add the node ID or node name of the node that you removed from the failover resource group to the auxnodelist.
# scrgadm -a -S -g failover-resource-group \ -l shared-address -X new-auxnodelist |
The name of the failover resource group that used to contain the shared address resource
The name of the shared address
The new, modified auxnodelist with the desired node added or removed
This example shows how to remove a node (phys-schost-3) from a resource group (resource-group-1) that contains a logical hostname resource (schost-1).
# scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 phys-schost-3 # scrgadm -c -g resource-group-1 -h phys-schost-1,phys-schost-2 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-1) Res property name: NetIfList (resource-group-1:schost-1:NetIfList) Res property class: extension (resource-group-1:schost-1:NetIfList) List of IP Networking Multipathing interfaces on each node (resource-group-1:schost-1:NetIfList) Res property type: stringarray (resource-group-1:schost-1:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@2 sc_ipmp0@3 (sc_ipmp0@3 is the IP Networking Multipathing group to be removed.) # scrgadm -c -j schost-1 -x netiflist=sc_ipmp0@1,sc_ipmp0@2 # scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-1:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@2 |