jails Migrating (bastille) jails between jail hosts with additional datasets

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:
  • 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.
Thanks,
--vr
 
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?
No definitive answer, but you could do some tests and measurements and see if it makes a difference with your workload. Setting the recordsize is typically done when you need to squeeze all the performance you can get out of it. So heavy workloads are going to benefit the most. Your workload may not even notice a difference. Or there might be a difference but it's not going to matter much on the overall performance. You can have a really, super fast database but the application might relatively slow, doing lots of processing itself, then the overall performance difference is marginal and may not be worth the extra hassle.
 
No definitive answer, but you could do some tests and measurements and see if it makes a difference with your workload. Setting the recordsize is typically done when you need to squeeze all the performance you can get out of it. So heavy workloads are going to benefit the most. Your workload may not even notice a difference. Or there might be a difference but it's not going to matter much on the overall performance. You can have a really, super fast database but the application might relatively slow, doing lots of processing itself, then the overall performance difference is marginal and may not be worth the extra hassle.
I have a postgresql database running under my zabbix install (this is relatively new), mysql under my mediawiki install, and so forth. Being on jails on relatively low-powered hardware, it probably won't matter...

Thanks for your input...
 
Back
Top