Architecture
Kubernetes is the production deployment model for Siclaw:Prerequisites
- A Kubernetes cluster
- A MySQL database reachable from the cluster
- Published Siclaw images for
runtime,portal, andagentbox
Quick Start
Install from the chart in this repository:image.registry and image.tag by default.
Important Values
Current top-level values look like this:database.existingSecret.name if you do not want to pass the connection string on the command line.
Accessing the UI
The Portal Service is the front door. With default values it listens on port3003 inside the cluster and on NodePort 31003 on any node.
- Keep
portal.service.type: NodePortfor quick access viahttp://<any-node-ip>:31003 - Or point an Ingress at the Portal Service on service port
3003
WebSocket support is required for live investigation updates. Keep proxy read/send timeouts high enough for multi-minute investigations.
Authentication
On first launch, open the Portal UI and register the first user — that account becomes the admin. Registration is open only for the very first account; every subsequent registration requires admin authentication.Metrics
Runtime and Portal both expose Prometheus metrics at/metrics. The chart can create ServiceMonitor, PodMonitor, Grafana dashboard, and PrometheusRule resources under the metrics.* values block.
Common settings:
/metrics, add:
user_id label from token and cost metrics:
Operational Notes
- Kubernetes mode requires MySQL. SQLite is only for single-process local use.
- AgentBox pods are created on demand by the Runtime.
- Runtime ↔ AgentBox traffic is secured with mTLS automatically.
- If you deploy monitoring resources from the chart, do not also apply duplicate monitor manifests manually.