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

Create a basic Jail management interface #51

Open
yaroslav-gwit opened this issue Sep 15, 2023 · 3 comments
Open

Create a basic Jail management interface #51

yaroslav-gwit opened this issue Sep 15, 2023 · 3 comments
Assignees
Labels
feature request New feature request

Comments

@yaroslav-gwit
Copy link
Owner

yaroslav-gwit commented Sep 15, 2023

One of our customers has requested a feature, that will help them manage FreeBSD Jails in a similar fashion to VMs: automated provisioning, ZFS clone as a templating mechanism, automatic snapshots and replication, parent/backup detection, prod vs test, REST API functions, access to existing VM network bridges, default and VM-like resource limits, Jail uptime monitoring, start/stop/snapshot using our WebUI, automatic HA failover, etc.

Jails will never be a primary focus of our project, but having even a basic Jail management system will definitely help us in a long run.

I don't plan on publishing any app based, or pre-packaged Jails. Instead I would focus on creating the cross-platform app deployment approaches within Jails, FreeBSD VMs or FreeBSD baremetal hosts using Ansible, shell scripts, installation tutorials, and so on. This way it can be useful to a broader community of admins and users out there, and will boost the FreeBSD exposure.

@yaroslav-gwit yaroslav-gwit added the feature request New feature request label Sep 15, 2023
@yaroslav-gwit yaroslav-gwit self-assigned this Sep 15, 2023
@yaroslav-gwit
Copy link
Owner Author

yaroslav-gwit commented Sep 25, 2023

hoster jail start and hoster jail stop are mostly working now (just a couple of things left to do, like resolv.conf generation on jail start, check and create an empty fstab file if it doesn't exist, and generate an rc.conf file if it doesn't exist).

Moving on to implementing the hoster jail bootstrap -r 13.2-RELEASE functionality. Will keep the issue updated.

@yaroslav-gwit
Copy link
Owner Author

yaroslav-gwit commented Oct 1, 2023

  • hoster jail start is now fully working
  • hoster jail bootstrap has been implemented
  • a bug showed up in hoster jail stop, which requires me to implement a mechanism to clean-up Jail mounts:
mount | grep twelveFour

# Example output
devfs on /zroot/vm-encrypted/twelveFour/root_folder/dev (devfs)

Moving on to hoster jail deploy -r 13.2-RELEASE

@yaroslav-gwit
Copy link
Owner Author

yaroslav-gwit commented Oct 2, 2023

Done:

  • hoster jail deploy is mostly ready, just need to implement the flags to pick different resources on creation: cpu limit, ram limit, network name, ip address, etc
  • hoster jail start-all has been implemented
  • hoster jail stop-all has been implemented
  • hoster jail destroy has been implemented
  • Jail name DNS support has been implemented

Still TBD:

  • hoster jail cireset (to keep it consistent with the vm counterpart)
  • hoster jail set parent
  • hoster jail unlock-all

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature request
Projects
None yet
Development

No branches or pull requests

1 participant