The contains which would use the volumes are spread across the hosts or only in a single host?
If there are multiple hosts involved, you can try Convoy with VFS/NFS driver or our newly released GlusterFS driver which integrated with Rancher. It would be official release soon. And as you know, with multiple hosts involved, the network connection is pretty critical to the performance.
If it’s an single host, the highest performance can be gain through local mounted VFS driver, as you can imagine access directly on the filesystem would incur no overhead, though it’s least flexible. Device mapper should be good enough, and it would offer decent snapshot/backup feature as well, which can be convenient.
We want to keep the highest performance and keep the database container and database volumes on a single host. That way taking full advantage of the PCIe.
OK I read the VFS information and VFS can be used with a local path and is separate from NFS. So I may use VFS with a local path. Is there some documentation on some pros/cons of VFS vs devicemapper?
Also maybe this is a separate question but it looks like the Convoy daemon is restricted to a single backend. So in our case if we want our database container to run a local persistent filesystem but then also have containers with shared volumes across hosts using Gluster, then what can we do? Maybe in that case we can’t use Gluster and would just stick to some NFS paths?
In fact VFS is NOT separate from NFS. NFS is a just a NFS mounted directory in Convoy so far, so you cannot have both at the same time.
In the single host case I almost always think Device Mapper is better choice. VFS/NFS cannot do real snapshot/backup. And the performance of device mapper is the same as LVM. The overhead of device mapper should be small and the snapshot/backup function is much more powerful I think. You may want to measure the performance difference before you decide.
Convoy supports multiple backends. So device mapper can be used with VFS/NFS or glusterfs. See here and here
GlusterFS is currently integrated with Rancher, which means you have to use Rancher to use Convoy’s GlusterFS feature.