Platform

Health Check to Prevent Primary Flapping

Feature Summary and Revision History

Table 1. Summary Data

Applicable Product(s) or Functional Area

CPS

Applicable Platform(s)

Not Applicable

Default Setting

Disabled - Configuration Required

Related Changes in This Release

Not Applicable

Related Documentation

CPS Installation Guide for VMware

CPS Installation Guide for OpenStack

Table 2. Revision History

Revision Details

Release

First introduced

20.2.0

Feature Description

In GR setup, when the primary of a replica-set keeps on flapping between the sites (Site1 and Site2) because of continuous reboot scenario in Session Manager VMs, the application fails to detect the appropriate primary member for write operation which brings QNS process down.

CPS now supports health check to prevent primary flapping from impacting the remote sites.

To enable this feature in VMware environment, the flag prevent_primary_flapping_enabled is set to true in Configuration.csv file

To enable this feature in OpenStack environment, the flag preventPrimaryFlappingEnabled is set to true in YAML file.


Restriction

  • When the local site is handling traffic, during local site reboot scenario, if the latency is more between the local and remote sites, then there may be some timeout or high response time from remote site since the PRIMARY is shifted to remote site.

  • If the member state is not stable within the stipulated 300 seconds time, then the priority level is retained as 1 for those members until it becomes stable for minimum 300 seconds.

  • If mon_db* is enabled, make sure not to enable the prevent_primary_flapping_enabled/preventPrimaryFlappingEnabledflag flag. If both the parameters are enabled in a setup, it creates conflicts in MongoDB operations.


For more information, see the following sections:

  • General Configuration Parameters table in the CPS Installation Guide for VMware

  • Configuration Parameters - HA System, Enable Health Check to Prevent Flapping, and Disable Health Check to Prevent Flapping sections in the CPS Installation Guide for OpenStack

Support for HAProxy Connection Balancing

Feature Summary and Revision History

Table 3. Summary Data

Applicable Product(s) or Functional Area

CPS

Applicable Platform(s)

Not Applicable

Default Setting

Disabled - Configuration Required

Related Changes in This Release

Not Applicable

Related Documentation

CPS Installation Guide for VMware

CPS Installation Guide for OpenStack

Table 4. Revision History

Revision Details

Release

First introduced

20.2.0

Feature Description

CPS now supports connection transfer between the Policy Director (LB) servers in order to prevent high CPU utilization issues.

To support this, the code has been implemented to check for total number of available HAProxy servers and the total number of connections to calculate the average connection for each Policy Director (LB) HAProxy servers. Any servers handling connections more than its average threshold are evaluated and existing connections that exceed the threshold are gracefully terminated. Once the terminated connections reconnect, the HAProxy adds those connections to the next available Policy Director (LB) HAProxy server based on leastconn algorithm. However, the script also ensures that the new connections added in runtime does not exceed its average threshold value. The script has been added as a part of Monit which constantly checks HAProxy servers and initiates the script if balancing is required.

The HAProxy diameter servers diagnostic report and their total number of connections can be displayed using diagnostics.sh script.

On Cluster Manager, run diagnostics.sh --ha_proxy to fetch details of the diameter servers and the active connections.

To enable this feature in VMware environment, add auto_haproxy_balancing_list with the dimeter endpoints that are required for Policy Director (LB) HAProxy diameter in Configuration.csv file.

To enable this feature in OpenStack environment, add autoHaproxyBalancingList with diameter endpoint details in YAML file.

For more information, see the following sections:

  • General Configuration Parameters table in the CPS Installation Guide for VMware

  • Configuration Parameters - HA System table in the CPS Installation Guide for OpenStack

Support for Multiple User Login Privileges

Feature Summary and Revision History

Table 5. Summary Data

Applicable Product(s) or Functional Area

CPS

Applicable Platform(s)

Not Applicable

Default Setting

Enabled - Always-on

Related Changes in This Release

Not Applicable

Related Documentation

CPS Installation Guide for OpenStack

Table 6. Revision History

Revision Details

Release

First introduced

20.2.0

Feature Description

CPS now supports multiple user login credentials with different privileges for all non-cluman VMs in OpenStack environment. To support this, allowUserForCluman parameter has been added in YAML file.


Note

Multiple user login credentials with different privileges for all non-cluman VMs is already supported for VMware environment.


For more information on allowUserForCluman parameter, refer to Configuration Parameters - HA System section in the CPS Installation Guide for OpenStack

Support for vCenter APIs

Feature Summary and Revision History

Table 7. Summary Data

Applicable Product(s) or Functional Area

CPS

Applicable Platform(s)

Not Applicable

Default Setting

Disabled - Configuration Required

Related Changes in This Release

Not Applicable

Related Documentation

CPS Migration and Upgrade Guide

Table 8. Revision History

Revision Details

Release

First introduced

20.2.0

Feature Description

CPS now provides support to disable ESXi host SSH access for VM management and use the vCenter API calls with IT service domain authentication for vCenter users.

vCenter manages all ESXi hosts by using the vpxa and vpxd services. vCenter REST APIs are used to stop and start the services to enable the CPS deployment on the ESXi hosts managed by the vCenter.

You need to append --nossh to the deploy_all.py command to deploy VMs using VMware Rest API.

make the feature effective.

Example: python deploy_all.py --nossh


Note

vCenter Rest API support is available from vCenter 6.5 onwards only.


Upgrade/Migration/Backward Compatibility Considerations

  • Upgrade CPS (ISSU): As the upgrade is initiated from Cluster Manager, the current ISSU deployment approach works after implementing the vCenter REST API deployment approach.

  • Migrate CPS (ISSM): Migrate procedure/steps are same as in current implementation.

For more information, see the following sections:

  • Migrate CPS Set 1 VMs and Migrate CPS Set 2 VMs in the CPS Migration and Upgrade Guide

  • deploy_all.py command in the CPS Operations Guide

Support to Check VM Power Status

Feature Summary and Revision History

Table 9. Summary Data

Applicable Product(s) or Functional Area

CPS

Applicable Platform(s)

Not Applicable

Default Setting

Not Applicable

Related Changes in This Release

Not Applicable

Related Documentation

CPS Operations Guide

Table 10. Revision History

Revision Details

Release

First introduced

20.2.0

Feature Description

CPS now supports displaying the VM power state.

You need to append --vmPowerstate to the python vm_utilities.py command to check the VM power state.

Example:


Note

python vm_utilities.py --vmPowerstate works only with vCenter 6.5 or 6.7.


[root@localhost support]# python vm_utilities.py --vmPowerstate
esxi-host-1.cisco.com is reachable
esxi-host-2.cisco.com is reachable
Found a valid certificate file [/var/tmp/combined.crt] to establish a secure communication
Validated the hostname/username/password of the vCenter
Host                        Vmname                        Status
qns01                     ssh-qns01                    POWERED_ON
sessionmgr02              ssh-sessionmgr02             POWERED_ON
qns02                     ssh-qns02                    POWERED_ON
sessionmgr01              ssh-sessionmgr01             POWERED_ON
lb02                      ssh-lb02                     POWERED_ON
lb01                      ssh-lb01                     POWERED_ON
pcrfclient02              ssh-pcrfclient02             POWERED_ON
pcrfclient01              ssh-pcrfclient01             POWERED_ON

For more information, see the vmutilities.py section in the CPS Operations Guide.