chcomg Command

Purpose

Changes a previously-defined communication group for a peer domain.

Syntax

To change an attribute of a communication group:

chcomg [ -s sensitivity ] [ -p period ] [ -g grace ] [ -t priority ] [-b] [-r] [ -x b | r | br ] [ -e NIM_path ] [ -m NIM_parameters ] [ -N UseForNodeMembership ] [-h] [-TV] communication_group

To change a reference in a heartbeat interface resource to a different communication group:

chcomg [ -i h:heartbeat_interface1[:node1 ] [ ,heartbeat_interface2[:node2]...] | -S h:"heartbeat_interface_selection_string" ] [ -h ] [ -TV ] communication_group

To change a reference in a network interface resource to a different communication group:

chcomg [-i n:network_interface1[:node1][,network_interface2[:node2]...] │ -S n:"network_interface_selection_string"] [ -6 ] [-h] [-TV] communication_group

Description

The chcomg command changes an existing communication group definition with the name specified by the communication_group parameter for the online peer domain. The communication group is used to define heartbeat rings for use by topology services and to define the tunables for each heartbeat ring. The communication group determines which devices are used for heartbeating in the peer domain.

The chcomg command must be run on a node that is currently online in the peer domain where the communication group is defined. One or more attributes can be changed with one chcomg command, but at least one change is required.

The -e and -m flags are used to set the network interface module (NIM) path and parameters. The NIM path is the path to the NIM that supports the adapter types used in the communication group. The NIM parameters are passed to NIM when it is started.

The chcomg command can also be used to assign a communication group to an interface resource. Use the -i flag to assign the communication group to a specific interface resource name. The interface resource can be limited to one on a particular node. An interface resource can also be specified using the -S flag and a selection string. This is used when specifying the interface resource name is not sufficient. Before a communication group can be removed, any interface resources that refer to it must be reassigned.

More than half of the nodes must be online to change a communication group in the domain.

Flags

-s sensitivity
Specifies the heartbeat sensitivity. This is the number of missed heartbeats that constitute a failure. The sensitivity is an integer greater than or equal to 4.
-p period
Specifies the period, which is the number of seconds between heartbeats. The value of period can be an integer or a floating-point number that is greater than or equal to 1.
-g grace
Specifies the grace period that is used when heartbeats are no longer received. When a heartbeat is missed, an Internet Control Message Protocol (ICMP) echo packet is sent to the failed node. If the echo is returned, the grace period is initiated.

The grace period is specified in seconds and is significant to milliseconds. It can be specified as an integer, a floating-point number, or one of these values:

0
Specifies that the grace period is disabled.
-1 | d
Specifies that the topology services subsystem controls the grace period. This is the default value.
-t priority
Specifies the priority. The priority indicates the importance of this communication group with respect to others. It is used to order the heartbeat rings. The lower the number, the higher the priority. The highest priority is 1.
-b
Specifies that broadcast will be used if the underlying media support it. The -b flag cannot be used when specifying -x b.
-r
Specifies that source routing will be used if the underlying media support it. The -r flag cannot be used when specifying -x r.
-x b | r | br
Excludes control for the heartbeat mechanism. This indicates that one or more controls for heartbeat mechanisms should not be used even if the underlying media support it. The following can be excluded:
b
Specifies that broadcast should not be used even if the underlying media support it.
r
Specifies that source routing should not be used even if the underlying media support it.
Excluding more than one control is specified by listing the feature option letters consecutively (-x br).
-i h | n:network_interface1[:node1] [,network_interface2[:node2]...
Assigns this communication group to the network interface resource defined by the network interface resource name and optionally the node name where it can be found. Specify -i h for heartbeat interface resources or -i n for network interface resources. By default, the -i n flag adds network interface resources that have IPv4 addresses to communication_group. If the -6 flag is specified, the -i n flag adds network interface resources that have IPv6 addresses to communication_group.

If -i is specified, -S cannot be specified.

-S h | n: "network_interface_selection_string"
Assigns this communication group to the interface specified by the network interface selection string. Specify -S h for heartbeat interfaces or -S n for network interfaces. By default, the -S n flag adds network interface resources that have IPv4 addresses to communication_group. If the -6 flag is specified, the -S n flag adds network interface resources that have IPv6 addresses to communication_group.

If -S is specified, -i cannot be specified.

-e NIM_path
Specifies the network interface module (NIM) path name. This character string specifies the path name to the NIM that supports the adapter types in the communication group.
-m NIM_parameters
Specifies the NIM start parameters. This is a character string that is passed to the NIM when starting it.
-N UseForNodeMembership
Specifies whether group services use the communication group in calculating node membership. Sets the UseForNodeMembership persistent resource attribute for the communication group resource. Valid values are:
0
Indicates that, regardless of the results of liveness checks run on NetworkInterface resources that are members of this communication group, group services do not use those results in calculating whether the node owning the interfaces is online.
1
Indicates that group services use the results of liveness checks run on the NetworkInterface resources in calculating the online state of their owning nodes.
-6
Specifies that IPv6 addresses represented as resources on each interface have their communication group changed to the one specified. IPv4 addresses represented as resources on the interfaces are unaffected.

By default (without the -6 flag specified), the inverse is true. Only IPv4 addresses represented as resources on the interface have their communication group changed.

-h
Writes the command's usage statement to standard output.
-T
Writes the command's trace messages to standard error. For your software service organization's use only.
-V
Writes the command's verbose messages to standard output.

Parameters

communication_group
Specifies the name of an existing communication group to be changed in the peer domain.

Security

The user of the chcomg command needs write permission for the IBM.CommunicationGroup resource class. Write permission for the IBM.NetworkInterface resource class is required to set the communication group for a network interface resource. By default, root on any node in the peer domain has read and write access to these resource classes through the configuration resource manager.

Exit Status

0
The command ran successfully.
1
An error occurred with RMC.
2
An error occurred with a command-line interface script.
3
An incorrect flag was entered on the command line.
4
An incorrect parameter was entered on the command line.
5
An error occurred that was based on incorrect command-line input.

Environment Variables

CT_CONTACT
Determines the system where the session with the resource monitoring and control (RMC) daemon occurs. When CT_CONTACT is set to a host name or IP address, the command contacts the RMC daemon on the specified host. If CT_CONTACT is not set, the command contacts the RMC daemon on the local system where the command is being run. The target of the RMC daemon session and the management scope determine the resource classes or resources that are processed.
CT_IP_AUTHENT
When the CT_IP_AUTHENT environment variable exists, the RMC daemon uses IP-based network authentication to contact the RMC daemon on the system that is specified by the IP address to which the CT_CONTACT environment variable is set. CT_IP_AUTHENT only has meaning if CT_CONTACT is set to an IP address; it does not rely on the domain name system (DNS) service.

Restrictions

This command must be run on a node that is defined and online to the peer domain where the communication group is to be changed.

Implementation Specifics

This command is part of the Reliable Scalable Cluster Technology (RSCT) fileset for AIX®.

Standard Input

When the -f "-" or -F "-" flag is specified, this command reads one or more node names from standard input.

Standard Output

When the -h flag is specified, this command's usage statement is written to standard output. All verbose messages are written to standard output.

Standard Error

All trace messages are written to standard error.

Examples

In these examples, node nodeA is defined and online to peer domain ApplDomain.
  1. To change the communication group ComGrp1 for ApplDomain to a sensitivity of 4 and period of 3, run this command on nodeA:
    chcomg -s 4 -p 3 ComGrp1
  2. To change the communication group ComGrp1 for ApplDomain to use broadcast, run this command on nodeA:
    chcomg -b ComGrp1
  3. To change the communication group ComGrp1 for ApplDomain to no longer use source routing, run this command on nodeA:
    chcomg -x r ComGrp1
  4. To change the communication group ComGrp1 for ApplDomain, to use a NIM path of /opt/rsct/bin/hats_nim, and to use NIM parameters -l 5 to set the logging level, run this command on nodeA:
    chcomg -e /opt/rsct/bin/hats_nim -m "-l 5" ComGrp1 
  5. To assign the communication group ComGrp1 for ApplDomain to the heartbeat interface resource named hbi0 on nodeC, run this command on nodeA:
    chcomg -i h:hbi0:nodeC ComGrp1
  6. To assign the communication group ComGrp1 for ApplDomain to the heartbeat interface resource named eth0 on nodeB, run this command on nodeA:
    chcomg -i n:eth0:nodeC ComGrp1
  7. To assign the communication group ComGrp1 for ApplDomain to the heartbeat interface resource that uses the subnet 9.345.67.812, run this command on nodeA:
    chcomg -S h:"Subnet == '9.345.67.812'" ComGrp1
  8. To assign the communication group ComGrp1 for ApplDomain to the network interface resource that uses the subnet 9.123.45.678, run this command on nodeA:
    chcomg -S n:"Subnet == '9.123.45.678'" ComGrp1
  9. To change the communication group ComGrp1 for ApplDomain to a period of 500 milliseconds, run this command on nodeA:
    chcomg -p 0.5 ComGrp1

Location

/opt/rsct/bin/chcomg