Installation

Three supported install paths. Pick the one that matches your target: Docker Compose for evaluation, hardened Compose for single-host production, or Kubernetes for HA.

Prerequisites

Hardware

ResourceMinimum (evaluation)Recommended (production)
CPU2 cores4+ cores
RAM4 GB8+ GB
Disk20 GB100+ GB SSD (NVMe preferred)
Network1 Gbps10 Gbps for > 1 TB/day ingest

Disk requirements scale with ingest volume + retention. As a rough planning number, OpenSearch needs ~1 GB on disk per 1 GB of indexed logs at default replica settings. Postgres footprint stays small (metadata only).

Software

Ports

PortServiceRequired for
8080API server + UI (HTTP)Browser access, agent HTTP install scripts
9091API server (gRPC)Agent connections
1514/UDP, 1514/TCPSyslog gatewayOptional: legacy syslog sources
2055/UDPNetFlow ingestOptional: NetFlow / IPFIX collection

For production, you'll typically front 8080 with a reverse proxy doing TLS termination on 443.

Compose (single host)

deploy/compose.yaml brings up the full stack with sensible production defaults: resource limits, persistent named volumes, dropped capabilities, and override-via-env-file for secrets. Single command to start, single command to upgrade.

# Copy and edit the env files before starting
cp deploy/env/api-server.env deploy/env/api-server.env.local
$EDITOR deploy/env/api-server.env.local   # set DATABASE_DSN with strong password, SMTP, etc.

podman compose -f deploy/compose.yaml up -d

For HA, you'd run separate hosts (or VMs) for PostgreSQL streaming replication and OpenSearch multi-node — see the in-platform docs at /docs/deployment/production-ha.md after install.

Kubernetes (Helm)

For multi-node HA, autoscaling workers, and operator-managed storage. The chart is published as an OCI artifact.

# After extracting the source archive (see above):
helm install aethonlog ./deploy/helm/aethonlog \
  --namespace aethonlog --create-namespace \
  --values my-values.yaml

A starting values.yaml with sensible production defaults ships in the source tree at deploy/helm/values.example.yaml. After install, the full Helm chart reference is at /docs/deployment/kubernetes.md on the running instance.

Need a managed AethonLog? If you want the platform but not the operational burden, contact us via the home page — managed instances run on a dedicated tenant with the same software, but we handle upgrades, backups, and on-call.

Verifying the install

Regardless of install path, the platform is healthy when:

curl http://localhost:8080/healthz    # → 200 "ok"
curl http://localhost:8080/readyz     # → 200 with dependency map
curl http://localhost:8080/metrics    # → Prometheus metrics

Then open http://localhost:8080 in a browser. On a fresh install you'll see the first-run setup wizard — see Quick Start for the walk-through.

Upgrading

Compose:

# Fetch the latest source archive (overwrite the existing extracted tree).
curl -fLO https://aethonlog.com/releases/aethonlog-latest.tar.gz
tar -xzf aethonlog-latest.tar.gz
cd aethonlog
podman compose -f deploy/compose.yaml up -d

Migrations run automatically on api-server start. Roll back by checking out the prior tag and re-running.

Helm:

helm upgrade aethonlog ./deploy/helm/aethonlog \
  --namespace aethonlog --reuse-values --version <new-version>