gabconfig - Group Membership and Atomic Broadcast (GAB) configuration utility
/sbin/gabconfig [-abBcCejJklRsuUvWx] [-f iofence][-n count ][-t stable ][-Q type:value][-V version][-S param:value]
The gabconfig utility sets up and maintains the configuration of the GAB driver. The GAB driver is dependent on the Low Latency Transport (LLT) protocol, which must be configured prior to running gabconfig.
GAB inlcudes the following types of membership:
-a Display GAB driver port memberships.If -C is also specified then, for kernel clients, also list the names of the corrpesponding clients, if registered.
o A regular membership includes systems that communicate with each other across more than one network channel. o A jeopardy membership includes systems that have only one private communication link. o A visible membership includes systems that have GAB running but the GAB client is no longer registered with GAB. -b Enable system halt when the process fails to heartbeat. By default, if a process fails to heartbeat in a given interval, GAB makes five attempts to kill the process. With this option set, GAB panics the system without making any attempts to kill the process. This option can be turned off using the -B option. -B Disable system halt when the process fails to heartbeat. This option will turn off the functionality enabled by the -b option. -e Print out kernel tunables set for GAB. If the value of the tunables is changed, the changed value will get into effect on module reload. -c Configure the driver for use. Configuring the GAB driver enables client registrations and the joining of an already seeded group. -C List the names of GAB (kernel) clients that have registered their names with GAB. Along with -a, this lists the ports along with their clients, if a name is registered. -j Enable halt on rejoin. A network failure may cause systems to form independant clusters, or partitions. When the connections are restored, systems will attempt to rejoin into one cluster. By default, GAB kills processes associated with ports on rejoining systems. This option directs GAB to halt the system. -J Disable halt on rejoin. This option will turn off the functionality enabled by the -j option. -k Repeat attempts to kill a process that does not die. By default, after five attempts to kill a process, GAB halts the system. This option directs GAB to close the client port and repeatedly and silently attempt to kill a process without halting the system. -l Display the GAB driver configuration. -p Enable halt system on process death. If had and hashadow are killed using kill -9, the system can potentially lose high availability. If this option is enabled, then the GAB will PANIC the system on detecting the death of the client process. -P Disable halt system on process death. This is the default behavior. -Q Specify send and recv queue limits for GAB. -s Single network. This flag enables network partition arbitration and should be used only to test configurations. It is required for operating GAB over one network connection. -S param:value Change the value of the gab tunables. Valid param fields are:
isolate_time:Specify a timeout (in milliseconds) for clients to respond to SIGKILL signal. When gab clients receive SIGKILL signal they must unregister from the GAB driver within isolate_time milliseconds to avoid halting the system. The default value is 120000 ms or 120 seconds.
kill_ntries: Specify the maximum no of SIGABRT signals sent to the client when client stops sending heartbeats to GAB driver. The default value is 5.
-u Unconfigure the GAB driver. Close the seed control port (port a) if all client ports are closed. -U Unconfigure the GAB driver and reinitialize all configuration states. -v Display GAB version information like the product version, build time stamp, interface version, minimum, maximum, and on-the-wire protocol versions. -W Display the supported range of the GAB protocol versions and the current version. -x Seed control port. This option affords protection from pre-existing network partitions. The control port (port a) propagates the seed to all configured systems. GAB must be seeded to enable the delivery of membership on client ports. -R Start the rolling upgrade process. If cluster is running at the GAB protocol version lower than the version which all the cluster nodes can understand, this option will start the rolling upgrade process. Once rolling upgrade process is finished, GAB on all the nodes will start talking in the maximum supported version. The rolling upgrade process may fail if cluster membership changes during the process of rolling upgrade. This option must be used only on the lowest nodeid in the cluster. -V protocol_version Specify the GAB protocol version. GAB can be configured to operate at any version within the version range returned by the -v option. -f iofence_timeout Specify a timeout (in milliseconds) for clients to respond to an IOFENCE message before the system halts. When clients receive an IOFENCE message, they must unregister from the GAB driver within iofence_timeout milliseconds to avoid halting the system. The default is 15000ms or 15 seconds. -n system_count Count of systems in the cluster. A non-zero system count auto-seeds the cluster when all systems are present. The default is zero, for no auto-seeding. -t stable_timeout Specifies the time GAB waits to reconfigure membership after the last report from LLT of a change in the state of local node connections for a given port. Any change in the state of connections will restart GAB waiting period. stable_timeout applies during membership transitions. The default value for stable_timeout is five seconds. Note that message latency for connection state messages, typically less than one second, should be taken into consideration when calculating stable_timeout value.
When LLT and GAB are running under a cluster manager other than VCS, configure LLT and GAB as per the cluster managers supplementary documentation on LLT and GAB.
-k, -b, -B, -f, -j, -J, -p, -P options are applicable only in VCS environment.