EngageCX Pre-Installation Checklist

Overview

Thank you for choosing EngageCX Solutions.

This document is intended to provide requirements and recommendations you must consider prior to the EngageCX Platform installation. To ensure a successful Production deployment, please check and fulfill the items described below. Also, please keep in mind that each organization is unique and additional edits must be done to meet your company's needs. We encourage you to contact our EngageCX Professional Services Team for any inquiry you might have. We'd love to hear from you!

Basic Installation Requirements

This section provides the hardware, software, database, storage, and other requirements that must be met before installing the EngageCX Platform.

EngageCX Database

The EngageCX Database component stores all the metadata created by the EngageCX Platform. This component is directly accessed by multiple EngageCX components (e.g.: Enterprise Website, System Administration Website, Customer Portal Website, Storage Engine, Workflow Engine).

Database Requirements

The following lines identifies the minimum database requirements you need to fulfill for an EngageCX Platform deployment.


Microsoft SQL Server


Permission to write in the Database

After creating the database, you need to ensure that the user under which the database authentication will be made has at least Database Admin rights (i.e. db_owner).

Procedure:

Please follow the steps below to provide user access to the database.


Permission Types

In case of Production Upgrade, the user must have db_owner rights.

On runtime, the following privileges are enough:

db_datareader 
db_datawriter 
db_backupoperator 
GRANT EXECUTE ON TYPE::[dbo].[DateFilterArray] 
GRANT EXECUTE ON TYPE::[dbo].[FileArray] 
GRANT EXECUTE ON TYPE::[dbo].[FilePropertyArray] 
GRANT EXECUTE ON TYPE::[dbo].[PrincipalsArray] 
GRANT EXECUTE ON [dbo].[CheckConnectionDuplicate] 
GRANT EXECUTE ON [dbo].[GetEnvironmentPagesRendered]

If using Windows Authentication, the Network Service account must have permissions to log on as a service. Follow the steps below to set to the windows user the "Logon as a service" permission.

For more details, please follow this link.


Collation in EngageCX Database

After configuring the database for your server, you should set also the Collation parameter for both Microsoft SQL Server and the EngageCX databases (EOSDB4, EOSDB4Search). Collation manages the queries syntax that depends on your database management system; therefore, it is recommended to set the collation to case-insensitive.

Follow the query below to verify the collation at the database level:

SELECT name, collation_name  
FROM sys.databases  
WHERE name = 'MyEngageCXDatabase';  
GO

Note

MyEngageCXDatabse must be replaced with the name of the EngageCX Database used while running the EngageCX setup.

Follow the steps below to check the collation parameter from Microsoft SQL Server.

Follow the query below to verify the collation at the server level:

SELECT SERVERPROPERTY('collation');

If you are using a case insensitive collation, follow the query below to update the type to case insensitive:

ALTER DATABASE ‘MyEngageCXDatabase’
COLLATE Latin1_General_CI_AS

EngageCX Storage

When you create or add files through the EngageCX Platform, their content will be saved in a storage folder. The storage location is accessed by the Storage Engine component.

Storage Requirements

The following lines identifies the minimum storage requirements you need to fulfill for a successful EngageCX Platform installation.


Storage Location

The EngageCX Storage can reside:

Note

We highly recommend SSD hard disks when the storage is installed locally.

Note

Make sure the connection between the Document Repository services and the Storage folder is high speed and reliable (we recommend at least 1Gbps).

Note

If network attached locations are provided, we highly recommend placing this location on two separate physical instances to avoid single points of failure. An important thing to consider is that the EngageCX Platform will keep the two storage locations synchronized. Therefore, other file redundancy mechanisms are not required.


Permissions on the storage folder

Since the EngageCX service runs under a user account, you need to make sure that the user account has permissions to read/write/list to the storage folder.

Web Server

The EngageCX Websites (i.e.: System Administrator, Enterprise and Customer Portal) are hosted at the Microsoft Internet Information Services (IIS) Site.

Website Requirements

Find below the requirements for hosting the EngageCX websites and other essential components required by EngageCX Platform.

IIS Manager URL Rewrite .NET Framework 4.7.2 ASP.NET SSL Certificate*


IIS Manager

IIS 7.0 or later for Windows® Server is a flexible, secure and manageable Web server for hosting anything on the Web. You can read more on installing IIS 7 here.


URL Rewrite

The URL Rewrite module is also a requirement. It is a free extension provided by Microsoft for IIS 7 or later. For overview and installation steps, please access this link.


NET Framework

The .NET Framework 4.7.2 can be downloaded from the Microsoft website, using this download link. To learn more important information about this release, access the .NET Framework 4.7.2 Readme File.

Note

This is also required by all the EngageCX Platform components, not necessarily the websites.


ASP

The setup also requires ASP.NET to be installed on the IIS Components. Follow the steps below to install the ASP.NET in IIS.


SSL Certificate - Optional

If you need to handle sensitive communications and protect your files with the HTTPS Protocol, you will need to install an SSL Certificate in IIS.

Note

We recommend using SSL Certificates when the EngageCX Platform is included on the Internet, not to an intranet.

Hardware Requirements

Find below the minimum and recommended hardware specifications that must be addressed prior to the EngageCX Platform installation.

CPU

1 CPU/4 Cores i5 @ 2 GHZ

Note

Intel Xeon E5 (8 cores) is recommended.

In HA Deployments, the value must be doubled.

Memory

4 GB of RAM

Note

16GB of RAM is recommended, 2GB per core.

In HA Deployments, the value must be doubled.

Disk Space

10 GB

Note

1TB disk space is recommended. The size of the disk is dependent on customer load.

In HA Deployments, the value must be doubled.

Operating System Requirements

Find in this section, the minimum and recommended operating system specifications for installing the EngageCX Platform.

Minimum: Windows Server 2016

Recommended: Windows Server 2019

Note

For EngageCX Studio Windows 10 is recommended.

Ports Available

Before installing the EngageCX Platform, we recommend to ensure that some ports are not in use on your server.

EngageCX Services Default Ports

Find in the table below the default ports used by the EngageCX Services. These ports can be configured from the configuration files (EOS4.config, DASSvc.config, BISvc.config, PublisherSvc.config). For distributed configurations, these ports need to be opened in Windows Firewall.

Default Port Parameter Description
1433 SQLPort SQL Server Port
40014 ESSPort EngageCX Storage Port
40015 WorkPort Workflow Engine
40016 RepositoryPort Repository Port
40017 XFEOSServerPort Publishing Engine
40018 LogPort Log Port
40019 BillingPort Billing Port
40020 TriggerPort Trigger Port
40021 DASEOSServerPort Data Engine
40022 SchedulerPort Scheduler Port
40023 BIEOSServerPort Analytics Engine Port
40024 DistributionPort Distribution Port
40025 AlertPort Alerts Port
40026 BackgroundServerPort Background Services Port
40027 ProcessReporterServerPort Process Reporter Port
40028 SearchServerPort Search Server Port
40029 NotificationsServerPort Notification Server Port
40030 BackupServerPort Backup Port
40031 RepositorySynchronizationPort Repository Synchronization Port
40038 LockPort Lock Service Port

EngageCX Websites Default Ports

Find in the table below the default ports used by IIS for the EngageCX Websites. You can change them during the installation of each component.

Default Port Parameter Description
8094 EnterpriseWebsiteURLPort Enterprise Website
8095 AdministrationWebsiteURLPort Administrator Website
8096 PortalWebsiteURLPort Customer Portal Website

HA Deployments Default Ports

Find in the table below the default ports that need to be accessible for HA Deployments. The same port numbers need to be free and accessible on both firewalls configured as HA peers.

Default Port Parameter Description
40014 ESSPeerPort Storage Port
40022 SchedulerPeerPort Scheduler Port
40026 BackgroundPeerPort Background Services Port
40027 ProcessReporterPeerPort Process Reporter Port
40030 BackupPeerPort Backup Port
40020 TriggerPeerPort Trigger Port
40038 LockPeerPort Lock Service Port

Authentication

Authentication to the EngageCX Websites (Enterprise and Customer Portal) can be accomplished in different ways, depending on your organization environment. EngageCX provides three types of authentication: Internal Authentication, consisting of built-in users created directly in EngageCX Platform, Authentication using Active Directory or Single Sign-On (SSO) Authentication, which split in SSO using Windows Authentication and SSO using SAML or WS-Fed.

Please access from the table below the authentication type to find the requirements you need to ensure based on it:

Active Directory Authentication SSO - Windows Authentication

Active Directory Authentication

To use Active Directory users, you need to ensure the following items:

Note

When mapping active directory users to the EngageCX Platform, you need to make sure that the AD group is a Security Group. If you use Distribution Groups, users cannot be synchronized across EngageCX environments.


Verifying the Group Type

Follow the steps below to verify the group type in Active Directory.

SSO - Windows Authentication

Windows SSO uses the AD user that is currently logged into the computer to access the EngageCX Platform. Windows Authentication requires the following configurations:


Enabling Windows Authentication

Follow the steps below to enable the Windows Authentication in IIS.


Enabling Anonymous Authentication

Follow the steps below to enable the Anonymous Authentication in IIS.


Enabling Kerberos Authentication

Kerberos authentication requires having set a Service Principal Name for IIS Server. To check what SPN is registered, you can run the following command on the AD machine:

SetSpn -L

If you need to set a new SPN, you can read more information here.

Additional Requirements

Make sure you review the following requirements before the software installation.

Product Keys

EngageCX Platform functionalities are closely related to the product keys you purchased. Before installing the EngageCX Platform, it might be necessary to discuss with your Account Manager about the license upgrade.

Please note that for Nido Upgrades, the old licenses will no longer be available. You will have to contact our Operations Team to upgrade your licenses. More information on how to install the new product keys are described within the Licensing section of the Sysadmin Guide.

Available Product Keys

The table below lineup the minimum product keys required for full EngageCX functionalities.

Product Key Description
Engage\Converse LCPU\Volume Based A server-based product key that enables multiple EngageCX Engage\Converse features and functionalities, such as communications, forms, customer portal, channels, etc.
Publishing Engine LCPU\Volume Based A server-based product key that enables the Publishing Engine functionalities.
Data Engine LCPU\Volume Based A server-based product key that enables the Data Engine functionalities.
Analytics Engine LCPU\Volume Based A server-based product key that enables the Analytics Engine functionalities.
EngageCX Studio An environment-based product key that allows you to use any EngageCX Studio tool or feature.

Search Database

The Search module is an ideal way to quickly find your files and folders in real time. The table below lists the specifications you need to ensure before deployment the Search component. For more details, access the specification you are interested in.

Standard EngageCX Requirements
A connection to the Microsoft SQL Server
Permission to write in the Database
Microsoft SQL Server with Full Text enabled*
Search Module with Elastic Search*

Standard EngageCX Requirements

Please ensure your technical environment meets all the requirements described in the Basic Requirements section.

A connection to the Microsoft SQL Server

You can either use the same SQL Server as for the main EngageCX database, or a separate one. Note that you need to create an additional database for the Search component. By default, the name used in the installer is EOSDBSearch.

Permission to write in the Database

After creating the Search database, you need to ensure that the user under which the database authentication will be made has at least Database Admin rights (i.e. db_owner).

Microsoft SQL Server with Full Text enabled - Optional

This is an optional feature. It is required only if you want to search inside documents content. In order to have the Full Text feature enabled, you need to ensure that the feature is enabled in MS SQL Server setup.

Note

This option may slow down the search engine and it will consume more of the server’s resources.

Search Module with Elastic Search – Optional

If you want to use the Search module with Elastic Search, Elastic Search 5 is recommended.

Installation Directory

By default, EngageCX Platform will be installed on the system drive, at C:\Program Files\EngageCX\ProductName.

Rather than installing onto the default location, EngageCX allows you to specify a different installation location during the setup, at the Destination Folder Step.

Stakeholders

Before the EngageCX solutions deployment, it might be necessary to determine what persons do you need for installing EngageCX Platform, as well as the ones needed to fulfill the pre-installation requirements.

Administrative Privileges

The server(s) where the EngageCX Platform will be deployed needs to be configured by the system administrator, to allow the person assigned to install, test and troubleshoot.

Browser Availability

EngageCX Websites can be accessed from the browser versions listed below:

We highly recommend using the Google Chrome browser to have the best EngageCX experience.

If you are using an older browser version, you might encounter difficulties, so we encourage you to keep things up to date.

Distributed Installations

EngageCX solutions provide a scalable platform that can accommodate both small and large deployments. Distributed installation consists of deploying one or more components over multiple servers within your business environment. A distributed configuration will allow your business to ensure a performance, scalability or redundancy over the EngageCX system, but it can also bring undesirable costs for your company. As a best practice, when deciding what EngageCX components to spread across multiple servers, you must consider the ones that consume most of the system resources and be aware that separating an EngageCX component on a remote server is highly dependent on your workload and EngageCX pattern usage. Please contact our EngageCX Professional Services Team to discuss what distributed scenario suits more your organization needs.

Minimum Requirements

The table below provides the minimum requirements you must review these items in addition to the requirements and recommendations described in the Basic Requirements section. For more details, select from the table the requirement you are interested in.

Port Requirements
Reliable Network Connection
Physical Servers
Access to the EngageCX Database

Port Requirements

In distributed deployments, the servers or VMs you use need to be able to communicate with one another. For more information on how EngageCX Platform handles port mapping, please go to the Ports Available section.

Reliable Network Connection

In distributed deployments, make sure that the servers on which you plan to install EngageCX Components can communicate with each other over the network.

Note

For faster transfers of large quantities of data, 1Gbps is a recommended connection. Please access this link for more details.

Physical Servers

Use at least two physical servers to install EngageCX components in a distributed environment. Using only virtual machines on the same physical server does not eliminate single points of failure.

Access to the EngageCX Database

Please make sure that all the EngageCX components can access the EngageCX Database.

High Availability

High Availability (HA) is a special type of distributed installation recommended in Production environments. It describes the ability of a system to continue working and provide resources to its users when a failure occurs.

The table below provides the requirements you need to consider when deploying EngageCX Platform in HA mode, in addition to the requirements described above, in the Minimum Requirements section.

Load Balancer
Solution for the Database
Equal Storage Size

Load Balancer

Use load balancers to automatically balance traffic to your EngageCX instances. If you integrate our platform into your third-party application, load-balancers will remove the need for writing failover code. According to your company requirements, you can decide if you want to use software-based or hardware-based load balancers.

Note

A common choice for load balancing is using the High Availability Proxy (HA Proxy) solution.

Create a HA Solution Setup for your Database

A HA system should try to eliminate single points of failure as much as possible and database is an important component of EngageCX architectures. You can find more about SQL Server HA solutions here.

Equal Storage Size for all EngageCX Instances

In a HA deployment, EngageCX Storages are synchronized automatically, so the same size on both storages is highly recommended.