Platform restructured into crates/, added AI service and detector,
migrated control-center-ui to Leptos 0.8
105 lines
2.4 KiB
Plaintext
105 lines
2.4 KiB
Plaintext
# Orchestrator Configuration Example - Solo Deployment Mode
|
|
#
|
|
# This example shows how to configure the orchestrator for
|
|
# solo (single-node) deployments with minimal resource allocation.
|
|
#
|
|
# Usage:
|
|
# nickel export --format toml orchestrator.solo.example.ncl > orchestrator.solo.toml
|
|
# nickel export --format json orchestrator.solo.example.ncl | jq
|
|
#
|
|
# This configuration will be loaded by ConfigLoader at runtime.
|
|
|
|
{
|
|
# Workspace configuration for solo mode
|
|
workspace = {
|
|
root_path = "/var/provisioning/workspace",
|
|
data_path = "/var/provisioning/workspace/data",
|
|
state_path = "/var/provisioning/workspace/state",
|
|
cache_path = "/var/provisioning/workspace/cache",
|
|
isolation_level = 'process,
|
|
execution_mode = 'local,
|
|
},
|
|
|
|
# HTTP server settings - solo mode uses port 8080
|
|
server = {
|
|
address = "0.0.0.0",
|
|
port = 8080,
|
|
tls = false,
|
|
cors = {
|
|
enabled = true,
|
|
allowed_origins = ["*"],
|
|
allowed_methods = ["GET", "POST", "PUT", "DELETE"],
|
|
},
|
|
rate_limiting = {
|
|
enabled = true,
|
|
requests_per_second = 100,
|
|
burst_size = 50,
|
|
},
|
|
},
|
|
|
|
# Storage configuration for solo mode (local filesystem)
|
|
storage = {
|
|
backend = 'filesystem,
|
|
path = "/var/provisioning/storage",
|
|
max_size = 10737418240, # 10GB
|
|
cache_enabled = true,
|
|
cache_ttl = 3600, # 1 hour
|
|
},
|
|
|
|
# Queue configuration - conservative for solo
|
|
queue = {
|
|
max_concurrent_tasks = 5,
|
|
retry_attempts = 3,
|
|
retry_delay = 5000,
|
|
task_timeout = 3600000,
|
|
persist = true,
|
|
dead_letter_queue = {
|
|
enabled = true,
|
|
max_size = 1000,
|
|
},
|
|
priority_queue = false,
|
|
metrics = false,
|
|
},
|
|
|
|
# Database configuration
|
|
database = {
|
|
host = "localhost",
|
|
port = 5432,
|
|
username = "provisioning",
|
|
password = "changeme", # Should use secrets in production
|
|
pool_size = 5,
|
|
connection_timeout = 10000,
|
|
},
|
|
|
|
# Logging configuration
|
|
logging = {
|
|
level = 'info,
|
|
format = 'json,
|
|
output = 'stdout,
|
|
},
|
|
|
|
# Monitoring configuration
|
|
monitoring = {
|
|
enabled = true,
|
|
metrics_port = 9090,
|
|
health_check_interval = 30,
|
|
},
|
|
|
|
# Security configuration
|
|
security = {
|
|
enable_auth = false, # Can be enabled later
|
|
auth_backend = 'local,
|
|
token_expiry = 86400,
|
|
},
|
|
|
|
# Deployment mode identifier
|
|
mode = 'solo,
|
|
|
|
# Resource limits
|
|
resources = {
|
|
cpus = "1.0",
|
|
memory = "1024M",
|
|
disk = "10G",
|
|
},
|
|
}
|