Quick Start
Get InfraSage running locally in under 5 minutes using Docker Compose.
Prerequisites
- Docker 20.10+
- Docker Compose v2.x
- 8 GB RAM minimum (16 GB recommended)
- Ports 3000, 8080, 8081, 9000, 9092, 9093, 9999 available
Step 1 — Clone & Configure
git clone https://github.com/infrasage/infrasage.git
cd infrasage
Create a .env file for your secrets:
cat > .env <<EOF
CLICKHOUSE_PASSWORD=infrasage-dev
ANTHROPIC_API_KEY=sk-ant-YOUR_KEY_HERE
SLACK_WEBHOOK_URL=https://hooks.slack.com/services/YOUR/WEBHOOK/HERE
EOF
:::tip Get an Anthropic API Key Visit console.anthropic.com to create a free API key. The key enables LLM-powered root cause analysis. Without it, anomaly detection and alerting still work, but AI-generated RCA summaries will be disabled. :::
Step 2 — Start the Stack
docker-compose up -d
This starts:
- ClickHouse — time-series storage (port 9000 / 8123)
- Redpanda — Kafka-compatible broker (port 9092)
- Ingestion Gateway — telemetry entry point (port 8080)
- Telemetry Operator — processing & storage (port 8081)
- AIops Engine — detection & RCA (port 8080 internal, 9093 webhook)
- Prometheus — metrics scraping (port 9999)
- Grafana — dashboards (port 3000)
Wait ~30 seconds for all services to initialize:
# Poll until all health checks pass
until curl -sf http://localhost:8080/healthz && curl -sf http://localhost:8081/healthz; do
echo "Waiting for services..."; sleep 5
done
echo "All services healthy!"
Step 3 — Send Your First Telemetry
curl -X POST http://localhost:8080/api/v1/telemetry \
-H "Content-Type: application/json" \
-d '{
"service_id": "my-first-service",
"metric_name": "request_latency_ms",
"value": 142.5,
"timestamp": "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"
}'
Expected response:
{"status":"ok","queued":1}
Step 4 — Open the Dashboards
| URL | What you'll see |
|---|---|
| http://localhost:3000 | Grafana — ingestion metrics, anomaly rates, system health (login: admin / admin) |
| http://localhost:9999 | Prometheus — raw metric queries |
| http://localhost:8080/healthz | Gateway health |
| http://localhost:8081/healthz | Operator health |
Step 5 — Verify Data in ClickHouse
docker exec infrasage-clickhouse clickhouse-client \
--user infrasage --password infrasage-dev \
--query "SELECT service_id, metric_name, value, timestamp
FROM infrasage.infrasage_raw_firehose
ORDER BY timestamp DESC LIMIT 5"
What's Next?
- Send more telemetry formats — First Telemetry guide
- Full installation options — Installation (Kubernetes, K3S)
- Connect your monitoring stack — OpenTelemetry, AWS CloudWatch
- Understand the architecture — Core Concepts