what’s up folks,
I am always looking for how to improve my infrastructure and these days I have been thinking about the feasibility of creating an lxc container or a vm in my proxmox just to install a db like mariadb and all the other services in another lxc’s that will need a db for example wordpress, odoo, speedtest tracker, n8n etc. will point to that lxc or vm with the db of mariadb (or another)…
would it be good?, would it be bad? Would it be a good practice? Would it provide any bad performance? or would it be a benefit?
what do you think?
I think it only make sense if you have resource constraints. Consolidation databases would free up some RAM and CPU cycles.
From perspective of maintenance and security it’s a nightmare. Depending how many services you have and what’s their migrations strategy most setups require full admin to DB some will try to create DB. You would have to tweak db scripts for those deployments. Performance wise it would put load on single DB process so you would have to inspect queries to figure out what is causing performance issues if you have any.
Database upgrades would be impacting all services. If one of them uses deprecated functions or another one is requiring to upgrade to use new release you would be in trouble.
You need to have separate users and permissions. Create databases outside of normal deployment scripts.
Generally separation of databases gives a lot of flexibility for releases, isolated database activities for performance and administrative tasks, streamlines new release upgrades.