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
- Development - Create and test locally
- Publishing - Push to module registry
- Deployment - Install via Orchestr8 CLI
- Management - Monitor, update, scale
- Decommission - Clean removal
Available Modules
| Module | Description | Status |
|---|---|---|
| PostgreSQL | Managed database with backup | ✅ Available |
| Redis | In-memory cache and session store | ✅ Available |
| Nginx | Web server and reverse proxy | ✅ Available |
| Monitoring | Prometheus and Grafana stack | ✅ Available |
| Langfuse | LLM observability platform | 🚧 In Development |
| VoiceFuse | Voice 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
- AI Workloads - Deploy LLM, RAG, and agentic applications
- Module Specification - Complete schema reference (Coming Soon)
- Development Guide - Creating custom modules (Coming Soon)
- Best Practices - Module design patterns (Coming Soon)
- Registry - Browse available modules (Coming Soon)