Change Storage (Size and Driver)

Hi!

You can create a new storage pool, which is bigger in size, and then move all the containers there.
Finally, switch to the new storage pool as the default one, and release the original pool.

For this to work, you need to have a recent LXD (i.e. the snap package with channel stable and not the LXD 3.0.x). To verify, run lxc move --help and check whether there is a --storage option.

It does not matter whether you use LVM or ZFS or btrfs. They all work. Since you use Debian and has ZFS only through DKMS, you may safely choose LVM or btrfs.

Here we go.

$ lxc storage list
+------+-------------+--------+--------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+------+-------------+--------+--------+---------+
| lxd  |             | zfs    | lxd    | 73      |
+------+-------------+--------+--------+---------+
$ lxc storage create secondpool zfs size=2GB
Storage pool secondpool created
$ lxc stop mycontainer
$ lxc move mycontainer mycontainer-tobemoved
$ lxc move mycontainer-tobemoved mycontainer --storage=secondpool
$ lxc start mycontainer

Once you have moved all the containers to the new storage pool, you can remove the original storage pool and keep using the new one. With lxc storage list, you can see how many containers are located in each pool.