Setup - Server Requirements¶
This document presents the minimum hardware and resource requirements for EnQualify production installations.
General Notes¶
- CPU, RAM, and Disk values are the minimum requirements. Production environments should not fall below these thresholds.
- ADAuth API is optional — it is only required when AD login integration is enabled.
- VideoCall components (VideoResize, Signalling, CoTurn) are optional — they are only required when the video conferencing feature is enabled.
- File Storage is optional — it is required when Video Conference recording or Screen Recording is enabled.
- Test, staging, and backup systems are not included in these requirements.
- In low-volume installations (< 1,000 transactions/day), resources can be shared between components where operationally acceptable.
Option A — Classic Installation (VM / Bare-Metal)¶
Recommended use: Organizations using traditional on-premises or private cloud infrastructure (VMware, Hyper-V, bare-metal servers).
Two installation topologies are available:
- Consolidated: Multiple EnQualify components run on a single VM/server. Reduces the number of machines, suitable for smaller installations.
- Per-Container: Each component runs in its own Docker container on separate VMs. Easier to scale and update individual services.
A.1 — Consolidated Topology (Consolidated Servers)¶
Multiple components combine on a single server. Suitable for medium to large-scale deployments in traditional infrastructure.
Configuration: Base (Temel)¶
Only core EnQualify components. No optional modules.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux |
Configuration: Screen Recording (Ekran Kaydı)¶
Includes screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call (Video Görüşme)¶
Includes video conferencing (WebRTC).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyVideoResize | EnQualify Web API (Video Resize) | 2 | 12 | 5 | Intranet | Linux + Docker | |
| EnQualifyAI | Signalling + CoTurn | 2 | 16 | 5 | DMZ | Linux + Docker | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call + Screen Recording¶
Includes video conferencing (WebRTC) and screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyVideoResize | EnQualify Web API (Video Resize) | 2 | 12 | 5 | Intranet | Linux + Docker | |
| EnQualifyAI | Signalling + CoTurn | 2 | 16 | 5 | DMZ | Linux + Docker | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call + Screen Recording + STT-TTS¶
Includes video conferencing (WebRTC), screen recording / file storage, Speech To Text (STT) and Text To Speech (TTS).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyVideoResize | EnQualify Web API (Video Resize) | 2 | 12 | 5 | Intranet | Linux + Docker | |
| EnQualifyAI | Signalling + CoTurn | 2 | 16 | 5 | DMZ | Linux + Docker | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — | |
| Enqualify Speech to Text | EnQualify Speech To Text | 8 | 12 | 5 | Intranet | Docker | |
| Enqualify Text to Speech | EnQualify Text To Speech | 4 | 4 | 5 | Intranet | Docker |
AD Authentication¶
Configuration: AD Authentication (AD Kimlik Doğrulama)¶
Includes AD authentication integration.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyADAuthAPI | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS |
Configuration: AD Authentication + Screen Recording¶
Includes AD authentication integration and screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyADAuthAPI | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: AD Authentication + Video Call¶
Includes AD authentication integration and video call (WebRTC).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyADAuthAPI | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| EnQualifyVideoResize | EnQualify Web API (Video Resize) | 2 | 12 | 5 | Intranet | Linux + Docker | |
| EnQualifyAI | Signalling + CoTurn | 2 | 16 | 5 | DMZ | Linux + Docker | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: AD Authentication + Video Call + Screen Recording¶
Includes AD authentication integration, video call (WebRTC), and screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| EnQualifyApp | Web + Web API + Mobile API + Integration API | 2 | 12 | 20 | Intranet | Linux + Docker | |
| EnQualifyMobileProxy | Mobile API Proxy | 1 | 4 | 5 | DMZ | Linux + Docker | |
| EnQualifyAIApp | AI App + Utils | 8 | 16 | 15 | 2 GB | Intranet | Linux + Docker |
| DB Server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| EnQualifyADAuthAPI | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| EnQualifyVideoResize | EnQualify Web API (Video Resize) | 2 | 12 | 5 | Intranet | Linux + Docker | |
| EnQualifyAI | Signalling + CoTurn | 2 | 16 | 5 | DMZ | Linux + Docker | |
| File Storage | EnQualify FileStorage | — | — | 200 | Intranet | — |
A.2 — Container-Based Topology (Per-Container)¶
Each service runs in its own Docker container. Suitable for Kubernetes-ready or Docker-based deployments that require individual service scaling.
Configuration: Base¶
Only core EnQualify components. No optional module.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux |
Configuration: Screen Recording¶
Includes screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call¶
Includes video call (WebRTC).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-videoresize | EnQualify Web API (Video Resize) | 2 | 8 | 5 | Intranet | Docker | |
| enqualify-signalling | EnQualify Signalling | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-coturn | EnQualify CoTurn | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call + Screen Recording¶
Includes video call (WebRTC) and screen recording / file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-videoresize | EnQualify Web API (Video Resize) | 2 | 8 | 5 | Intranet | Docker | |
| enqualify-signalling | EnQualify Signalling | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-coturn | EnQualify CoTurn | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: Video Call + Screen Recording + STT-TTS¶
Includes video call (WebRTC), screen recording / file storage, Speech To Text (STT) and Text To Speech (TTS).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-videoresize | EnQualify Web API (Video Resize) | 2 | 8 | 5 | Intranet | Docker | |
| enqualify-signalling | EnQualify Signalling | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-coturn | EnQualify CoTurn | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | ||
| enqualify-speechtotext | EnQualify Speech To Text | 8 | 12 | 5 | Intranet | Docker | |
| enqualify-texttospeech | EnQualify Text To Speech | 4 | 4 | 5 | Intranet | Docker |
Configuration: AD Authentication¶
Includes AD authentication integration.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-adauthapi | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS |
Configuration: AD Authentication + Screen Recording¶
Includes AD authentication integration and screen recording/file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-adauthapi | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: AD Authentication + Video Call¶
Includes AD authentication integration and video call (WebRTC).
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-adauthapi | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| enqualify-videoresize | EnQualify Web API (Video Resize) | 2 | 8 | 5 | Intranet | Docker | |
| enqualify-signalling | EnQualify Signalling | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-coturn | EnQualify CoTurn | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Configuration: AD Authentication + Video Call + Screen Recording¶
Includes AD authentication integration, video call (WebRTC), and screen recording/file storage.
| Server / VM | Components | CPU | RAM (GB) | Disk (GB) | Shm (dev/shm) | Location | Hosting |
| enqualify-web | EnQualify Web | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-webapi | EnQualify Web API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileapi | EnQualify Mobile API | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-integrationapi | EnQualify Integration API | 1 | 4 | 5 | Intranet | Docker | |
| enqualify-mobileproxy | EnQualify Mobile API Proxy | 1 | 4 | 5 | DMZ | Docker | |
| enqualify-aiapp | EnQualify AI App | 2 | 4 | 5 | Intranet | Docker | |
| enqualify-utils | EnQualify Utils | 6 | 8 | 5 | 2 GB | Intranet | Docker |
| db-server | EnQualify DB Server | 3 | 16 | — | Intranet | Windows / Linux | |
| enqualify-adauthapi | EnQualify ADAuth API | 1 | 4 | 5 | Intranet | Windows + IIS | |
| enqualify-videoresize | EnQualify Web API (Video Resize) | 2 | 8 | 5 | Intranet | Docker | |
| enqualify-signalling | EnQualify Signalling | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-coturn | EnQualify CoTurn | 2 | 8 | 5 | DMZ | Docker | |
| enqualify-filestorage | EnQualify FileStorage | — | — | 200 | Intranet | — |
Option B — Cloud-On-Premises Setup (Kubernetes)
Recommended use: Organizations in modern cloud infrastructure (AWS EKS, Azure AKS, Google GKE or on-premises Kubernetes clusters).
Main advantage: Resource requests start low. The Horizontal Pod Autoscaler (HPA) automatically scales pods based on actual load. Excess resource allocation during purchase is not necessary.
-
- HPA target: Scaling out is triggered when CPU usage ≥ 70%. If the threshold is maintained for 5 minutes, scaling in occurs.
- Managed database (RDS / Azure DB / Cloud SQL) is strongly recommended to eliminate DB server sizing issues.
- The ADAuth API runs on a Windows node pool; it cannot be containerized on Linux.
B.0 — Kubernetes Resource Notation — Terminology¶
The Kubernetes configuration tables in this document utilize the following units and terms. These are standard Kubernetes resource notations.
| Term / Unit | Full Name | Meaning | Practical Example |
| m (millicore) | Millicore | CPU measurement unit. 1 CPU core = 1000m. Allows for fractional core allocation. | 250m = 0.25 core (a quarter of a CPU core) |
| Mi (Mebibyte) | Mebibyte | Binary memory unit. 1 Mi = 1,048,576 bytes ≈ 1.05 MB. Used by Kubernetes for precise binary allocation. | 512Mi ≈ 537 MB ≈ half a gigabyte |
| Gi (Gibibyte) | Gibibyte | Binary memory unit. 1 Gi = 1,073,741,824 bytes ≈ 1.07 GB. | 2Gi ≈ 2.15 GB |
| CPU Request | Resource Request | Minimum guaranteed CPU for the pod. Kubernetes will not place the pod on a node with less available CPU than this value. | 250m → guarantees 0.25 core to the pod |
| CPU Limit | Resource Limit | Maximum CPU allowed for the pod. If it exceeds this value, the pod is throttled. | 500m → pod cannot use more than 0.5 core |
| Mem Request | Memory Request | Minimum guaranteed RAM for the pod. Used by the Kubernetes scheduler for node placement. | 512Mi → guarantees ~512 MB RAM for the pod |
| Mem Limit | Memory Limit | Maximum RAM allowed for the pod. If it exceeds this value, the pod is terminated (OOMKilled). | 1Gi → pod cannot use more than ~1 GB RAM |
| Min Replicas | Minimum Replica | Minimum number of pod instances that always run even under zero load. | 1 → at least one pod is always active |
| Max Replicas (HPA) | HPA Maximum | Maximum number of pod instances that HPA is allowed to create during high load. HPA = Horizontal Pod Autoscaler — automatically adds/removes pods based on CPU usage. | 4 → at most 4 pods can run simultaneously under load |
| PVC | Persistent Volume Claim | Request for persistent disk storage in Kubernetes. Data is preserved across pod restarts. | 200Gi PVC → a 200 GB persistent disk allocation for file storage |
Why not GB/MB? Kubernetes uses binary (base-2) arithmetic for memory internally. Writing ‘Mi’ and ‘Gi’ prevents ambiguity; 1 GB (decimal) ≠ 1 GiB (binary). All memory values in this document are in binary units (Mi / Gi).
Difference between CPU request and limit: A pod with request=250m and limit=500m always receives 0.25 core. It can burst up to 0.5 core if there is free capacity on the node.
B.1 — Reference Architecture¶
-
- Platform: EKS (AWS) / AKS (Azure) / GKE (GCP) / On-premises Kubernetes 1.26+
- Deployment: Helm Chart. One chart for each EnQualify service; values.yaml overrides for each environment.
- Ingress: NGINX Ingress Controller or equivalent (ALB on EKS, Application Gateway on AKS)
- Service Mesh: Optional. Istio or Linkerd for inter-service mTLS.
- Persistent Storage: PVC (ReadWriteOnce) for DB volumes; ReadWriteMany (EFS / Azure Files / GCS Fuse) for File Storage.
- Secrets: Kubernetes Secrets or HashiCorp Vault integration.
B.2 — Horizontal Pod Autoscaler (HPA) Configuration¶
Each AI and API workload is configured with HPA. Example for enqualify-aiapp:
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
spec:
minReplicas: 1
maxReplicas: 4
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
B.3 — POC / Minimum Startup Configuration¶
Minimum resource requirements needed to run EnQualify. Suitable for proof-of-concept and low-volume production (< 1,000 transactions/day). HPA manages burst load automatically.
POC Configuration: Base¶
Only core EnQualify components. No optional module.
Note
Note — EnQualify Utils: This configuration runs on 3 dedicated cores, therefore it should be started with MODEL_CONFIG_PROFILE=test4. /dev/shm should be provided as an emptyDir with medium: Memory and sizeLimit: 2Gi. This memory counts towards the pod’s memory limit.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — |
POC Configuration: Screen Recording¶
Includes screen recording / file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
POC Configuration: Video Call¶
Includes video conferencing (WebRTC).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-signalling | Signalling | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-coturn | CoTurn | 250m | 500m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
POC Configuration: Video Call + Screen Recording¶
Includes video conferencing (WebRTC) and screen recording / file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-signalling | Signalling | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-coturn | CoTurn | 250m | 500m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
POC Configuration: Video Call + Screen Recording + STT-TTS¶
Includes video conferencing (WebRTC), screen recording / file storage, Speech To Text (STT), and Text To Speech (TTS).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-signalling | Signalling | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-coturn | CoTurn | 250m | 500m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC | |
| enqualify-speechtotext | EnQualify Speech To Text | 2 | 4 | 4Gi | 4Gi | 1 | 2 | |
| enqualify-texttospeech | EnQualify Text To Speech | 2 | 4 | 2Gi | 4Gi | 1 | 2 |
POC Configuration: AD Authentication¶
Includes AD authentication integration.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 1 core | 4Gi | 4Gi | 1 | 1 |
POC Configuration: AD Authentication + Screen Recording¶
Includes AD authentication integration and screen recording/file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 1 core | 4Gi | 4Gi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
POC Configuration: AD Authentication + Video Call¶
Includes AD authentication integration and video call (WebRTC).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 1 core | 4Gi | 4Gi | 1 | 1 | |
| enqualify-videoresize | Video Resize | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-signalling | Signalling | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-coturn | CoTurn | 250m | 500m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
POC Configuration: AD Authentication + Video Call + Screen Recording¶
Includes AD authentication integration, video call (WebRTC), and screen recording/file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-webapi | EnQualify Web API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-mobileapi | EnQualify Mobile API | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-integrationapi | EnQualify Integration API | 100m | 250m | 256Mi | 512Mi | 1 | 2 | |
| enqualify-mobileproxy | Mobile API Proxy | 100m | 250m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 2 | |
| enqualify-utils | EnQualify Utils | 3 | 3 | 4Gi | 8Gi | 2Gi | 1 | 2 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 4Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 1 core | 4Gi | 4Gi | 1 | 1 | |
| enqualify-videoresize | Video Resize | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-signalling | Signalling | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-coturn | CoTurn | 250m | 500m | 256Mi | 512Mi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 200Gi PVC |
B.4 — Production Scale Configuration¶
Recommended resource allocations for production workloads (> 1,000 transactions/day). Replicas are automatically scaled via HPA to the defined maximum.
Note
Note — EnQualify Utils: Works on 6 dedicated cores, so it should be started with MODEL_CONFIG_PROFILE=prod8. /dev/shm should be provided as an emptyDir with medium: Memory and sizeLimit: 2Gi. This memory is included in the pod's memory limit. enqualify-aiapp and enqualify-utils must be scaled in a 1:1 ratio: one AI App pod can send a maximum of 16 requests to the engine simultaneously.
Production Configuration: Base¶
Only core EnQualify components. No optional module.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — |
Production Configuration: Screen Recording¶
Includes screen recording/file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Production Configuration: Video Call¶
Includes video call (WebRTC).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-signalling | Signalling | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-coturn | CoTurn | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Production Configuration: Video Call + Screen Recording¶
Includes video call (WebRTC) and screen recording / file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-signalling | Signalling | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-coturn | CoTurn | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Production Configuration: Video Call + Screen Recording + STT-TTS
Includes video call (WebRTC), screen recording / file storage, Speech To Text (STT), and Text To Speech (TTS).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-videoresize | Video Resize | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-signalling | Signalling | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-coturn | CoTurn | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC | |
| enqualify-speechtotext | EnQualify Speech To Text | 2 | 4 | 4Gi | 4Gi | 1 | 2 | |
| enqualify-texttospeech | EnQualify Text To Speech | 2 | 4 | 2Gi | 4Gi | 1 | 2 |
Production Configuration: AD Authentication¶
Includes AD authentication integration.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 2 core | 4Gi | 8Gi | 1 | 1 |
Production Configuration: AD Authentication + Screen Recording¶
Includes AD authentication integration and screen recording / file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 2 core | 4Gi | 8Gi | 1 | 1 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Production Configuration: AD Authentication + Video Call¶
Includes AD authentication integration and video call (WebRTC).
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 2 core | 4Gi | 8Gi | 1 | 1 | |
| enqualify-videoresize | Video Resize | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-signalling | Signalling | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-coturn | CoTurn | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Production Configuration: AD Authentication + Video Call + Screen Recording¶
AD authentication integration includes video conferencing (WebRTC) and screen recording / file storage.
| Pod / Deployment | Component | CPU Request | CPU Limit | Mem Request | Mem Limit | Shm (/dev/shm) | Min Replica | Max Replica (HPA) |
| enqualify-web | EnQualify Web | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-webapi | EnQualify Web API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-mobileapi | EnQualify Mobile API | 500m | 1 | 1Gi | 2Gi | 2 | 6 | |
| enqualify-integrationapi | EnQualify Integration API | 250m | 500m | 512Mi | 1Gi | 1 | 4 | |
| enqualify-mobileproxy | Mobile API Proxy | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-aiapp | AI App | 1 | 2 | 2Gi | 4Gi | 1 | 4 | |
| enqualify-utils | EnQualify Utils | 6 | 6 | 8Gi | 8Gi | 2Gi | 1 | 4 |
| db (managed) | EnQualify DB (managed PaaS) | — | — | 8Gi | — | 1 | — | |
| enqualify-adauth | ADAuth API (Windows node) | 1 core | 2 core | 4Gi | 8Gi | 1 | 1 | |
| enqualify-videoresize | Video Resize | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-signalling | Signalling | 500m | 1 | 1Gi | 2Gi | 2 | 4 | |
| enqualify-coturn | CoTurn | 250m | 500m | 512Mi | 1Gi | 1 | 2 | |
| enqualify-filestorage | File Storage (PVC) | — | — | — | — | — | 500Gi+ PVC |
Installation Option Comparison¶
| Classic VM (Unified) | Classic VM (Container) | Kubernetes (POC) | Kubernetes (Production) | |
| Min. Server (Base) | 3 VMs | 10 VMs | 1 node pool | 2–3 node pool |
| Min. Total CPU (Base) | ~10 cores | ~19 cores | ~4 cores (request) | ~11 cores (request) |
| Min. Total RAM (Base) | ~40 GB | ~64 GB | ~4 GB (request) | ~20 GB (request) |
| Auto Scaling | Manual | Manual | HPA automated | HPA automated |
| Suitable Volume | Any | Any | < 1K transactions/day | > 1K transactions/day |
| Installation Tool | Manual / Ansible | Docker Compose | Helm Chart | Helm Chart + HPA |
| Installation Effort | Medium | Medium | Low (only chart) | Low–Medium |
| Most Suitable Use | Classic on-prem | Infrastructure ready for Docker | POC / cost-sensitive | Enterprise cloud |
This document is maintained by Enqura Engineering. Please contact the solution architecture team for sizing inquiries.