Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

replicate improvements #96

Open
yaroslav-gwit opened this issue Dec 7, 2023 · 0 comments
Open

replicate improvements #96

yaroslav-gwit opened this issue Dec 7, 2023 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@yaroslav-gwit
Copy link
Owner

yaroslav-gwit commented Dec 7, 2023

vm replicate will be moved into a separate command replicate (just like vm snapshot -> `snapshot). This needs to happen in order to support Jails replication as well as the VMs replication.

Here is the list of improvements I want to introduce in the process:

  • multiple transports support, not only SSH (I'll start adding more transports later, but an initial support for multiple transports will be implemented within this issue)
  • limited SSH users, with only access to the necessary ZFS functions (using ZFS delegation), the idea is to create limited usr_zfs_send and usr_zfs_recv users dedicated to ZFS replication only (principle of least permissions - even if the user account is compromised, the attacker will be limited to only what the replication user can do)
  • support for Jail replication
  • background replication (to avoid wrapping up the replication process inside the tmux, and to allow more flexible automation using our new custom scheduler)

And some things I will not look into implementing any time soon:

  • support for regular ZFS datasets (eg specifying a dataset as the source, instead of the VM name or a Jail name)
  • ability to specify the receiving dataset
  • pull-based replication support (for purely backup systems, isolated from the rest of the cluster)

But all the above can be performed by the Sanoid/Syncoid combo, as Hoster isn't particularly picky as long as the VM disk is in the correct path. Hoster on the other hand has a totally different issue scope: replicate the VMs/Jails to another system with as low effort as possible, to provide the HA capabilities and a basic level of hyper-convergence.

@yaroslav-gwit yaroslav-gwit added documentation Improvements or additions to documentation enhancement New feature or request labels Dec 7, 2023
@yaroslav-gwit yaroslav-gwit self-assigned this Dec 7, 2023
@yaroslav-gwit yaroslav-gwit changed the title Implement better replicate replicate improvements Dec 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant