Index Index for
Section 8
Index Alphabetical
listing for C
Bottom of page Bottom of
page

cluamgr(8)

NAME

cluamgr - Specify and manage cluster aliases

SYNOPSIS

/usr/sbin/cluamgr -a alias=alias,option[=value][,option]... /usr/sbin/cluamgr {-f | -F file} /usr/sbin/cluamgr -h /usr/sbin/cluamgr -r option[,option]... /usr/sbin/cluamgr -s [alias | all ]

OPTIONS

Specify only one of the primary flags (-a, -f, -F, -h, -r, -s) each time you run cluamgr. You cannot combine these flags. -a alias=alias,option[=value],... The -a flag precedes a list of comma-separated attributes that you use to specify, join, modify, and leave aliases. (Attributes are separated only by commas; do not use spaces to separate attributes within a list.) You must specify a cluster alias on each cluster member that you want to join that alias. For example, for three cluster members to belong to an alias, you must run the cluamgr command on each member. Alias attribute options are member-specific. You must run the cluamgr command on the cluster member whose alias attributes you want to modify. The following are valid options for the -a flag: alias=alias The name of a cluster alias, either in dot notation (n.n.n.n), or as a hostname, to which the other specified option[=value] attributes apply. When using a hostname, make sure that there is an entry associating the hostname with an IP address in /etc/hosts before running cluamgr. If alias=DEFAULTALIAS, the alias in question is the default cluster alias: the only alias whose hostname is the name of the cluster. (The default cluster alias is specified during cluster installation. There is only one default cluster alias per cluster, and all cluster members are automatically members of this alias.) The following command line specifies, but does not join an alias. This means that the cluster member can route for the alias, but will not be the end recipient of any packets addressed to that alias: # cluamgr -a alias=testalias join This cluster member joins the specified alias. In order to join an alias, you must specify it. For example, to join an alias named testalias: # cluamgr -a alias=testalias,join leave This cluster member leaves the specified alias. This is the opposite of joining an alias. If the member is an alias router, it will not receive any packets as a final destination, but it will still forward packets to current members of the alias (if this is the only member available, it will still accept packets even when selw=0). If this member runs gated under aliasd control, setting rpri=0 and restarting alias routing (cluamgr -r start) will remove routing entries for this member from its /etc/gated.conf.membern file. Note that leaving a cluster alias does not delete that alias from the system. mask=n.n.n.n Optional subnet mask used when advertising net routes for virtual subnets. When a cluster alias IP address resides in a virtual subnet, the cluster alias daemon advertises both a host route to the alias address and, if virtual=t, a net route to the virtual subnet containing the alias address. If a subnet mask is not specified, the alias daemon uses the network mask of the first interface through which the virtual subnet will be advertised. Therefore, if all the network interfaces on the system use the same network mask, and if you want the virtual subnet to use this mask, you do not have to specify a mask=n.n.n.n flag when defining an alias address in a virtual subnet. There are two reasons for specifying a subnet mask: · The network interfaces on the system do not use the same mask. · The network interfaces on the system use the same mask, but you want to use a different mask for the virtual subnet. rpri=n An integer value from 0 to 100 inclusive, representing this alias member's router priority (rpri). When a cluster alias IP address is configured in a common subnet, router priorities from 1 to 100 establish a hierarchy within the members of that alias. The member with the highest rpri value for a given alias will act as proxy ARP master for that alias and will respond to ARP requests for the alias address. Only one member at a time can act as an alias's proxy ARP master. If more than one member shares the highest rpri value, the cluster alias software selects one of these members to act as proxy ARP master. Should the member, or members, with the highest rpri value become unavailable, the member with the next highest rpri value becomes the proxy ARP master for the alias. When a cluster has more than one cluster alias, you can use router priority to spread the routing overhead for aliases among cluster members. This option sets the router priority only for the current member. It does not affect the router priority for other cluster members of the same alias. The rpri option does not control which members will broadcast host or network routes for aliases. The rpri option is irrelevant for an alias whose address is in a virtual subnet. The default router priority is 1. A value of 0 is a special case. If you set rpri=0 for an alias on a member system, that system will not route cluster alias traffic into the cluster unless two conditions are met: all active members of that alias have rpri=0, and that system is elected to provide the proxy ARP response for the alias. A value of 100 is also a special case. For rpri values of 1-99, aliasd advertises a host route cost metric of 14. For an rpri value of 100, aliasd advertises a host route cost metric of 10. When aliasd advertises a host route with a cost metric of 10, RIP clients will replace an existing host route to an alias (with a cost metric of 14) with the new lower-cost route. selp=n An integer value from 1 to 100 inclusive, representing this alias member's selection priority. The selection priority determines the order in which members of an alias receive new connection requests. The selection priority establishes a hierarchy within the members of an alias. Connection requests are distributed among those members sharing the highest selection priority value. If an alias has three members, two with selp=10 and one with selp=5, no connection requests or messages are given to the selp=5 member as long as either of the selp=10 members is available. You can use selection priority values to set up a failover order for members of a particular cluster alias. This option sets the selection priority only for the current member. It does not affect the selection priority for other cluster members of the same alias. The default selection priority is 1. selw=n An integer value from 0 to 100 inclusive, representing this alias member's selection weight. The selection weight indicates the number of connections (on average) this member is given before connections are given to the next alias member with the same selp value. (The selp value determines the order in which members are eligible to receive requests or messages; the selw value determines how many requests or messages a member gets once it is eligible.) Selection weight applies only to applications that are registered as multi-instance applications, either through an entry in /etc/clua_services or as the result of a call to clua_registerservice(). As an example, assume that there are two members in an alias with the same selp value: the first has selw=3 and the second has selw=2. The first will receive three connections, then the second will receive two connections, then the first will receive three connections, and so on. If all alias members have the same selection weight, incoming connections to this alias are distributed equally among all alias members. If selw=0, no incoming connections are given to this member. This is useful when the member will handle only outbound connections. For example, in a mixed cluster, a system without the compute power of the other cluster members might have selw=0 for the default cluster alias; the system is not burdened with incoming requests but mail sent from it is labeled as coming from the cluster. Another reason for setting selw=0 is when an alias member is doing compute-intensive work and you do not want it to spend time handling connection requests. This option sets the selection weight only for the current member. It does not affect the selection weight for other cluster members of the same alias. The default selection weight is 1. virtual[={t|f}] This option enables or disables advertising a network route for the virtual subnet in which the alias address resides. If virtual or virtual=t, this cluster member will advertise a network route to the virtual subnet that contains the alias's IP address. The following two commands both set the virtual flag for an alias named virtualalias: # cluamgr -a alias=virtualalias,join,virtual=t # cluamgr -a alias=virtualalias,join,virtual The virtual option indicates that this cluster member should use gated to advertise a network route for this alias's virtual subnet. Do not enable virtual for an alias on a common subnet. Doing so can result in the cluster acting as a conduit for traffic between subnets, instead of functioning correctly as a router. If you do not want a cluster member to act as a router for a virtual subnet, it is perfectly legal to not specify virtual for an alias that is in a virtual subnet. For example, to join but not route for an alias in a virtual subnet: # cluamgr -a alias=virtualalias,join Once you specify the virtual=t option, you do not have to specify it again when you modify another option that is associated with the alias. For example, you can modify an alias's selp, selw, or rpri values without affecting that alias's virtual setting. The virtual=f option disables network route advertising for the virtual subnet that contains this alias IP address. -f Load (or reload) the /etc/clua_services configuration file on this member. If you modify the clua_services file, run cluamgr -f on each cluster member in order for the modifications to take effect the next time a service starts. Note that reloading the clua_services file does not affect currently running services. For example, the telnet service is started by inetd from /etc/inetd.conf. If you modified the service attributes for telnet in /etc/clua_services, you would have to run cluamgr -f and then stop and restart inetd in order for the changes to take effect. Otherwise the changes will take effect at the next reboot. -F [file] Load (or reload) the specified configuration file on this member. The F flag gives you the option of loading a configuration file whose name is not /etc/clua_services. -h Display help text. -r option[,option]... The -r flag precedes a list of comma-separated options that you can use to start and stop routing for cluster aliases, or to modify the behavior of the alias daemon, aliasd. The options do not start or kill the alias daemon. Note Under normal circumstances you should not use these cluamgr -r options to modify the daemon's behavior. The daemon is designed to operate correctly from its startup file, /sbin/init.d/clu_alias. The daemon gets information from the cluster alias subsystem and automatically updates routes as needed. These cluamgr options are provided in case you need to modify daemon behavior; for example, to help diagnose a problem with alias routing on a cluster member. Each pair of -r options acts like toggle switch to turn a specific aliasd behavior on or off; for example: start, stop; gated, nogated; enable=interface, disable=interface; resvok, noresv; and vmac, novmac. Once an option is specified, it is in effect for the life of the daemon or until its opposite is specified. (At boot time, the internal defaults for the daemon correspond to the following cluamgr -r options: start, gated, enable, noresv, and novmac.) Options are passed to the alias daemon in the order they are passed to cluamgr. You can specify behaviors before starting routing so they are in effect from the time routing starts. The following are valid options for the -r flag: [start | stop] If stop is specified, stop alias routing operations on this cluster member. If gated is the routing daemon on this member, the alias daemon stops gated, and then restarts gated with /etc/gated.conf as its configuration file. If this member is also the proxy ARP router for an alias (this member has the highest rpri value in the cluster for the alias), the cluster member with the next highest rpri value becomes the proxy ARP router for the alias. You cannot combine the stop option with any other -r options. For example, cluamgr -r stop,start will return an error message. When start is specified, if routing was stopped by a cluamgr -r stop command, resume routing. If routing is already started, check with the kernel and update routing information. (If you specify additional aliases after starting routing, you must reissue the cluamgr -r start command in order to route for these new aliases.) Once routing is started, you do not have to specify the start option again in order to specify additional -r options. For example: # cluamgr -r start # cluamgr -r resvok In the previous example, routing is started, followed by the resvok option. In this case, until the aliasd daemon receives the resvok option, it automatically uses the default for that behavior, noresvok. If you want a behavior in effect from the moment routing is started with a cluamgr -r start command, do one of the following: Issue the other routing option first. For example: # cluamgr -r resvok # cluamgr -r start Put the option before the start option in a list of routing options (options are processed in order). For example: # cluamgr -r resvok,start Specify the option as a value for the CLUAMGR_ROUTE_ARGS configuration variable either in a cluster member's /etc/rc.config file, or in the shared /etc/rc.config.common file (if all cluster members should use the option). For example, to set CLUAMGR_ROUTE_ARGS to resvok in /etc/rc.config.common: # rcmgr -c set CLUAMGR_ROUTE_ARGS resvok This is the preferred approach for options that you want to invoke each time a system boots. [gated | nogated] These options affect how the gated daemon is used with regard to cluster aliases. If gated is specified, the aliasd daemon uses gated to advertise host routes for all alias addresses, and network routes for virtual subnets. The aliasd daemon creates a /etc/gated.conf.membern file for this cluster member, stops the gated daemon, and restarts gated using /etc/gated.conf.membern as gated's configuration file. This is the default behavior when you run cluamgr -r start (and at boot time). The only time you would explicitly specify gated is if you had previously specified nogated and now want to return aliasd to its default behavior. If nogated is specified, the aliasd daemon modifies the member's /etc/gated.conf.membern file to add route entries as though the gated option were specified, but it does not restart the gated daemon using /etc/gated.conf.membern. This lets an experienced network administrator rename and customize the configuration file (for example, to use OSPF instead of RIP, or to use static routing), and restart the gated daemon manually. Note that in both cases (gated and nogated), aliasd does not modify a member's /etc/gated.conf file. The difference between the gated and nogated options is whether aliasd stops the gated daemon and restarts it using /etc/gated.conf.membern as gated's configuration file. The default behavior at boot time is for aliasd to stop gated and restart it using /etc/gated.conf.membern. The following information is supplied only for experienced network administrators. The aliasd daemon supports only the Routing Information Protocol (RIP). If you have a customized routing environment, need use a routing protocol such as OSPF with the cluster alias, or use static routing, you can start alias routing on a cluster member with the nogated option. Then use the version of /etc/gated.conf.membern created by cluamgr -r nogated,start as the basis for edits to a customized gated configuration file. You are responsible for correctly merging the cluster alias information from the /etc/gated.conf.membern file into your customized configuration file. Set the CLUAMGR_ROUTE_ARGS variable to nogated in /etc/rc.config.common: # rcmgr -c set CLUAMGR_ROUTE_ARGS nogated This ensures that aliasd will not point gated at /etc/gated.conf.membern when a cluster member reboots. (You can override this clusterwide nogated setting for an individual cluster member by setting CLUAMGR_ROUTE_ARGS to gated in that member's rc.config file.) When the nogated option is in effect, aliasd does not advertise routes to cluster aliases on virtual subnets. These aliases will not be reachable unless configured as static routes on clients. [enable=interface,...] | [disable=interface,...] By default, alias IP addresses are published over all broadcast capable network interfaces, with the exception of the cluster interconnect and the loopback interfaces. The default behavior is to enable the advertising of alias addresses through these broadcast capable interfaces. If the disable option is specified, aliases are not advertised through the specified interface or interfaces. Use the disable option to explicitly disable the advertising of alias addresses on a particular interface. The following command disables the advertising of cluster aliases on two interfaces: # cluamgr -r disable=tu0,disable=tu1 Issuing the enable option in later cluamgr commands flushes the list of restricted interfaces and allows the advertising of alias addresses through these interfaces. You cannot combine the enable and disable options. For example, cluamgr -r enable=tu0,disable=tu1 will return an error message. [resvok | noresv] By default, aliasd operates as though the noresv (no reserved) option is specified. The daemon does not advertise alias IP addresses that are configured in any of the reserved private address spaces defined in RFC 1918 (such as 10.0.0.0, 172.16.0.0, and 198.168.0.0). If the resvok (reserved OK) option is specified, aliasd advertises alias IP addresses that reside in reserved subnets, and also advertises alias IP addresses on network interfaces configured within these reserved subnets. This is useful when a company uses a reserved subnet for something other than cluster interconnect addresses; for example, the entire company intranet resides in a reserved subnet. In this case, unless resvok is specified, aliasd will not advertise net or host routes to alias addresses. [vmac | novmac] By default, aliasd operates as though the novmac (no virtual media access control (vMAC)) addressing option is specified. If vMAC support is enabled, when a cluster member becomes the proxy ARP master for a cluster alias, it creates a virtual MAC address for use with that cluster alias. A virtual MAC address consists of a prefix (the default is AA:01) followed by the IP address of the alias in hexadecimal format. For example, the default vMAC address for an alias whose IP address is 16.140.112.209 is AA:01:10:8C:70:D1: Default vMAC prefix: AA:01 Cluster Alias IP Address: 16.140.112.209 IP address in hex. format: 10.8C.70:D1 vMAC for this alias: AA:01:10:8C:70:D1 When another cluster member becomes the proxy ARP master for this alias, the virtual MAC address moves with the alias so that a consistent MAC address is presented within the common subnet for each cluster alias. When configuring vMAC support, configure all cluster members identically. For this reason, set vMAC configuration variables in /etc/rc.config.common. To enable vMAC support, run the following rcmgr command on any cluster member to put an entry in /etc/rc.config.common: # rcmgr -c set VMAC_ENABLED yes This ensures that vMAC support is automatically enabled at boot time. However, because setting this variable only affects a member when it reboots, the currently running cluster does not have vMAC support enabled. To manually enable vMAC support for the currently running cluster, enter the following command on all cluster members: # cluamgr -r vmac You do not have to add the cluamgr -r vmac command to each cluster member's /etc/clu_alias.config file. Running the cluamgr -r vmac command manually on each member enables vMAC support now; setting VMAC_ENABLED to yes in the shared /etc/rc.config.common file automatically enables vMAC support at boot time. To disable vMAC support once it is enabled, run the following rcmgr command on any cluster member to put an entry in /etc/rc.config.common: # rcmgr -c set VMAC_ENABLED no Then run the following cluamgr command on all cluster members: # cluamgr -r novmac To change the default AA:01 vMAC prefix, run the following rcmgr command to put an entry in /etc/rc.config.common: # rcmgr -c set VMAC_PREFACE xx:xx Where xx:xx is the new prefix. -s [alias | all] Print status of alias to standard output. To print the status of the default cluster alias, you can specify the alias by its host name or use the keyword DEFAULTALIAS. For example: # cluamgr -s DEFAULTALIAS The command cluamgr -s all prints status for all aliases that have active members. If no members have joined an alias, no status is printed for that alias.

DESCRIPTION

The cluamgr utility configures and initializes the in-memory cluster alias database for a cluster member. Each cluster member that intends to participate in an alias must run the cluamgr utility to specify and join that alias. Cluster alias definitions are volatile. Aliases must be configured using cluamgr each time a system boots. At boot time, each member's /etc/clu_alias.config file is called from the /sbin/init/clu_alias script. The /etc/clu_alias.config file is a CDSL that points to a member-specific clu_alias.config file. Each member's clu_alias.config file contains the cluamgr commands that configure aliases, including the default cluster alias, for that member. Although you can manually edit this file, the preferred interface is the through the SysMan Menu. When a cluster member invokes the cluamgr utility, the utility registers its currently enabled port database based on the contents of the /etc/clua_services file. This involves sending a list of all the ports that can receive connections using the alias address to all alias router nodes for the alias. How a member participates in advertising the alias address depends upon whether the address is in a common subnet or a virtual subnet as follows: common subnet To configure alias IP addresses in an existing subnet, use the cluamgr utility with the -a option, specifying the -r option to start and stop routing. Using a common subnet for cluster aliases works well when the cluster is connected to only a single local area network, and that network is managed as a single IP address domain. Cluster alias routing in a common subnet is based on proxy ARP support. The node elected to advertise the alias configures the alias's IP address to be advertised using proxy ARP over a network interface in the same subnet. Other cluster members that join the alias and are configured to be routing members become capable of taking over the proxy ARP function if necessary. The rpri attribute determine the order in which cluster members that have specified an alias can act as the router for that alias. When a designated alias router or network interface fails, other potential routers are notified. They then elect a new router for the alias. virtual subnet A cluster alias resides in a virtual subnet if its address is in a subnet that is not associated with a physical interface. A virtual subnet must not have any real systems in it. Cluster alias routing in a virtual subnet uses host routes. The alias configuration process modifies the gated.conf.membern configuration file to advertise the alias address.

EXAMPLES

In the following examples, remember that cluamgr commands affect only the cluster member on which they are run. For example, setting the selection weight for an alias on this system does not affect the selection weight assigned to the alias by another cluster member. To specify and join alias testalias, setting the selection weight, but taking the default values for selection priority and routing priority: # cluamgr -a alias=testalias,join,selw=4 To change the selection weight for the default cluster alias (without changing any of its other attributes): # cluamgr -a alias=DEFAULTALIAS,selw=2 To specify, but not join, alias virtualalias, whose IP address is in a virtual subnet; explicitly define the subnet mask used when advertising a net route to this virtual subnet: # cluamgr -a alias=virtualalias,virtual,mask=255.255.255.0 To start routing for the previously specified aliases: # cluamgr -r start To specify and join another alias, specifying non-default values for selection weight and selection priority. Set the router priority so this node will be the router for this alias: # cluamgr -a alias=16.140.112.209,join,selw=2,selp=10,rpri=100 To start routing again in order to add alias 16.140.112.209 to the list of aliases for which this node will route. (Note that you do not have to stop and restart routing.) # cluamgr -r start

FILES

/etc/clua_services Static configuration file where services using well-known ports are registered for cluster alias connections. /sbin/init.d/clu_alias Startup script for the default cluster alias. /etc/clu_alias.config Startup commands for cluster aliases.

SEE ALSO

Commands: clua_active(8), rcmgr(8) Daemons: aliasd(8) Functions: clua_error(3), clua_getaliasaddress(3), clua_getaliasinfo(3), clua_getdefaultalias(3), clua_isalias(3), clua_registerservice(3), clusvc_getcommport(3) Files: clua_services(4), clu_alias.config(4), exports.aliases(4) Miscellaneous: sys_attrs_clua(5)

Index Index for
Section 8
Index Alphabetical
listing for C
Top of page Top of
page