Skip to main content

Prerequisites & System Requirements

Before the StackConsole team begins the CMP installation, your infrastructure must meet all requirements on this page. Items marked 🔴 are mandatory — setup cannot proceed without them.


Deployment Models​

CMP supports two deployment environments:

EnvironmentVM CountPurpose
Staging / POC1 VMProof-of-concept, testing, pre-production validation
Production3 VMsFrontend, Backend, and Database on separate servers
info

For production deployments, refer to the Multi-Server Deployment Architecture diagram before provisioning VMs.


CMP VM Specifications​

Staging / POC — Single VM​

ParameterRequirement
OSUbuntu 24.04 LTS
CPU16 cores
RAM32 GB
Storage250 GB SSD
Open Ports22, 80, 443, 8081

Production — Three-VM Setup​

Frontend VM​

ParameterRequirement
OSUbuntu 24.04 LTS
CPU8 cores
RAM12 GB
Storage100 GB SSD
Open Ports22, 80, 443, 8081

Backend VM​

ParameterRequirement
OSUbuntu 24.04 LTS
CPU8 cores
RAM12 GB
Storage100 GB SSD
Open Ports22, 80, 8081

Database VM​

ParameterRequirement
OSUbuntu 24.04 LTS
CPU8 cores
RAM12 GB
Storage200 GB SSD
Open Ports22, 5432

Disk / Storage Layout​

CMP installs packages under /, /var, and /home. The layout depends on whether you use a single partition or multiple partitions.

Allocate all available space to /. This is the simplest and recommended approach.

Multiple Partitions​

If you must use separate partitions, the minimum allocation is:

Frontend / Backend VM (Total: 100 GB)​

Mount PointMinimum SizeNotes
/home50 GBPrimary application data
/var25 GBLogs, queue data
/25 GBOS and system

Database VM (Total: 200 GB)​

Mount PointMinimum SizeNotes
/var150 GBPostgreSQL stores all data under /var
/home25 GBApplication-level data
/25 GBOS and system
warning

If partitions are too small, the installation will fail silently or services will crash after a short period. Always verify free space on all mount points before and after installation.


Inter-VM Communication (Production Only)​

The three production VMs must be able to communicate with each other over private IP addresses:

SourceDestinationPortProtocolPurpose
Frontend VMBackend VM80TCPFrontend → Backend API calls
Backend VMDatabase VM5432TCPDatabase connections (PostgreSQL)

Verify connectivity before installation:

# From Frontend VM — must succeed
curl http://<BACKEND_PRIVATE_IP>:80

# From Backend VM — must succeed
curl http://<API_URL> # e.g., curl https://api.example.com
nc -zv <DB_PRIVATE_IP> 5432
warning

Port 5432 must only be open on private IPs. Never expose the database port to the public internet.


Network & Firewall Requirements​

PortProtocolDirectionPurpose
22TCPInboundSSH access for installation
80TCPInboundHTTP (redirects to HTTPS)
443TCPInboundHTTPS — customer portal
8081TCPInboundInternal CMP service
5432TCPInternal onlyPostgreSQL (DB VM, private network only)

The CMP server must also have outbound access to all configured orchestrator API endpoints. See the per-orchestrator requirement pages for specific ports.


Domain Name / URL​

CMP requires publicly resolvable domain names before installation begins.

URLPurposeExample
Frontend URLCustomer-facing portalportal.yourcompany.com
Backend API URLAPI endpointapi.yourcompany.com

Staging​

URLPurposeExample
Staging URLSingle URL for stagingstaging.yourcompany.com
info

DNS must be configured and propagated before the installation begins. Both the frontend and backend servers must be able to resolve and reach the backend API URL:

curl https://api.yourcompany.com # must return a response, not a connection error

SSL / TLS Certificates​

CMP requires HTTPS in all environments.

Required files:

  • fullchain.pem — Full certificate chain including intermediate certificates
  • privkey.pem — Private key

How to provide:

warning

Intermediate certificates are required. A certificate without the full chain will cause SSL handshake failures in some browsers and API clients.

See SSL / TLS Setup for Let's Encrypt and commercial certificate instructions.


SMTP / Email Configuration​

CMP sends transactional emails (invoices, alerts, user notifications). Provide these SMTP credentials before setup:

VariableExample
MAIL_HOSTsmtp.mailgun.org
MAIL_PORT587
MAIL_USERNAMEnoreply@yourcompany.com
MAIL_PASSWORD(your SMTP password)
MAIL_ENCRYPTIONtls
MAIL_FROM_ADDRESSnoreply@yourcompany.com
MAIL_FROM_NAMEYourCompany Cloud

CMP Super Admin Account​

Designate one email address as the CMP Super Admin before installation:

EnvironmentPurpose
Production emailUsed for super-admin login and all CMP system notifications
Staging emailUsed for staging environment only
warning
  • This email must be valid and accessible — it will receive all CMP system notifications.
  • If Keycloak SSO is to be enabled later, this exact email address must be pre-registered in Keycloak before enabling SSO.
  • See Keycloak SSO Setup for details.

App Logos​

CMP supports light and dark themes. Two logo variants are required:

PropertyValue
Dimensions160 × 40 px
FormatsPNG (transparent background recommended for Email and Invoice PDF), SVG (For web portal)
VariantsLight theme logo + Dark theme logo

Share logos to satish.londhe@stackconsole.io.


Billing & Currency Configuration​

Currency​

For each currency your platform supports, provide:

FieldExample
Currency SymbolUSD
Currency NameDollar
Fraction NameCent
Decimal places2 (e.g., 3.45443 → 5 decimal places)

Multiple currencies are supported. Provide one row per currency.

Payment Gateways​

CMP integrates with the following payment gateways. For each gateway you wish to enable, provide sandbox credentials (API key/secret or client ID/secret) for testing before going live:

Full guides: Payment Gateways.

info

Some gateways support multiple payment methods, but only a subset may be integrated into CMP. Confirm supported methods before enabling a gateway.


Access for StackConsole Installation Team​

The StackConsole team requires access to your infrastructure to perform installation and configuration. Choose one of the following:

Option 1 — VPN Access (Preferred)​

Provide VPN access to the following team members:

NameEmail
Satish Londhesatish.londhe@stackconsole.io
Ganesh Kanadeganesh.kanade@stackconsole.io
Saurabh Rapatwarsaurabh.rapatwar@stackconsole.io

Option 2 — IP Whitelist (Jump Server)​

If VPN is not feasible, whitelist our jump server IP:

14.192.19.227

This IP must have SSH access (port 22) to all provisioned VMs.


Orchestrator-Specific Requirements​

Each orchestrator has additional requirements on top of the common prerequisites above. Select your orchestrator: