Skip to main content

GUEST/IDM/CONNECT

Server Components

Software Components

No,

Component

Details

Supported Version

1

Database

Microsoft SQL Server.

2017, 2019 Standard or Enterprise

2

Elastic Search

Distributed, RESTful search and analytics engine for providing advanced search capabilities across large datasets.

V7.15.2+

3

Redis

Redis is an open-source, in-memory data structure store, used as a database, cache and message broker, for high-performance data caching.

v4.0.14+

4

RabbitMQ

Lightweight, open-source message broker.

V3.9.1+

5

Docker

Containers-as-a-Service platform for IT that manages and secures diverse applications across disparate infrastructure, both on-premises and in the cloud.

Latest support OS version

6

Caddy Webserver

Caddy web server is an open-source, HTTP/2-enabled web server written in Go.

2.0

7

NFS

Network File Share is used to share persistent files such as photos, reports, and email templates between the other components.

Latest support OS version

Note

The latest support OS version requires the latest version of the application that is currently supported by the OS being installed and used.

Virtual Machine and Operating System Components

No.

Component

Details

1

Virtualization System

VMWare ESXi

2

Database Server Operating System¹

Microsoft Windows Server 2016, Microsoft Windows Server 2019, Red Hat Enterprise Linux (RHEL) 7.3 – 7.8, 8.0 and 8.2, Ubuntu 18.04 and 20.04 LTS

3

Operating System for All Other Components

Ubuntu 18.04 and 20.04 LTS, Red Hat Enterprise Linux 7.9 2 and 8.3

¹ Database operating system version must support the version of SQL Server being used.

² Red Hat Enterprise Linux requires the use of Docker Enterprise Edition

Note

RHEL (Red Hat Enterprise Linux) must always be installed using the minimal install option.

Physical Server Architecture

The physical server architecture will depend on the size of the overall solution and the high availability requirements of the organization.

Server Resources

Note

These are provided as rough, high-level guidelines and may need to be adjusted based on the use of the individual system.

Small, medium, and large solutions are categorized by the following metrics:

  • Small: <10,000 IDs (employees, contractors, etc.). Less than 2,000 readers managed in total. This is typically used only for Symmetry Guest deployments.

  • Medium: 10,000 – 40,000 IDs (employees, contractors, etc.). 2,000 – 7,000 readers managed in total.

  • Large: > 40,000 IDs (employees, contractors, etc.). > 7,000 readers managed in total. High Availability.

Component

Small

Medium

Large

CPU

12 Cores (Per Server)

12 Cores (Per Server)

12+ Cores (Per Server)

RAM

96 GB (Per Server)

128 GB (Per Server)

96GB – 144GB (Per Server)

HDD

2 TB 15K SAS Minimum (SSD Preferred)

1.5 TB 15K SAS Minimum (SSD Preferred)

2.3TB - 3TB 15K SAS Minimum (SSD Preferred).³

Network

Gigabit Ethernet

Gigabit Ethernet

Gigabit Ethernet

OS

Operating system: Windows Server or Linux OS with VMware ESXi installed. The bare-imaged Ubuntu VMs must be built and available on the physical servers. For more details, review: https://ubuntu.com/download/server

³ Available drive space is listed; however, it is assumed that consideration will be given to multiple drives, throughput, and redundancy.

Note

The specifications provided above are per physical server. Review the description provided above regarding the number of physical servers required for the solution.

Note

The specifications provided above are to be used as a rough guide only. Additional scoping meetings are required to specify the exact server requirements.

Best Practices

On the Docker server(s), a separate partition should be created for the /var/lib/docker mount point. This will prevent the possibility of Docker and its ability to run if this folder fills up due to the number of Docker images.

Server Configuration Examples

Note

If required, please contact AMAG Technical Support for more details regarding requirements for server configuration.

The server configurations presented below (in the following section) are an example of what the server configuration may look like in a production environment.

Small System

Physical Server 1 (Application/backend)

chrome_iWe6cpn9Qa.png

Physical Server 2 (SQL Server Only)

chrome_iWe6cpn9Qa.png

Physical Hardware:

CPU: 10 Cores

RAM: 64GB

Storage: 2TB (SSD Drive recommended for improved performance)

Physical Hardware:

CPU: 2 Cores

RAM: 32GB

Storage: 500GB (SSD Drive recommended for improved performance)

VM Server 1: Runs everything except SQL

CPUs: 10 cores,

RAM:64 GB,

Storage: 1.5 TB

VM Server 2 (SQL)

CPUs: 2 Cores

RAM: 32 GB

Storage: 300 GB

Medium System

Physical Server

chrome_iWe6cpn9Qa.png

Physical Hardware: CPU: 14 Cores

RAM: 140 GB

Storage: 1.75 TB (SSD Drive recommended for improved performance)

VM Server 1: SQL Server

CPUs: 4 Cores

RAM: 64 GB minimum

Storage: 500 GB minimum

VM Server 2: Elastic Search

CPUs: 2 Cores

RAM: 16 GB minimum

Storage: 300 GB minimum

VM Server 3: Redis

CPUs: 2 Cores

RAM: 12 GB minimum

Storage: 200 GB minimum

VM Server 4: Docker Node

CPUs: 2 Cores

RAM: 24 GB minimum

Storage: 250 GB minimum

VM Server 5: RabbitMQ

CPUs: 2 Cores

RAM: 12 GB minimum

Storage: 250 GB minimum

VM Server 6: NFS

CPUs: 2 Cores

RAM: 12 GB minimum

Storage: 250 GB minimum

Large System

Physical Server #1

chrome_iWe6cpn9Qa.png

Physical Server #2

chrome_iWe6cpn9Qa.png

Physical Server #3

chrome_iWe6cpn9Qa.png

Physical Hardware:

CPU: 12 Cores

RAM: 96 GB

Storage: 2.25TB (SSD Drive recommended for improved performance)

Physical Hardware:

CPU: 14 Cores

RAM: 160 GB

Storage: 3.25 TB (SSD Drive recommended for improved performance)

Physical Hardware:

CPU: 14 Cores

RAM: 112 GB

Storage: 2.75 TB (SSD Drive recommended for improved performance)

VM Server 1: Elastic Search #1

CPUs: 4 Cores

RAM: 32 GB

Storage: 650 GB

VM Server 1: Elastic Search #2

CPUs: 4 Cores

RAM: 32 GB

Storage: 650 GB

VM Server 1: Elastic Search #3

CPUs: 4 Cores

RAM: 32 GB

Storage: 650 GB

VM Server 2: Redis #1

CPUs: 2 Cores

RAM: 16 GB

Storage: 250 GB

VM Server 2: Redis #2

CPUs: 2 Cores

RAM: 16 GB

Storage: 250 GB

VM Server 2: Redis #3

CPUs: 2 Cores

RAM: 16 GB

Storage: 250 GB

VM Server 3: Docker Node #1

CPUs: 4 Cores

RAM: 32 GB

Storage: 600 GB

VM Server 3: Docker Node #2

CPUs: 4 Cores

RAM: 32 GB

Storage: 600 GB

VM Server 3: Docker Node #3

CPUs: 4 Cores

RAM: 32 GB

Storage: 600 GB

VM Server 4: RabbitMQ #1

CPUs: 2 Cores

RAM: 16 GB

Storage: 750 GB

VM Server 4: RabbitMQ #2

CPUs: 2 Cores

RAM: 16 GB

Storage: 750 GB

VM Server 4: RabbitMQ #3

CPUs: 2 Cores

RAM: 16 GB

Storage: 750 GB

 

VM Server 5: SQL Server¹

CPUs: 2 Cores

RAM: 64 GB

Storage: 1 TB

VM Server 5: NFS²

CPUs: 2 Cores

RAM: 16 GB

Storage: 500 GB

¹ A SQL Instance is required for Symmetry CONNECT/GUEST. This can be hosted in a VM with the application itself or on a separate SQL Farm. Values entered here show only the recommendation of AMAG Technology.

² Symmetry CONNECT/GUEST requires access to an NFS Server to store key components such as themes, pictures, and email templates used. This can be hosted on a VM with the application or separately.

High Availability

CONNECT / GUEST Application

The Large Systems architecture is used to achieve high availability. For this, the following are required:

  • There needs to be more than one physical server to host CONNECT/Guest. Having a single physical server would result in a single point of failure.

  • Elasticsearch needs a minimum of 3 instances to provide a quorum.

  • RabbitMQ needs a minimum of 3 instances (Cluster).

  • Redis needs a minimum of 2 instances (Master/Slave). 3 instances are recommended to provide a quorum.

SQL Server

SQL Server can be clustered using Microsoft Failover Cluster Instance, which uses Windows Server Failover Clustering (WSFC) functionality to provide high availability via redundancy at the server instance level. This model relies on two servers and some form of shared storage and results in a zero data loss solution. When an issue with one node is encountered, the entire instance, including the database, jobs, etc., will move to the other node.

server_comp_1.png

Figure 1: Failover cluster instance

In addition, the CONNECT/Guest database can be hosted on a customer’s existing SQL cluster if available.