Auto Snapshot is a tool designed to run as StatefulJob
crd in cosmos-operator
to automate the process of creating and uploading snapshots of blockchain data. This tool is particularly useful for blockchain nodes that need to periodically back up their data.
- Automated Compression: Compresses blockchain data directories into a single
.tar.lz4
file. - Uploader Support: Supports uploading the compressed file to AWS S3/cloudflare R2/GCS.
- Storage Optimization: Can reduces the storage size on local machines by compressing the data and uploading it to a remote storage via I/O pipeline without local storage footprint.
To install the tool, clone the repository and build the binary:
git clone https://github.com/allthatjazzleo/auto-snapshot.git
cd auto-snapshot
go build -o auto-snapshot main.go
Run the tool with the following command:
./auto-snapshot --chain-home <path_to_chain_home> [--keep-local] [--uploader <uploader_type>]
- AWS_S3_BUCKET: The S3 bucket where the snapshot will be uploaded if you are using S3 uploader.
- GCS_BUCKET: The GCS bucket where the snapshot will be uploaded if you are using GCS uploader.