ctsyschk command

Purpose

The ctsyschk command identifies issues while creating a Reliable Scalable Cluster Technology (RSCT) cluster on a node.

Syntax

ctsyschk [-V] [-U username] [-P password] [-C cluster_type] [-i ip-addr-type] [-p checking_subsys_port] [-m] [-n] [-s session_auth_type] node_name1 [node_name2...]

Description

The ctsyschk command verifies system settings and networking behaviors that might cause problems in various RSCT-based clustering solutions. If you run the ctsyschk command without any options, the usage of the command is displayed as output. Whenever you run the ctsyschk command without specifying any hostname, the command checks the local system settings. If you specify one or more hostnames or IP addresses, the ctsyschk command runs remote shell commands, such as ssh or rsh, to collect from the remote targets. The ctsyschk command uses information about the local nodes, the available interfaces and node ID, and the port number availability on the remote nodes to make a coordinated decision about the creation on an RSCT cluster.

For running remote commands, the ctsyschk command requires the user to set up one of the following:
  • A password-less ssh/rsh
  • A tcl/tk expect on node from where the command is being run. In this case, the user must use the -U option for the username, which is root by default, and the -P option for specifying the password for the remote login to all of the nodes.
    Limitation: All of the nodes must have the same username and password in order for remote login to work.

Flags

-V
Writes the verbose message of the ctsyschk command to the standard output.
-U username
Specifies the username for remote login. The default user is root. When there are multiple nodes as input, a single username must exist on all of the nodes.
-P password
Specifies the password for the remote user. You must supply the password for the username that is specified with the -U option if the password-less remote-login, rsh or ssh, is not set. You must specify the password for the root user when the username is not specified. If there are multiple nodes as input, there must be a single password for remote login on all of the nodes.
-C cluster_type
Specifies the cluster type. The following values are valid:
p (Peer domain)
If the ctsyschk command is run with cluster_type option p, the following items are checked:
  • Existence of IPv4 or IPv6 connectivity between the specified input nodes.
  • Resource Monitoring and Control (RMC), High Availability Group Services (HAGS), or Host Access Transformation Service (HATS) port availability in the input nodes.
  • Whether any firewall is configured for the RMC port among the specified input nodes.
  • The maximum transmission unit (MTU) size compatibility between the nodes.
  • The node ID uniqueness among the input nodes.
m (Management domain)
If the ctsyschk command is run with the cluster_type option m, the following items are checked:
  • The availability of the RMC port by determining whether a firewall is configured for the RMC port between the logical partitions (LPARs) and Hardware Management Console (HMC).
  • The MTU size compatibility between the LPAR and the HMC.
a (Peer Domain and management domain)
If the ctsyschck command is run with the cluster_type option a, the following items are checked:
  • Existence of IPv4/IPv6 connectivity between the specified input nodes.
  • RMC/HAGS/HATS port availability on the specified input nodes.
  • Whether a firewall is configured for the RMC port in the specified input nodes and checks the RMC port availability on the LPAR.
  • Whether a firewall is configured for the RMC port between the LPARs and the HMC.
-p checking_subsys_port
Specifies the subsystem to check the port availability. The following values are valid:
r
RMC port.
s
HATS and HAGS port
a
All ports (RMC, HAGS, and HATS)

The default RMC port is 657. If the ctsyschck command is run with the -r option, the command determines whether the default port is used by any application or any firewall is configured on the RMC port. The default port for topology services is 12347 and default port for group-services is 12348. If the ctsyschck command is run with the s option, the command checks whether these default ports are free for use. If the default port is not free, a warning or error message is displayed.

-i ip_addr_type
Specifies the IP address type. The following values are valid:
4
IPv4 interfaces

If the ctsyschck command is run with the interface value of 4, the command checks for valid IPv4 interfaces and compatible subnets on the input nodes. The subnets that have the same subnet IDs are compatible. If two nodes do not have subnets with common subnet IDs, the ctsyschck command reports the information about the subnets.

Depending on the results of the command, you can modify the possible network configurations to create RSCT clusters.

6
IPv6 interfaces

If the ctsyschck command is run with a value of 6, the command checks for non-link local interfaces and valid IPv6 interfaces, and the command does not run any subnet compatibility verification for IPv6 interfaces.

Note: To check the information about valid interfaces on remote nodes, the rsh or ssh protocol is used. The usage of the rsh or ssh protocol depends on the CT_SYSCHK_SHELL environment variable.
a
Checks the availability of IPv4 and IPv6 interfaces.
–m

The ctsyschk command checks for compatible MTU size between the specified input nodes based on some conditions.

Tool should have identified valid IPv4 communication path between the nodes. And then taking the interface names between which, the valid communication path is possible, MTU size compatibility check is performed.

-n

Specifies whether the node ID check to be performed.

This check is valid for more than one node. If only one node is specified, this check is not performed and a default status of success is returned.

If the ctsyschk command is run with the -n option and more than one node name is specified as the input, the command checks for the uniqueness of node ID among all the specified nodes.

-s

Specifies the RMC session authentication type to verify. The following values are valid:

u
Unauthenticated RMC session to the remote nodes from a local node. For example, the u option might attempt to query the IBM.HostPublic resource class of the remote nodes.
a
Authenticated RMC session to the remote nodes from a local node. For example, the a option might attempt to query the IBM.Host resource class of the remote nodes.

Parameters

node_name1 [node_name2...]
Specifies the nodes to be included in the peer domain definition by running the ctsyschk command. The node name is the long name or short name of the Domain Name System (DNS) host name.

Environment Variables

CT_SYSCHK_SHELL
Shell to contact remote nodes. ssh and rsh are two examples of shells used to contact remote nodes.
CT_SYSCHK_TS_PORT
User-configured port for HATS. If this environment variable is set, the default port 12347 is not used.
CT_SYSCHK_GS_PORT
User-configured port for HAGS. If this environment variable is set, the default port 12348 is not used.

Exit Status

0
The command completed successfully.
1
No valid IP connectivity available between the given nodes.
2
No compatible subnet exists between the given nodes.
3
Port check failed.
4
Firewall settings do not allow the required communication to go through.
5
NodeId is not unique across the given nodes.
6
Incompatible MTU size detected between the specified nodes.
7
Connection failure occurred. Remote node cannot be reached.
8
Other error.

Restrictions

  • All the input nodes must be reachable from the node on which this command runs and none of the input node names must be an IP address.
  • The ctsyschk command is part of the RSCT fileset for the AIX® operating system.
  • When the -h flag is specified, the usage statement of the command is written to the standard output. All verbose messages are written to the standard output.
  • All error messages are written to standard error.

Examples

  1. To check whether nodes nodeA and nodeB can form Peer Domain, run the following command:
    ctsyschk -C p nodeA nodeB
    
  2. To check whether the IPV4 communication path exists between the nodes nodeA and nodeB run the following command:
    ctsyschk -i 4 nodeA nodeB
  3. To check management domain compatibility between HMC node nodeH and lpar node nodeA, run the following command:
    ctsyschk -C m nodeH nodeA
  4. To check the RMC connection between nodes nodeA and nodeB, run the following command:
    ctsyschk -s {u/a} nodeA nodeB
  5. To check MTU compatibility between nodes nodeA and nodeB for making peer-domain, run the following command:
    ctsyschk -m -C p nodeA nodeB
  6. To check RMC, HAGS and HATS ports for availability on the local node, run the following command:
    ctsyschk -p a -C p
  7. To check whether nodes nodeA and nodeB can form Peer Domain, run the following command:
    ctsyschk -p a -C p