IVG 4.1 system requirements

From internal VHT performance testing the IVG system requirements to support up to 300 concurrent call sessions, are a Virtual Machine (VM) server configured with four cores, and with hyperthreading enabled for the equivalent of eight virtual CPU's (vCPU's).

Number of voice licensesMemoryDisk spacevCPUs
Up to 300116 GB60 GB8 (4 cores; 2 sockets per core)

1The port count increases by 20% for all IVG VMs where the Postgres database is installed remotely on a separate VM.

A remote connection across a Wide Area Network (WAN) between an IVG and the PostgreSQL database is not recommended. If a WAN is used, a latency of 20 ms or greater can lead to a voice platform initialization timeout resulting in an endless loop during IVG startup.

IVG Disk partitioning guidelines

Use the following table to identify the Linux OS disk partitioning sizing guidelines for IVG:

File systemSpace requirementsInstallation directories
File system separate from root"/export/home"A minimum of 15 GB free disk space is recommended./export/home/tomcat-ivg
/export/home/tomcat-ivg/webapps/ROOT/namefiles
"/export/home"A minimum of 40 GB free disk space is recommended./export/home/holly-ivg

/export/home/postgres-ivg

Partitioning for PostgreSQL is only required on IVG VMs to be deployed with a PostgreSQL database.

"/tmp"A minimum of 1 GB free space is recommended for temporary storage of fetched audio, documents, and scripts/tmp should be mounted as a tmpfs partition.NA
swapA swap space equal to the amount of memory at a minimum is recommended.

NOTES

  • Do not install IVG to the /root partition. Using a dedicated partition can avoid unexpected impacts on the operating system.
  • For guidance on virus-scanning exclusions, see Securing your IVG installation for your version.
It is a best practice to deploy VHT Callback software on dedicated servers to avoid resource conflict during times of peak call volume, as well as for ease of system maintenance.

Codec Support

The following codecs can be used for SIP calls to the voice platform:

  • G.711
  • G.729

Operating system support

Operating system[1]App serverJava versionMedia serverDatabase support
  • CentOS 6.10
  • CentOS 7.7
  • CentOS 7.8
  • RHEL 6.10
  • RHEL 7.7
  • RHEL 7.8
Tomcat 9.0.33Java 8Apache HTTP Server 2.4.10PostgreSQL 9.6.17

[1] Package updates can be applied for minor release upgrades per the Red Hat Enterprise Linux Application Compatibility Policy.VHT engineers recommend applying the OS patch update in a lab environment and verifying functionality with regression testing prior to deploying in a production environment.

NOTES

  • An OS upgrade to CentOS/RHEL 7.9 can only be performed if IVG is already installed on CentOS/RHEL 7.8. Upgrading from version 7.7 or lower to version 7.9 is not supported.
  • In a multi-IVG system, all of the IVG servers must use the same OS distribution and version.

IVG ports

The IVG installer process opens the following ports which are used by IVG voice platform:

ProcessPortDescription
browser4080MONAPI port
browser5080Outbound call request port
callcontrol4081MONAPI port
call control8040HTTP listen port
callcontrol8041HTTPS listen port
callredux4095Callredux listen port
configserver6399Listen port
ctimgr20000ICM listen port
foreman8333Trap port
foreman8400Supervise port
hinge7399Listen port
hlm9333Listen port
hlm9400Supervise port
hmspageserver2080Listen port
hmsweb2020HTTP listen port
hmsweb2021HTTPS listen port
hotts4088MONAPI port
hotts32330TTS interaction port
hvg8050HTTP listen port
hvg8051HTTPS listen port
hvg8062MRCP v2 ASR listen port
hvg9876Listen port
hvg9999Supervise port
hvss8030HTTP listen port
hvss8443HTTPS listen port
logmgr7333Listen port
SIP/RTP5060Primary SIP listen port
SIP/RTP5061Secondary SIP listen port
TLS/SSL5070Primary TLS port
TLS/SSL5071Secondary TLS port
SIP/RTP11000-15000RTP ports used for calls
SIP/RTP11000-15000RTP ports used for MRCP v2 interaction
subagent8161Listen port
SNMP Agent705Third-party software
tts_hum8066MRCP v2 TTS port
tts_hum32331Listen port for TTS (MRCP v2) interaction

Additional IVG ports

The IVG installer process opens the following ports for third party components in addition to the voice platform ports:

ProcessPortDescription
Tomcat8009Ports used by Tomcat (VIS and CCIS).
8005
8080
NFS111Port used by the NFS server if NFS is enabled.
20143Port used by the NFS client if NFS is enabled.
PostgreSQL 5432

PostgreSQL port number.

This port number can be designated during IVG installation.

ICM CTI listen port5000

Port that runs the ICM CTI worker.

  • This port is only used for IVG Cisco UCCE integrations.
  • This port number can be designated during IVG installation.
Mountd892Port used by the NFS client in a multiple IVG environment.

Observed performance

While actual performance is dependent on the IVG system, internal VHT acceptance testing achieved the following performance level when all recommended configuration procedures were followed:

Observed performance

CodecG.711
Operating SystemLinux
  • RHEL
  • CentOS
Number of Cores4
Number of vCPUs8
RAM16 GB
Disk space60 GB
Ports250
Total calls per hour6,000

Projected performance

CodecG.729
Operating systemLinux
  • RHEL
  • CentOS
Number of Cores4
Number of vCPUs8
RAM16 GB
Disk space60 GB
Ports100
Total calls per hour15,000

IMPORTANT

The observed performance of the G.729 decreases by 60% when compared to the G.711 codec VHT best practices recommend considering this performance when sizing your deployment.

Virtual machine requirements

IVG software has been tested using the following virtualized environment:

  • VMWARE ESXi (version 6.x), 64-bit compatible.

HVP virtual machine best practices

The following best practices have been shared by the HVP development team regarding VM hosts for IVG:

  • The /tmp directory needs to be mounted as a tmpfs filesystem (RAM drive) for efficiency sake (4 GB minimum).
  • The disk drives themselves should be local to the VMWare server (not NFS or similar network based resource) and preferably SSD.
  • 16 GB of RAM allocated per virtual machine is sufficient. It does need to be reserved and locked to each guest VM.
  • NUMA should be configured. NUMA (non-uniform memory access) is a method of configuring a system so that a VM locked to a particular CPU (CPU affinity) only uses RAM co-located with that CPU. Accessing memory co-located on a different CPU is inefficient and introduces latencies.
  • Configure the Latency sensitivity option to HIGH for each Guest virtual machine.
  • Each vCPU should be dedicated to a particular HVP virtual machine. Care should be taken to ensure Hyperthreads from the same CPU core are not shared between different guest Virtual Machines. Note – it is advisable to configure affinity for all Virtual Machines on an ESX server – or none. Only configuring a selection of Virtual Machines to use affinity is counterproductive
  • Be certain there are vCPU resources available to the VMWare Hypervisor. To ensure that the underlying ESXi hypervisor processes don't become bottlenecked it is advisable to reserve some CPU resources for their use. This is achieved by not allocating all vCPU to Virtual Machines.

Lightweight Directory Access Protocol (LDAP)

IVG is only validated with OpenLDAP software (http://www.openldap.org) for installing IVG on a system with LDAP users and groups.

Min IVG versionMax IVG versionOpenLDAP version
3.12.04.1.02.4.48