The goal for this project is provide the bhyve and jails virtualization combined with ZFS atop of minimal FreeBSD system. The system is going to consist of kernel, minimal set of system libraries and service utilities plus middleware. The middleware is to
- Create VM instance
- Destroy VM instance
- Move VM instance to another computing node.
- Monitor the VM instances and take pre-configured actions in depend on certain conditions, like VM faults or hangs.
- Backup and replicate the VM storage.
- Provide REST api for all above.
The ZFS ZVOLs and iSCSI targets will be used as a VM storage. The VALE will be used as an inter-VM ethernet switch.
The main reason of starting this project is my desire to get familliar with golang, bhyve and FreeBSD in common.