Skip to main content

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

URLWhat you'll see
http://localhost:3000Grafana — ingestion metrics, anomaly rates, system health (login: admin / admin)
http://localhost:9999Prometheus — raw metric queries
http://localhost:8080/healthzGateway health
http://localhost:8081/healthzOperator 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?