Skip to content

PrPlanIT/HASteward

Repository files navigation

HASteward

HASteward

High Availability Steward is a (WIP) Go CLI and Kubernetes operator for database cluster triage, repair, backup, and restore. Pronounced like Haste·Ward or H.A. or Ha! Steward — flexible pronunciation. Backups use restic for block-level dedup, encryption, and compression.

badge/GitHub-source-181717?logo=github badge/GitLab-source-FC6D26?logo=gitlab Go Report Card Last Commit Open Issues Contributors

build license release updated badge/donate-FF5E5B?logo=ko-fi&logoColor=white badge/sponsor-EA4AAA?logo=githubsponsors&logoColor=white

badge/Docker-prplanit%2Fhasteward-2496ED?logo=docker&logoColor=white pulls

Supported Engines

Engine Database Operator
cnpg PostgreSQL CloudNativePG
galera MariaDB mariadb-operator

Features

Triage Read-only diagnostics: pg_controldata, grastate.dat, replication status, disk usage, split-brain
Repair Automated heal with pre-repair escrow backup, split-brain forensic capture, and safety gates
Backup / Restore Streaming dump through restic backup --stdin — no temp files on database pods
Retention Restic-style tag retention with group-aware diverged snapshot pruning
Operator Mode CRD-driven scheduler watches database CRs and runs triage/repair/backup on cron
Bootstrap Full Galera cluster recovery from total failure with dry-run preview
WAL Prune Emergency CNPG WAL cleanup for disk-full deadlock recovery
Machine Output --output json|jsonl for automation with typed envelopes, JSONL events, and --dry-run support

Documentation

Topic
CLI Reference Subcommands and global flags
Examples CLI usage examples for every subcommand
Container Usage Run HASteward via full docker run commands against a cluster
Backups Backup model, snapshot tags, retention
Safety Gates Repair and bootstrap safety matrices
Operator Mode CRDs, annotations, scheduler
Architecture Engine repair flows, backup streaming

Templates

File
Kubernetes Job Ad-hoc Job manifest for CLI operations

License

Distributed under the AGPL-3.0-only License. See LICENSING.md for commercial licensing.

About

High Availability Steward is a (WIP) Go CLI and Kubernetes operator for database cluster triage, repair, backup, and restore. Pronounced like Haste·Ward, H.A. or Ha! Steward — flexible pronunciation. Backups use restic for block-level dedup, encryption, and compression.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors