this post was submitted on 28 Jun 2023
304 points (98.4% liked)

Asklemmy

43736 readers
1094 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy ๐Ÿ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_[email protected]~

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 13 points 1 year ago (1 children)

What does it actually cost? I have no basis for a ballpark guess even. I've seen this question asked to a number of admins and haven't seen a direct answer.

It's hard to judge how sustainable a donation based approach is without that info.

[โ€“] [email protected] 27 points 1 year ago* (last edited 1 year ago) (1 children)

The costs will vary wildly depending on how the instance has been set up. If you set up all necessary services on a single VPS (as is the most common approach for smaller instances), then you can probably get by on $10-$20 a month. Splitting different services onto different servers, adding backups, load balancing, CDNs, redundancy, caches, etc will quickly increase the cost. Bigger instances need more powerful servers, that will increase the cost further.

On lemm.ee, we are currently not using very high-end servers, but we ARE using all the other things I mentioned above, and the monthly cost is currently hovering around $200 (that's for 3 servers, a managed database, object storage, load balancing, a global CDN, and an e-mail provider). This is still on the very cheap side in the grand scheme of running online platforms, but definitely much more than I would want to pay for a single-user instance for example.

[โ€“] [email protected] 17 points 1 year ago* (last edited 1 year ago) (1 children)

And honestly, 200 is on the high-end even with this setup. lemmy.dbzer0.com is way less

[โ€“] [email protected] 13 points 1 year ago (1 children)

$200 is still on the low end, trust me - high end managed databases and compute resources are in the thousands, adding redundancy to that will double or triple it ๐Ÿ˜ƒ

[โ€“] [email protected] 13 points 1 year ago* (last edited 1 year ago) (2 children)

Ye if you're adding like super redundancies etc sure. But I mean, it's lemmy. We don't need all that. My whole VM config is in ansible. I can literally scrap the whole thing, and redeploy it in 10 minutes. I just need to have a DB backup in case of some sort of catastrophic failure

[โ€“] [email protected] 10 points 1 year ago* (last edited 1 year ago) (2 children)

IaC is awesome ๐Ÿ‘ lemm.ee is deployed using Terraform.

My lemmy_server redundancy is mostly just so I can do infra changes without downtime (just take one node out of the load balancer, redeploy it and put the new one in), but it does also help a bit with general performance. I agree it's not strictly necessary, the vast majority of other instances are just running on a single server, but I do think it's very nice to have.

For back-ups, I have point-in-time recovery, so I can restore the database to any random timestamp - and it has actually come in useful once already when two weeks ago I was able to restore to a good state about a few minutes after a problem - I think nobody even noticed that anything happened in that case ๐Ÿ˜ƒ

[โ€“] [email protected] 6 points 1 year ago* (last edited 1 year ago)

Problem with Terraform is it assumes cloud providers, which tend to be expensive (or at least, I don't know a way to do terraform on hetzner dedis :D )

My solution is to get cheapskate VPS and dedis and loadbalance them as frontends. The VM request is manual, but I only have to do this once anyway. It's what I'm currently doing with the AI Horde. Of course, that doesn't help when there's DB changes but still.

What object storage are you using btw? I'm thinking to move to R2 or smt since I've had good experience with them until now. Contabo's is way cheaper but when I tried to use it for high-demand stuff it dropped dead on the spot. But it might be ok for Lemmy.

[โ€“] [email protected] 3 points 1 year ago

I can't thank you enough for sharing your knowledge, I am very interested in learning about server management and being able to read your thoughts is something I find extremely invaluable, please keep up with the great work! ๐Ÿ˜

[โ€“] [email protected] 5 points 1 year ago* (last edited 1 year ago)

Yeah pretty much my setup. Full DB and pictrs backups uploaded to Backblaze B2 every few hours. Config files all backed up. Also send a copy to my home lab. Encrypted on the server before it gets sent out.

Worst case - we lose a few hours of data.

I keep about a week's worth of backups on B2 (and 2 days on my home server) which is just over 200GB now. But that costs next to nothing on B2.

Maybe eventually if my instance grows more I might consider doing a replica DB on another server.

My total costs are like, $7.50 a month but I only have 15 actually active users. I don't need to grow, but I'm willing to. If the costs increase too much I'll ask for donations and if that stops covering things I'll just close registrations. That's the great part of not being a business chasing infinite growth.