zfsnapr
velero
Our great sponsors
zfsnapr | velero | |
---|---|---|
7 | 42 | |
21 | 8,212 | |
- | 2.2% | |
5.6 | 9.6 | |
8 months ago | 7 days ago | |
Ruby | Go | |
BSD 2-clause "Simplified" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
zfsnapr
-
Kopia: Open-Source, Fast and Secure Open-Source Backup Software
FreeBSD had a pretty decent option in the base system two decades ago - FFS snapshots and a stock backup tool that would use them automatically with minimal effort, dump(8). Just chuck `-L` at it and your backups are consistent.
Now of course it's all about ZFS, so there's at least snapshots paired with replication - but the story for anything else is still pretty bad, with you having to put all the fiddly pieces together. I'm sure some people taught their backup tool about their special named backup snapshots sprinkled about in `.zfs/snapshot` directories, but given the fiddly nature of it I'm also sure most people just ended up YOLOing raw directories, temporal-smearing be damned.
I know I did!
I finally got around to fixing that last year with zfsnapr[1]. `zfsnapr mount /mnt/backup` and there's a snapshot of the system - all datasets, mounted recursively - ready for whatever backup tool of the year is.
I'm kind of disappointed in mentioning it over on the Practical ZFS forum that the response was not "why didn't you just use ", but "I can see why that might be useful".
Well, yes, it makes backups actually work.
> Also, it's unclear to me what happens if you attempt a snapshot in the middle of something like a database transaction or even a basic file write. Seems likely that the snapshot would still be corrupted
A snapshot is a point-in-time image of the filesystem at a given point. Any ACID database worth the name will roll back the in-flight transaction just like they would if you issued it a `kill -9`.
For other file writes, that's really down to whether or not such interruptions were considered by the writer. You may well have half-written files in your snapshot, with the file contents as they were in between two write() calls. Ideally this will only be in the form of temporary files, prior to their rename() over the data they're replacing.
For everything else - well, you have more than one snapshot backed up, right?
1: https://github.com/Freaky/zfsnapr
-
ZFS for Dummies
I make remote snapshot backups with Borg using this: https://github.com/Freaky/zfsnapr
zfsnapr mounts recursive snapshots on a target directory so you can just point whatever backup tool you like at a normal directory tree.
I still use send/recv for local backups - I think it's good to have a mix of strategies.
-
BorgBackup, Deduplicating archiver with compression and encryption
This is why I made https://github.com/Freaky/zfsnapr
Instead of working out how to teach my backup tools about snapshots, I just mount them in a subtree and use that as a chroot env.
-
Ask HN: Can I see your scripts?
borg-backup.sh, which runs my remote borg backups off a cronjob: https://github.com/Freaky/borg-backup.sh
zfsnapr, a ZFS recursive snapshot mounter - I run borg-backup.sh using this to make consistent backups: https://github.com/Freaky/zfsnapr
mkjail, an automatic minimal FreeBSD chroot environment builder: https://github.com/Freaky/mkjail
run-one, a clone of the Ubuntu scripts of the same name, which provides a slightly friendlier alternative to running commands with flock/lockf: https://github.com/Freaky/run-one
-
Correct Backups Require Filesystem Snapshots
I wrote https://github.com/Freaky/zfsnapr a few months ago so I could finally have point-in-time consistent Borg backups with ZFS snapshots, without having the mess of teaching Borg where every .zfs directory was.
It recursively snapshots mounted pools, and recursively mounts snapshots of the mounted datasets into a target ready to point your backup tools at. I do so via a chroot so I didn't need to make any changes to my Borg setup - just to how I run it.
-
Snapshot stat changes on access
This is the approach I take with zfssnapr - make a recursive snapshot of pools and then use mountpoint/canmount to recursively mount datasets on a location. Then I can just point borg at it without having to teach it where exactly each .zfs directory is.
- zfsnapr — recursively mount a system snapshot on a given location
velero
-
What is the proper, kubernetes native way of working with multiple clusters for DR, HA?
Openshift last I looked used Velero under the covers for the functionality, which works fine in standard kubernetes. Most if not all that Openshift does is Open source.
-
Is there a way to clone an existing Azure Kubernetes Cluster?
Valero
-
What are the best practices for backing up k8S related ressources in RKE2 clusters running on VSphere ?
velero is also a popular solution to for k8s backup that is 3rd party you might check out.
-
Ask r/kubernetes: What are you working on this week?
Logical backups using pre and post hooks thanks to this suggestion https://github.com/vmware-tanzu/velero/issues/2763 working way better than kanister blueprints.
-
Tool for dumping manifests from your Kubernetes clusters
While not discounting OP or the work in this repo (seems like a fun k8s/go project), folks might check out Velero for this purpose if they're looking to rely on this kind of export in prod: https://github.com/vmware-tanzu/velero
- Kubernetes Backup & Restore - Recommended options?
-
Hyper-v backup for Kubernetes cluster
Hyper-V itself does not directly support backing up container-based platforms like Kubernetes clusters. To back up a Kubernetes cluster, you would typically use tools that interact with the Kubernetes API to capture the necessary data and metadata for backup purposes. Some of those tools are Velero https://velero.io/ (formerly Heptio Ark), Kasten K10, and Stash.
-
Kubernetes postgres backups
For Kubernetes-land, https://velero.io/ is awesome - but I haven't used it for online-database backups yet. If you're exploring, I'd checkout Velero - if you just need something to work reliably, I'd checkout Percona.
-
EKS Etcd Backup
If you're looking for a backup solution for managed kubernetes, check out Velero. It is great for non-managed kube as well (but you've got other options like etcd backups)
-
(Longhorn/K3s) Failed cluster, made new cluster, are PVs salvageable?
You can also leverage https://velero.io/ to backup both cluster state and pvc state to s3
What are some alternatives?
BorgBackup - Deduplicating archiver with compression and authenticated encryption.
rook - Storage Orchestration for Kubernetes
ioztat - ioztat is a storage load analysis tool for OpenZFS. It provides iostat-like statistics at an individual dataset/zvol level.
k8s-object-dumper - Kubernetes object dumper for use as a pre backup command in K8up.
benchmarks - Benchmarks of different backup tools.
prometheus - The Prometheus monitoring system and time series database.
RcloneZFSBackup - Backup ZFS snapshots to cloud storage using RCLone
istio - Connect, secure, control, and observe services.
borgmatic - Simple, configuration-driven backup software for servers and workstations
Scaleway-cli - Command Line Interface for Scaleway
borgtui - A nice TUI for BorgBackup
Grafana - The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.