Building ZFS-based VM images
Allan Jude
allanjude at freebsd.org
Fri May 7 16:47:59 UTC 2021
On 5/6/2021 11:17 AM, Alan Somers wrote:
> It's easy to build a UFS-based VM image just by setting WITH_VMIMAGES in
> release.conf and running release.sh. But what about ZFS-based images?
> What's the easiest way to build a ZFS-based VM image, using a pool layout
> similar to what the interactive installer uses?
> -Alan
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
With the new scripting support, it is fairly easy with poudriere-image
It also has the advantage of being able to build the images from
poudriere jails you already have (or can build from FTP without compiling).
The pre/post build script stuff is merged already, although my example
scripts are in a different pull request that I need to rebase around
some restructuring first.
Anyway, you can use poudriere-image with the pre/post scripts included here:
https://github.com/freebsd/poudriere/pull/731/files#diff-6607907a033a4e5e5e21da56960ed7ccbfb6dd4a85d66615553d2221d75c0998
and it will make a VM image with the same layout as if you had used the
installer (or you can customize it as you see fit)
I'm currently using this to build images for AWS and bhyve, but also to
generate installer ISOs that run a script to format the drives and
create the zpool, then 'fetch -o - url | zfs recv -F zroot' to install a
replication stream of an entire pool.
For upgrades, we do the same but only replace the boot environment.
--
Allan Jude
More information about the freebsd-current
mailing list