Self hosting doesn’t mean “being wasteful and letting containers duplicate services”. I want to know which DB application X is using, so I pool it for applications Y and Z.
Comment on 18% of people running Nextcloud don't know what database they are using
dustyData@lemmy.world 4 weeks agoYeah, that is the kind of concern for the service developer or a very opinionated sys admin. For self-hosting, few people will reach the workload where such a decision has any material or measurable impact.
u_tamtam@programming.dev 4 weeks ago
Ajen@sh.itjust.works 4 weeks ago
For most applications the overhead of running a second DB server is negligible.
absentbird@lemmy.world 4 weeks ago
And if it’s SQLite (which I believe is the default) it’s really just reading and writing a file on the file system.
u_tamtam@programming.dev 4 weeks ago
I disagree. You are just entertaining the idea that servers must always and forever be oversized, that’s the definition of wasteful (and environmentally irresponsible). Unless you are firing-up and throwing-away services constantly, nothing justifies this and sparing the relatively low effort it is to deploy your infrastructure knowingly.
Ajen@sh.itjust.works 4 weeks ago
Do you have the data to back that up? Have you measured how much of an impact on system load and power consumption having 2 separate DB processes has?
Roughly the same amount of work is being done by the CPU if you split your DBs between 2 servers or just use one. There might be a slight increase in memory usage, but that would only matter in a few niche applications and wouldn’t affect environmental impact.
tburkhol@lemmy.world 4 weeks ago
This is one of my pet peeves with containerized services, like why would I want to run three or four instances of mariadb? I get it, from the perspective of the packagers, who want a ‘just works’ solution to distribute, but if I’m trying to run simple services on a 4 GB RPi or a 2 GB VPS, then replicating dbs makes a difference. It took a while, but I did, eventually, get those dockers configured to use a single db backend, but I feel like that completely negated the ‘easy to set up and maintain’ rationale for containers.
u_tamtam@programming.dev 4 weeks ago
Precisely what pre-devops sysadmins were saying when containers were becoming trendy. You are just pushing the complexity elsewhere, and creating novel classes of problems for yourself (keeping your BoM in control and minimal is one of many others that got thrown away)
stardreamer@lemmy.blahaj.zone 4 weeks ago
Exactly. Unless you are actively doing maintenance, there is no need to remember what DB you are using. It took me 3 minutes just to remember my nextcloud setup since it’s fully automated.
It’s the whole point of using tiered services. Do you also worry about your wifi link-level retransmissions when you are running curl?
IncogCyberspaceUser@lemmy.world 4 weeks ago
Sorry for the newbie question, but how is your nextcloud setup automated? Is that like a compose/yaml file?
stardreamer@lemmy.blahaj.zone 4 weeks ago
stares at 300 line shell script+ansible mess that updates/sets up Forgejo, Nextcloud, ghostcms
“Yes… It’s automated”