Overview
NimbleTools Runtime is built on Kubernetes using the operator pattern and custom resource definitions (CRDs).Core Components
NimbleTools Operator
The operator is the heart of the runtime, responsible for:- Watching for
MCPService
resources - Creating and managing Kubernetes resources (Deployments, Services, HPAs)
- Reconciling desired state with actual state
- Managing service lifecycle
MCPService CRD
Custom Resource Definition for defining MCP services declaratively:Service Registry
Built-in service discovery and routing:- Maintains catalog of all deployed MCP services
- Routes requests to appropriate services
- Handles service health checks
- Provides API for service lookup
REST API
HTTP API for programmatic access:- Service deployment and management
- Tool invocation
- Workspace management
- Metrics and monitoring
Request Flow
Scaling Architecture
NimbleTools Runtime uses Kubernetes Horizontal Pod Autoscaler (HPA) for automatic scaling:- Baseline Replicas: Services maintain a minimum number of replicas
- Scale Up: High CPU/memory load triggers creation of additional replicas
- Scale Down: Low utilization gradually reduces replicas to minimum
- Load Balancing: Traffic distributed across all available replicas
Multi-Tenancy
Workspaces provide isolation through Kubernetes namespaces:- Each workspace gets its own namespace (
ws-{workspace-name}
) - Resource quotas prevent resource exhaustion
- Network policies isolate traffic
- RBAC controls access