Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mypraxos.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

This guide covers the infrastructure and software requirements for deploying Praxos to production.

System Requirements

Minimum Specifications

For small deployments (1-10 users):
  • CPU: 2 cores
  • RAM: 4 GB
  • Storage: 20 GB
  • Network: Stable internet connection
For production (10-100 users):
  • CPU: 4-8 cores
  • RAM: 8-16 GB
  • Storage: 50-100 GB SSD
  • Network: High-bandwidth, low-latency

High-Scale Specifications

For enterprise (100+ users):
  • CPU: 16+ cores (distributed)
  • RAM: 32+ GB (per pod)
  • Storage: 500+ GB SSD
  • Network: Load balanced, redundant

Software Dependencies

Required

  • Python: 3.11 or higher
  • Docker: 20.10 or higher (for containerized deployment)
  • Kubernetes: 1.24+ (for orchestration)
  • MongoDB: 4.4+ or Azure Cosmos DB

Optional

  • Redis: 6.0+ (for local queue, alternative to Azure Service Bus)
  • NGINX: Load balancing and SSL termination
  • Prometheus: Monitoring and metrics
  • Grafana: Visualization

Cloud Services

  • Azure Kubernetes Service (AKS) - Container orchestration
  • Azure Cosmos DB - Primary database
  • Azure Service Bus - Message queue
  • Azure Key Vault - Secrets management
  • Azure Container Registry - Docker images
  • Azure Storage - Blob storage
  • Application Insights - Monitoring

AWS (Alternative)

  • EKS - Kubernetes
  • DocumentDB - MongoDB compatible
  • SQS - Message queue
  • Secrets Manager - Secrets
  • ECR - Container registry
  • S3 - Object storage
  • CloudWatch - Monitoring

GCP (Alternative)

  • GKE - Kubernetes
  • Cloud Firestore or MongoDB Atlas - Database
  • Cloud Tasks - Message queue
  • Secret Manager - Secrets
  • Container Registry - Images
  • Cloud Storage - Object storage
  • Cloud Monitoring - Observability

Database Requirements

MongoDB

Minimum:
  • Version: 4.4+
  • Storage: 10 GB
  • RAM: 4 GB
  • Connection pooling: 100 connections
Recommended:
  • Version: 6.0+
  • Storage: 50+ GB SSD
  • RAM: 8+ GB
  • Replica set with 3 nodes
  • Connection pooling: 500 connections
Collections:
  • users
  • conversations
  • user_context
  • integrations
  • tasks
  • logs

Azure Cosmos DB

Configuration:
  • API: MongoDB
  • Throughput: 1000 RU/s minimum
  • Consistency: Session (default)
  • Multi-region: Recommended for HA

Message Queue

Azure Service Bus

Configuration:
  • Tier: Standard or Premium
  • Queues: agent_tasks, scheduled_tasks
  • Topic/Subscriptions: Optional for pub/sub
  • Max message size: 256 KB
  • Message TTL: 14 days

Redis (Alternative)

Configuration:
  • Version: 6.0+
  • Memory: 2-8 GB
  • Persistence: RDB + AOF
  • Cluster mode: For high availability

API Keys & Credentials

Required

  • LLM Provider
    • Portkey API Key
    • OpenAI API Key (primary)
    • Google AI API Key (secondary)
  • Database
    • MongoDB connection string
    • Or Azure Cosmos DB endpoint + key
  • Message Queue
    • Azure Service Bus connection string
    • Or Redis connection URL

Integration-Specific

Configure based on enabled integrations:
  • Telegram: Bot token
  • Discord: Bot token, Application ID
  • Slack: Bot token, Signing secret
  • Google: Client ID, Client Secret
  • Microsoft: Client ID, Client Secret, Tenant ID
  • Notion: Integration token
  • Trello: API key, Token

Networking Requirements

Inbound

  • Port 8000: HTTP/HTTPS (API)
  • Port 443: HTTPS (webhooks)

Outbound

Must allow connections to:
  • LLM providers (OpenAI, Google)
  • Integration APIs (Google, Microsoft, Telegram, etc.)
  • Database servers
  • Message queue services

Webhooks

Public HTTPS endpoint required for:
  • Telegram webhooks
  • Discord webhooks
  • Slack events
  • Google Calendar notifications
  • Microsoft Graph subscriptions

SSL/TLS

Requirements

  • Valid SSL certificate
  • TLS 1.2 or higher
  • HTTPS for all external endpoints

Options

  • Let’s Encrypt (free)
  • Commercial certificate
  • Cloud provider managed certificate
  • Kubernetes cert-manager

Domain & DNS

Domain Requirements

  • Production domain (e.g., hetairos.yourcompany.com)
  • Optional: Separate domains per environment

DNS Records

A record: hetairos.yourcompany.com → Load Balancer IP
CNAME: www.hetairos.yourcompany.com → hetairos.yourcompany.com

Storage Requirements

Application Storage

  • Docker images: 2-5 GB
  • Logs: 10-50 GB (with rotation)
  • Temporary files: 5-10 GB

Database Storage

  • User data: ~10 MB per active user
  • Conversation history: ~50 MB per active user
  • Growth rate: ~5-10 GB/month (100 users)

Monitoring & Logging

Metrics Collection

  • CPU and memory usage
  • Request latency
  • Error rates
  • Queue depth
  • Database performance

Log Aggregation

  • Application logs
  • Error logs
  • Access logs
  • Audit logs

Tools

  • Prometheus: Metrics
  • Grafana: Dashboards
  • ELK Stack: Logs (Elasticsearch, Logstash, Kibana)
  • Azure Monitor: All-in-one (if using Azure)

Backup & Disaster Recovery

Database Backups

  • Frequency: Daily (minimum)
  • Retention: 30 days (minimum)
  • Point-in-time recovery: Enabled
  • Cross-region replication: Recommended

Configuration Backups

  • Environment variables
  • Kubernetes manifests
  • SSL certificates
  • Integration credentials

RTO/RPO Targets

Recommended:
  • RTO (Recovery Time Objective): < 4 hours
  • RPO (Recovery Point Objective): < 1 hour

Security Requirements

Authentication & Authorization

  • Service account authentication
  • Role-based access control (RBAC)
  • API key rotation
  • Secret management

Data Protection

  • Encryption at rest (database, storage)
  • Encryption in transit (TLS)
  • Secrets in Key Vault/Secrets Manager
  • No credentials in code or config files

Compliance

Consider requirements for:
  • GDPR (EU users)
  • CCPA (California users)
  • SOC 2 (enterprise)
  • HIPAA (healthcare)

Scalability Considerations

Horizontal Scaling

  • Stateless workers
  • Load balancing
  • Auto-scaling based on:
    • CPU usage
    • Memory usage
    • Queue depth

Vertical Scaling

  • Increase pod resources
  • Database tier upgrades
  • Message queue tier upgrades

Performance Targets

  • Message processing: < 5 seconds (simple)
  • API response time: < 500ms (p95)
  • Concurrent users: 100+ per pod
  • Queue throughput: 100+ messages/sec

Cost Estimation

Small Deployment (10 users)

  • Compute: $50-100/month
  • Database: $25-50/month
  • Queue: $10-25/month
  • LLM API: $50-200/month
  • Total: ~$150-400/month

Medium Deployment (50 users)

  • Compute: $200-400/month
  • Database: $100-200/month
  • Queue: $25-50/month
  • LLM API: $250-1000/month
  • Total: ~$600-1700/month

Large Deployment (100+ users)

  • Compute: $500-1000/month
  • Database: $300-600/month
  • Queue: $50-100/month
  • LLM API: $500-2500/month
  • Total: ~$1400-4200/month
Costs vary significantly based on usage patterns, enabled integrations, and cloud provider.

Pre-Deployment Checklist

  • Cloud infrastructure provisioned
  • Database created and configured
  • Message queue set up
  • Secrets stored in Key Vault
  • Domain and SSL configured
  • Monitoring and logging enabled
  • Backup strategy implemented
  • Load balancer configured
  • Network security rules set
  • API keys obtained for all integrations
  • Deployment manifests prepared
  • CI/CD pipeline configured (optional)

Next Steps

Kubernetes Deployment

Deploy Praxos to Kubernetes

Configuration Guide

Configure Praxos for your environment