Skip to main content

System Requirements

This guide covers hardware, software, and network requirements for deploying FireBackup Enterprise in your infrastructure.

Hardware Requirements

Minimum Requirements

For development, testing, or small deployments (up to 5 Firebase projects):

ComponentCPUMemoryStorageNotes
API Server2 cores4 GB20 GBHandles API requests
Backup Worker2 cores4 GB50 GBProcesses backup jobs
PITR Worker2 cores4 GB50 GBChange capture
PostgreSQL2 cores4 GB100 GBPrimary database
Redis1 core2 GB10 GBJob queue & cache

Total Minimum: 9 cores, 18 GB RAM, 230 GB storage

For production deployments (10-50 Firebase projects):

ComponentCPUMemoryStorageInstancesNotes
API Server4 cores8 GB50 GB2Load balanced
Backup Worker4 cores8 GB100 GB3Concurrent jobs
PITR Worker4 cores8 GB100 GB1Change capture
PostgreSQL8 cores32 GB500 GB SSD2Primary + replica
Redis4 cores8 GB50 GB2Sentinel HA
Load Balancer2 cores2 GB10 GB1Nginx/HAProxy

Total Recommended: 42 cores, 114 GB RAM, 1.06 TB storage

Enterprise Scale

For large deployments (50+ Firebase projects, high throughput):

ComponentCPUMemoryStorageInstancesNotes
API Server8 cores16 GB100 GB4+Horizontal scale
Backup Worker8 cores16 GB200 GB5+Based on load
PITR Worker8 cores16 GB200 GB2+Per project group
PostgreSQL16 cores64 GB2 TB NVMe3+Primary + 2 replicas
Redis Cluster8 cores32 GB100 GB63 masters, 3 replicas

Storage Sizing Guide

Calculate storage requirements based on your data:

API Server Storage:
OS + Application: 10 GB
Logs: 10-50 GB (depends on retention)
Temp files: 20-50 GB

Backup Worker Storage:
OS + Application: 10 GB
Temp backup files: 2x largest collection
Compressed cache: 50-200 GB

PostgreSQL Storage:
Base: 10 GB
Per backup record: ~10 KB
Per PITR window: ~50 KB
Growth: Plan for 2 years

Example (1000 backups, 100 PITR windows):
10 GB + (1000 × 10 KB) + (100 × 50 KB) ≈ 25 GB
With 2-year growth: 75-100 GB recommended

Software Requirements

Operating System

OSVersionSupport Level
Ubuntu22.04 LTS, 24.04 LTSFully supported
Debian11, 12Fully supported
RHEL/CentOS8, 9Fully supported
Amazon Linux2, 2023Fully supported
Alpine3.18+Container only

Container Runtimes

RuntimeVersionNotes
Docker24.0+Recommended
Docker Compose2.20+For simple deployments
containerd1.7+For Kubernetes
Podman4.5+Alternative to Docker

Kubernetes

DistributionVersionNotes
Kubernetes1.27+Native K8s
Amazon EKS1.27+AWS managed
Google GKE1.27+GCP managed
Azure AKS1.27+Azure managed
OpenShift4.13+RedHat
Rancher RKE21.27+Rancher Labs

Database Requirements

PostgreSQL

RequirementSpecification
Version14, 15, 16 (recommended: 16)
Extensionsuuid-ossp, pg_trgm
Character SetUTF-8
Collationen_US.UTF-8
Max Connections100+ (depends on API replicas)

Managed PostgreSQL services:

  • AWS RDS PostgreSQL
  • Google Cloud SQL
  • Azure Database for PostgreSQL
  • DigitalOcean Managed Databases

Redis

RequirementSpecification
Version7.0+ (recommended: 7.2)
ModeStandalone or Sentinel
PersistenceRDB + AOF recommended
Memory Policynoeviction
Max Memory75% of available RAM

Managed Redis services:

  • AWS ElastiCache
  • Google Cloud Memorystore
  • Azure Cache for Redis
  • DigitalOcean Managed Redis

Node.js Requirements

RequirementSpecification
Version20 LTS or 22 LTS
Package ManagerYarn 4.x or npm 10.x

Network Requirements

Ports

PortServiceProtocolDirectionNotes
80HTTPTCPInboundRedirect to HTTPS
443HTTPSTCPInboundAPI & Web
4000APITCPInternalAPI server (if not proxied)
3000WebTCPInternalWeb dashboard (if not proxied)
5432PostgreSQLTCPInternalDatabase
6379RedisTCPInternalCache & queue

Firewall Rules

Minimum required external access:

# OAuth providers
accounts.google.com:443 # Google OAuth
www.googleapis.com:443 # Google APIs

# Firebase services
firestore.googleapis.com:443 # Firestore API
firebase.googleapis.com:443 # Firebase API
storage.googleapis.com:443 # Cloud Storage

# Storage providers (as configured)
s3.amazonaws.com:443 # AWS S3
s3.{region}.amazonaws.com:443 # Regional S3
storage.googleapis.com:443 # Google Cloud Storage
{space}.{region}.digitaloceanspaces.com:443 # DO Spaces

# License server (if online activation)
license.firebackup.io:443 # License validation

Internal Network

Bandwidth Requirements

ScenarioMinimumRecommended
API Traffic10 Mbps100 Mbps
Backup Uploads100 Mbps1 Gbps
Firebase API Calls10 Mbps100 Mbps
Internal (DB/Redis)1 Gbps10 Gbps

Latency Requirements

ConnectionMaximumRecommended
API → PostgreSQL10ms<5ms
API → Redis5ms<2ms
Worker → Redis5ms<2ms
Worker → Storage100ms<50ms

SSL/TLS Requirements

Certificates

TypeSupportedNotes
Let's EncryptAuto-renewal recommended
Commercial CAAny trusted CA
Self-signedNot recommended for production
WildcardFor multiple subdomains

TLS Configuration

Minimum TLS version: TLS 1.2 (TLS 1.3 recommended)

Recommended cipher suites:

TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-GCM-SHA384

Cloud Provider Requirements

AWS

ServiceMinimumRecommended
EC2t3.mediumm5.xlarge
RDSdb.t3.mediumdb.r5.large
ElastiCachecache.t3.smallcache.r5.large
S3StandardStandard
VPCDefaultCustom with private subnets

IAM Permissions required:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::your-backup-bucket",
"arn:aws:s3:::your-backup-bucket/*"
]
}
]
}

Google Cloud Platform

ServiceMinimumRecommended
Compute Enginee2-standard-2n2-standard-4
Cloud SQLdb-standard-2db-standard-8
Memorystore1 GB5 GB
Cloud StorageStandardStandard
VPCDefaultCustom with private subnets

Service Account permissions:

  • storage.objectAdmin on backup bucket
  • cloudsql.client for Cloud SQL

Azure

ServiceMinimumRecommended
Virtual MachinesStandard_B2sStandard_D4s_v3
Azure DatabaseBasicGeneral Purpose
Azure CacheBasic C0Standard C1
Blob StorageHotHot

DigitalOcean

ServiceMinimumRecommended
Dropletss-2vcpu-4gbs-4vcpu-8gb
Managed DBdb-s-1vcpu-1gbdb-s-2vcpu-4gb
Managed Redis1 GB2 GB
SpacesStandardStandard

Compatibility Matrix

Tested Combinations

OSContainerKubernetesPostgreSQLRedis
Ubuntu 22.04Docker 24.0-167.2
Ubuntu 22.04-1.28167.2
Debian 12Docker 24.0-157.0
Amazon Linux 2023Docker 25.0-167.2
RHEL 9Podman 4.6-157.0

Known Limitations

  • PostgreSQL 13 and below: Not supported (missing required features)
  • Redis 6 and below: Not supported (missing RESP3 features)
  • Docker 20 and below: May work but not tested
  • ARM64: Fully supported, same images

Pre-Installation Checklist

Before deploying FireBackup Enterprise, verify:

Infrastructure

  • CPU, memory, and storage meet minimum requirements
  • Operating system is supported and updated
  • Docker or Kubernetes is installed and configured
  • Network connectivity is available

Database

  • PostgreSQL 14+ is installed/provisioned
  • Database user with CREATE privileges
  • Connection string is available
  • SSL configured (recommended)

Cache

  • Redis 7.0+ is installed/provisioned
  • Connection string is available
  • Memory configured with noeviction policy

Network

  • Required ports are open
  • Firewall rules allow external API access
  • DNS configured for your domain
  • SSL certificates obtained

Security

  • Encryption key generated (32 bytes)
  • JWT secret generated
  • Google OAuth credentials created
  • Storage provider credentials available

License

  • Valid license key obtained
  • License server accessible (or offline license prepared)

Next: Docker Deployment - Deploy with Docker Compose.