IBM Sterling Connect:Direct : Horizontal Pod Autoscaling for IBM Sterling Connect:Direct Unix Containers

From Wiki
Revision as of 21:06, 29 January 2026 by Ebasso (talk | contribs) (→‎Statistics File Entries)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

IBM Sterling Connect:Direct Unix containers now support multi-pod deployment through Horizontal Pod Autoscaler (HPA). This feature enables dynamic scaling by automatically adding additional instances as the load increases and removing instances as load decreases, ensuring efficient resource utilization and optimal performance. Configuration

The HPA feature is configured in the values.yaml file with the following parameters:

# Horizontal pod autoscaling configuration
hpa:
  enabled: true
  minReplicas: 2
  maxReplicas: 5
  averageCpuUtilization: 60
  averageMemoryUtilization: 60
  stabilizationWindowSeconds: 180
  periodSeconds: 15

where:

  • enabled: Activates the HPA feature
  • minReplicas: Minimum number of pod replicas (set to 2 for testing)
  • maxReplicas: Maximum number of pod replicas allowed
  • averageCpuUtilization: Target CPU utilization percentage for scaling decisions
  • averageMemoryUtilization: Target memory utilization percentage for scaling decisions
  • stabilizationWindowSeconds: Time window for stabilization before scaling actions
  • periodSeconds: Frequency of metric checks

Storage Requirements

For multi-pod deployments to function correctly, the storage class must support ReadWriteMany (RWX) access mode, allowing multiple pods to simultaneously read and write to the same persistent volume.

storageClassName: <your-rwx-capable-storage-class>
accessMode: "ReadWriteMany"

Without ReadWriteMany support, multiple pods cannot share the same statistics file and work directory, which will prevent proper HPA operation.

Test Results

During testing with minReplicas: 2, the deployment successfully created two Connect:Direct pods that shared the same statistics file and work directory.

Shared Work Directory Contents

total 49
-rw-rw-r--. 1 cdadmin cdadmin 12596 Jan 29 14:32 S20260129.001
-rw-rw-r--. 1 cdadmin cdadmin     3 Jan 29 14:31 cdpmgr_s0-ibm-connect-direct-0_10.130.3.79.pid
-rw-r--r--. 1 cdadmin cdadmin     4 Jan 29 14:32 cdpmgr_s0-ibm-connect-direct-1_10.131.0.72.pid
-rwxrwxr--. 1 cdadmin cdadmin 35964 Jan 29 14:31 tcqhdr.ind

Statistics File Entries

Both pods successfully write to the same statistics file (S20260129.001), demonstrating proper shared storage configuration:

STAR=20260129 14:31:58.697|RECI=CXIT|RECC=CAEV|OSID=915|HOST=s0-ibm-connect-direct-0|TZDI=0|MSGT=CMGR exited.  Pid=998.   Exitcode=0.
STAR=20260129 14:32:58.960|SSTA=20260129 14:32:58.960|STRT=20260129 14:32:58.960|RECI=COAC|RECC=CAEV|OSID=915|HOST=s0-ibm- connect-direct-0|TZDI=0|MSGT=Init Parm file has been modified. Refreshing rnode addresses
...
...
STAR=20260129 14:32:38.820|RECI=COAC|RECC=CAEV|OSID=2997|HOST=s0-ibm-connect-direct-1|TZDI=0|MSGT=API connection comm channel  activated: 0.0.0.0;1363
...
STAR=20260129 14:32:38.940|SSTA=20260129 14:32:38|STRT=20260129 14:32:38|RECI=NUIC|RECC=CAEV|OSID=2997|HOST=s0-ibm-connect-direct-1|TZDI=0|MSGT=C:D initialization complete. Node CDNODE01 (6.4.0.4).  Message ID NUIC001I, rc=0, fdbk=0.


Important:

  • Both pods (s0-ibm-connect-direct-0 and s0-ibm-connect-direct-1) successfully initialized
  • Each pod maintains its own PID file with unique IP addresses
  • Both pods write to the shared statistics file without conflicts
  • The tcqhdr.ind file is shared between pods for transmission queue management

Ver também