Using HCIPlex
HCIPlex enables adminstrators to setup an HCI with an associated port number, then have a large number of users be able to connect to them, using that same port number, without needing to consider task or memory constraints within the HCI.
Dynamic Connection Capacity
The total number of connections supported by any single HCI running in the HCIPlex is 400. Thus, the number of HCIs running on the HCIPlex determines its connection capacity. For example, if five HCIs are running in a HCIPlex, then the connection capacity is 5x400, or 2000 connections. When the total number of actual connections reaches 95% of the HCIPlex’s connection capacity, a new HCI is started, thereby increasing the connection capacity of the HCIPlex by 400. As the number of actual connections continues to increase, new HCIs will be started such that the connection capacity of the HCIPlex is never actually reached so long as the total number of HCIs running in the HCIPlex has not reach the maximum of 39.
When a new HCI is started, a message is displayed stating a new HCI address space has been started. The following is an example of that message:
HCIHC0301I NEW HCIPLEX ADDRESS SPACE STARTED. SUBSYSTEM NAME HCI#.
Dynamically Generated Subsystem Names
The 4-character HCI subsystem name, specified with the SYSID HCI parameter in the HCIxxxx parmlib member, is used to dynamically generate a subsystem name for each HCI running in the HCIPlex. The dynamically generated subsystem name uses the first 3 characters of the SYSID parameter appended with an additional character at HCI startup. This additional character gets appended for each HCI in the following order: $, #, @, A-Z, 0-9. Therefore, the maximum number of HCI address spaces is 39. When new HCIs are started internally by the HCIPlex, the subsystem name, as dynamically generated, is used as the identifier for the job. For example, if SYSID=HCI1 is specified in the HCIxxxx parmlib member, the first HCI in the HCIPlex will have a subsystem name of HCI$. The second HCI will have a subsystem name of HCI#, and will be started internally with the identifier of HCI#. It is recommended that the first HCI be started (using the MVS START operator command) with an identifier of the first 3-characters of the subsystem name appended with a $. For example, START HCI.HCI$. See Controlling the HCIPlex With Operator Commands for information on managing the HCIPlex.
Configuring Parameters for HCIPlex
Several parameters have special considerations when involving an HCIPlex. For detailed information, see HCI-configuration-parameters.
The HCIPLEX_NAME parameter is used to specify the name of the HCIPlex. When you specify a value for this parameter, the HCIPlex feature is enabled.
The HCI_PROCNAME parameter is only needed when the HCI job name is not the same as the name of the member containing the PROC
The EMCS_CONSOLE_NAME parameter is not used when an HCIPlex is enabled. When the HCIPlex is enabled, the EMCS_CONSOLE_NAME parameter is ignored and the EMCS console name is dynamically generated.
The data set name specified for the JOURNALn parameter must have HPLEXSUB as one of the nodes in the data set name. HPLEXSUB will be replaced with the actual subsystem name for the HCI job. Because this subsystem name is generated dynamically at HCI start-up, a system symbol cannot be used to resolve the name when the HCIxxxx parameter member is validated by the CMSC.
For example: HCIPlex job HCDEV0 withh the subsystem name HCG#:
Controlling the HCIPlex With Operator Commands
HCI subsystem names used in an HCIPlex consist of the first three characters specified in the SYSID parameter (found in the HCI PARMLIB member) and a suffix that is appended by the HCI. The first HCI started in the HCIPlex is given a suffix of $.
For example, if SYSID=HCIP is specified in the HCI PARMLIB member, the first HCI started in the HCIPlex will have a subsystem name of HCI$. The following discussion assumes that the OPCMD=MODIFY parameter1 has been specified in the HCI PARMLIB member.
When the HCIPlex determines that an additional HCI address space is needed, a new HCI is started with an identifier that is the same as the subsystem name of the new HCI address space. For example, if the name of the HCI procedure is HCIPROD and the SYSID=HCIP, then a second HCI would started with an identifier of HCI#, and the new subsystem name will be HCI#. Continuing with this example, to direct an MODIFY command to this HCI instance, the following MODIFY command would be used
MODIFY HCIPROD.HCI#,SHUTDOWN IMMED
We recommend that the first HCI in the HCIPlex, started with the START command, be started with the identifier of the 3-characters of the SYSID and the suffix of $. For example, HCI$. This will allow the first HCI in the HCIPlex to be controlled using the HCI procedure name and the identifier of HCI$.
For example
The HCI can also be controlled using the identifier only
If the first HCI in the HCIPlex is not started with the identifier, the system will use the job name as the identifier. This HCI will have to be controlled using the job name only. For example,
Here are some examples showing START commands and the various options for controlling the HCIs in an HCIPlex. These examples assume that the procedure name is HCIPROD, and that SYSID=HCIP in the HCI PARMLIB member. These examples use the abbreviation, F, for the MODIFY command.
Example 1:
When the number of users in the first HCI reaches 95% of capacity, a second HCI in the HCIPlex will be started internally, by the HCI, as HCIPROD.HCI#.
F HCIPROD,SHUTDOWN IMMED — because the first HCI was started without an identifier, this will bring down only the first HCI in the HCIPlex.
F HCI#,SHUTDOWN IMMED — shuts down the second HCI in the HCIPlex. This could also be specified as F HCIPROD.HCI#,SHUTDOWN IMMED
F HCIPROD.*,SHUTDOWN IMMED — will shut down all HCIs in the HCIPlex.
Example 2:
When the number of users in the first HCI reaches 95% of capacity, a second HCI in the HCIPlex will be started internally, by the HCI, as HCIPROD.HCI#.
F HCI$,SHUTDOWN IMMED — Because the first HCI was started with an identifier of HCI$, only the first HCI in the HCIPlex will be shut down. This could also be specified as HCIPROD.HCI$,SHUTDOWN IMMED
F HCI#,SHUTDOWN IMMED — Shuts down only the second HCI in the HCIPlex. This could also be specified as F HCIPROD.HCI#,SHUTDOWN IMMED
F HCIPROD.*,SHUTDOWN IMMED — This will shut down all HCIs in the HCIPlex.
1 If OPCMD=WTOR had instead been specified, then the individual HCIs in the HCIPlex would be controlled by replying to the appropriate outstanding HC9999A message (using the reply number) for the HCI subsystem name shown in the message.