In a clustered production environment what have people found to work the best?
A single large root volume on a container?
Attaching a block volume or filesytem based container?
The use case would be a mysql container with data that should be easily migrated to another lxd host during maintenance. Its not a huge Db at 6Gb of data. I have read the docs that you need to snapshot both the container and the datavol if you go the separate route.
Can you resize a container after its started while its running? or do you have to make it an image and then restart it?
can you resize a block attached volume while the container is running?
I make the choice by workload. If it’s a light container, I am okay snapshotting the whole root fs. If it’s a database, I am inclined to mount a storage volume for the data path.
This is especially true with traditional RDBMS. Usually you can count on 1) a pretty well-documented server migration procedure, that probably involves taking your /data (or equivalent) folder, moving it to another server, and doing some kind of recovery/init, and also 2) RDMBS are usually picky about versioning in their on-disk format, so if you need to roll back a version - or test an upgrade - it is convenient to be able to move the volume around.