First, this question is similar to, but not the same as, mayers' host jail shared zfs dataset question. I didn't want to derail his thread.
So I have two physical boxes that are dedicated jail servers running Bastille. I have the /usr/local/bastille/backups is nfs mounted from my TrueNAS host so it can be shared between the two servers. However, I have several jails that run db servers, and I learned a while back that postgresql and mysql databases are happier running on zfs datasets with recordsizes of 8k and 16k respectively. I usually run the recordsize on my pools at 1M on the host system and therefore the jails, unless there is a reason not to. So this brings a up couple of questions:
--vr
So I have two physical boxes that are dedicated jail servers running Bastille. I have the /usr/local/bastille/backups is nfs mounted from my TrueNAS host so it can be shared between the two servers. However, I have several jails that run db servers, and I learned a while back that postgresql and mysql databases are happier running on zfs datasets with recordsizes of 8k and 16k respectively. I usually run the recordsize on my pools at 1M on the host system and therefore the jails, unless there is a reason not to. So this brings a up couple of questions:
- Since I have different dataset names on each host (NCC72381 and NCC72435 respectively), what happens to the dataset when the jail gets migrated?
- Should I create a dataset to live in the jail's /var/db/{postgresql,mysql} on both hosts, set the recordsize, and then when it gets migrated, it will wind up in the right place?
- Third, and most importantly, is this majoring in minors? I mean, is the database performance difference between 1M and 8k small enough that it is not worth getting wrapped around the axle and wasting brain cycles on this? Because if I don't need the smaller recordsize, then there's no point in even creating a separate dataset.
--vr