Skip to content

Repository files navigation

Aether Monitoring Platform

Multi-tenant infrastructure monitoring built in Rust. Lightweight agents on your servers, central control plane with PostgreSQL.

Features

  • System metrics — CPU, memory, disk, network
  • Service monitoring — Docker containers, systemd units
  • External checks — HTTP/HTTPS/TCP/DNS/TLS from central workers
  • Incidents & uptime — state machine with configurable thresholds
  • Remote agent config — versioned, signed, atomic apply
  • Offline resilience — SQLite queue when server unreachable
  • Multi-tenant — organizations, RBAC (owner/admin/operator/viewer)

Security

  • TLS 1.3 only (rustls)
  • Ed25519 per-agent request signing (not Bearer-only)
  • SHA-256 body checksum, timestamp + nonce anti-replay
  • Server-signed remote configurations
  • Argon2id passwords, JWT access/refresh tokens

Quick Start

# Prerequisites: Rust 1.85+, Docker
cp .env.example .env
docker compose up -d postgres
export DATABASE_URL=postgres://aether:aether@localhost:5432/aether
sqlx migrate run
cargo run -p aether-server --bin monitor-server

See docs/development.md for full setup.

Binaries

BinaryDescription
monitor-serverCentral API and background workers
monitor-agentHost monitoring daemon
# Enroll an agent
monitor-agent enroll --server-url https://monitor.example.com --token <token>
monitor-agent run

Architecture

┌─────────────┐ HTTPS + Ed25519 ┌──────────────┐
│ monitor-agent│ ──────────────────────► │monitor-server│
│ (per host) │ │ (Axum API) │
└─────────────┘ └──────┬───────┘
│
┌──────▼───────┐
│ PostgreSQL │
└──────────────┘

Documentation

DocumentDescription
ArchitectureSystem design, data flows, workers
SecurityThreat model, auth, hardening
Agent ProtocolWire format, signing, error codes
APIHTTP endpoints, RBAC
DatabaseSchema, partitions, retention
DeploymentDocker, systemd, production
DevelopmentLocal setup, testing
AGENTS.mdContributor guide

Workspace Crates

CratePurpose
aether-agentAgent binary + collectors
aether-serverServer binary + API
aether-protocolWire payloads + signing
aether-domainPure domain logic
aether-databasesqlx repositories
aether-sharedErrors, crypto, TLS
aether-telemetryTracing + metrics
aether-test-utilsTest helpers

Development

make check # fmt + clippy + test
make lint
make deny

License

GNU Affero General Public License v3.0 or later — Copyright (c) 2026 HostNatPro.

About

Solution open source pour supervision

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages