Skip to main content

Orchestr8 Module System

The module system provides a standardized way to package, deploy, and manage applications on Orchestr8, including traditional applications and AI workloads.

What are Modules?

Modules are self-contained application packages that include:

  • Application code and container images
  • Kubernetes manifests for deployment
  • Configuration templates for different environments
  • Dependencies and service requirements (including GPU resources for AI workloads)
  • Documentation and usage guides

Module Types

  • Standard Modules: Traditional web apps, APIs, databases
  • AI Modules: LLM applications, RAG systems, agentic workflows powered by Llama-Stack

Module Architecture

Each module follows a standard structure:

my-module/
├── module.yaml # Module specification
├── manifests/ # Kubernetes YAML files
├── config/ # Configuration templates
├── docs/ # Module documentation
└── examples/ # Usage examples

Key Features

🎯 GitOps Native

  • Deployed via ArgoCD applications
  • Git-based configuration management
  • Automated sync and rollback

🔒 Security First

  • Network policies by default
  • Pod security standards enforced
  • Secrets management integration

🏗️ Multi-Environment

  • Development, staging, production configs
  • Environment-specific overrides
  • Progressive deployment strategies

📦 Dependency Management

  • Declare module dependencies
  • Automatic dependency resolution
  • Version compatibility checking

Module Lifecycle

  1. Development - Create and test locally
  2. Publishing - Push to module registry
  3. Deployment - Install via Orchestr8 CLI
  4. Management - Monitor, update, scale
  5. Decommission - Clean removal

Available Modules

ModuleDescriptionStatus
PostgreSQLManaged database with backup✅ Available
RedisIn-memory cache and session store✅ Available
NginxWeb server and reverse proxy✅ Available
MonitoringPrometheus and Grafana stack✅ Available
LangfuseLLM observability platform🚧 In Development
VoiceFuseVoice processing pipeline🚧 In Development

Quick Start

Install a Module

# Browse available modules
o8 module list

# Install a module
o8 module install postgresql --environment dev

# Check module status
o8 module status postgresql

Create a Custom Module

# Initialize a standard web app module
o8 module init my-app

# Initialize an AI workload module
o8 llama init my-rag-app --template rag --provider openai

# Validate module specification
o8 module validate ./my-app

# Deploy to development
o8 module deploy ./my-app --environment dev

Documentation