Jump to: navigation, search

Prerequisites

Important

Review the Limitations page before planning.

This section lists the requirements for the environment where EXEC is planned to be deployed. Mandatory and optional requirements are given in the corresponding sections below. 

Mandatory Environment Elements 

Redis Cache

EX Engage Connector supports Enterprise Redis version 6.x. Redis Cluster mode is not supported. Customers should plan to use 2 GB of Redis memory for contact centers with 1000 agents and a call rate of 5 CAPS.

WebDAV

WebDAV is required only for the Recording Injection. EX Engage Connector supports any standard WebDAV server. Customers should plan to use 30 GB of WebDAV memory for contact centers with 1000 concurrent recording calls.

HTTP Load Balancer

HTTP Load Balancer is required only for the Recording Injection. EX Engage Connector supports any standard HTTP load balancer.

Important
Genesys does not deploy and operate databases, WebDAV servers, or load balancers in on-premises deployments. It is the responsibility of the customer. In a production deployment, data store components (Redis) and WebDAV must be deployed outside of the Docker network and managed by the customer's DBA team. The customer's DBA team is also responsible for ensuring that the data store components are configured with the appropriate scalability, resiliency, and data protection (backups).

Container Registry

EXEC components are provided in a form of Docker containers. Customers should provide a container registry where EXEC docker containers can be hosted. Docker composer files of the EXEC components will be provisioned to pull docker containers from this registry.  

Virtual Machines for the EXEC Components

Four VMs have to be created to deploy EXEC components to have each VM to carry one component instance: 

  • 1 VM for EX Engage Connector Config Sync (EXCS)
  • 1 VM for EX Engage Connector Agent State Sync (EXAS)
  • 2 VMs for 1 SIPS HA Pair for deploying EX Engage Connector Conversation Provider (EXCP)
  • minimum of 2 VMs (N+1) for EX Engage Connector Recording Provider (EXRP)

VMs allocated for the EXEC components should be provisioned as follows: 

  • 64-bit Linux OS with kernel version 4.18 or later
  • Recommended resource allocation: 2 CPU Cores, 8 GB RAM, and at least 80 GB HDD
  • Docker version 20 or later

The EXEC VM must sync the system time at least once every 24 hours as the communication between the EXEC services and Genesys Cloud are very time-sensitive.

All VMs running EX Engage Connector components should belong to the same local network segment and be interconnected so that all components can communicate over the network. EXEC components can use either FQDNs or IP addresses to establish communication with each other. The connectivity table lists both incoming and outgoing connections required by the EXEC components.  

Service Direction Protocol Local Port Remote Peer Remote Peer Port Purpose
EXCS Outgoing TCP/TLS Any Engage Config DB 5432 (default RDBMS listening port) Read Engage configuration.
EXAS Outgoing TCP Any Engage Primary Stat Server 2060 ( default Primary Stat Server listening port) Obtain real-time agent state data.
EXAS Outgoing TCP Any Engage Backup Stat Server Backup Stat Server listening port (2060) default Obtain real-time agent state data
EXCP Outgoing TCP Any Engage SIP Servers (multiple) 8000 (default SIP Server default listening port) To fetch real-time Call, DN, and VQ details from SIP Server.
EXCP/EXAS Outgoing TCP Any EXCS 3640 (default) Use EXCS REST API.
EXCS Inbound TCP 3640 (default) EXCP/EXAS/Prometheus Any Use EXCS REST API and scrape metrics.
EXAS Inbound TCP 3630 (default) Prometheus Any Scrape metrics.
EXCP Inbound TCP 3650 (default) Prometheus Any Scrape metrics.
MCP Outgoing HTTP ANY WebDAV 80 (default) Post the recording files to WebDAV Server using HTTP requests.
MCP Outgoing HTTP ANY HTTP Load Balancer HTTP_LB_EXCP_PORT Deliver recording metadata using HTTP POST requests.
HTTP Load Balancer Outgoing HTTP ANY EXCP 3650 (default) HTTP POST proxied by HTTP Load Balancer for delivering recording metadata.
EXCP Outgoing HTTP Any HTTP Load Balancer HTTP_LB_EXRP_PORT HTTP POST to HTTP Load Balancer for interaction-end with recording metadata.
HTTP Load Balancer Outgoing HTTP ANY EXRP 8080 (default) HTTP POST proxied by HTTP Load Balancer to EXRP for interaction-end with recording metadata.
EXRP Outgoing TCP Any WebDAV 80 (default) HTTP request by EXRP to fetch recording.
EXCS/EXAS/EXCP Outgoing TCP/TLS Any Redis 6379 (default) Store config data to provide ID mapping services
EXCS/EXAS/EXCP/EXRP Outgoing HTTPS Any Genesys Cloud 443 Call GC REST API.

Bootstrap Virtual Machine 

Bootstrap VM is required to execute EXEC deployment procedure by running a bootstrap Python script. Bootstrap VM specs include:

  • Linux OS
  • Docker version 20 or later
  • Python 3.9+
  • pip3 package manager 
  • SSH connectivity to EXEC VMs

Genesys Cloud EX Organization 

The EX Organization should be created in Genesys Cloud to be used as a target for data injection by the EXEC components. 

An OAuth client with grant type Client Credentials created in the EX Org to connect to GC and the EX Integration role should be assigned to the OAuth client. This client's credentials will be used by the EXEC components to connect to Genesys Cloud.

Engage Environment

EX Engage Connector components operate with Genesys core services version 8.5+ on the back-end. Ensure the following Engage components (Config DB, Stat Server, and SIP Server) are deployed and running. Also, the EXEC components should be able to communicate with Config DB, Stat Server, and SIP Server.

Optional Environment Elements 

  • Monitoring Solution - EXEC component provides metrics that can be consumed by Prometheus to enable effective monitoring.
  • Observability Solution - Prometheus-based observability solution (Grafana) to make monitoring and alerting friendly and efficient.
  • Centralized Logging Solution - Log collection systems (Filebeat/ElasticSearch, Promtail/Grafana Loki, etc) to collect and index logs in a centralized place. 
  • Container Monitoring Solution - third-party container monitoring tools (Portainer) to simplify management and monitoring of the EXEC containers 
This page was last edited on May 22, 2024, at 06:28.
Comments or questions about this documentation? Contact us for support!