Mastodon.nz and the recent twitter influx

Where to begin.. It’s been an interesting fortnight!

I started hosting mastodon.nz around January 2020 on my home ‘server’ for myself and few friends. It started off as a small LXC container inside Proxmox with 2 cores and 2GB RAM allocated. It stayed this way until about 6 months ago when I kept having scheduled power outages and I couldn’t keep running it from my house while maintaining a reasonable uptime.

/kitchen_server.jpg
“Server” - April 2021

Mid 2021 a good friend of mine offered a great deal on some actual hosting in a datacenter. Now we had 8vCPU + 8GB RAM to play with, time to migrate everything. After a few hours of mastering rsync and pg_dump - it was done, we were set for a while. At least that’s what I thought..

April 2022 brought a nice little surprise - I started getting notifications of new users joining mastodon.nz. Confused I started to look at what has changed.. Didn’t take long to realise this was only the beginning. I had to allocate more resource to the container to account for the higher throughput.

You can see in the image below it started to approach the allocated 3GB - I bumped it up to 4GB, then shortly after up to 6GB. That’s as much as I could give it without moving to bigger hardware. (The drop at the end was a service restart after a version upgrade).

/masto_memory.jpg
Memory usage in mastodon.nz container

I thought that would be enough for now. Nope.

I got an email shortly after from Sendgrid advising that we were approaching their 100 email/day free tier limit. Crap. I managed to upgrade the plan to account for the burst of registrations before any emails started to bounce.

/sendgrid.jpg
Email throughput peaking around 400/day

It was about at this time I figured we probably needed to look into the future of mastodon and if we plan on maintaining it long term with a much higher capacity. I jumped on TradeMe and started working out what we could afford and what we needed to maintain a decent growth over the next 12+ months. Boom! Found the perfect thing in our price range. A secondhand HP DL360p Gen8 - With 32 cores and 80GB ram. The only issue is disks. I’ve never been one to trust secondhand disks. So ended up going over budget and bought 2 x 500GB EVO870’s and 2 x 2TB EVO870’s to run in a ZFS mirror for storage.

/server1.jpg
New server
/server_prov.jpg
Provisioning everything (Excuse the mess)
/server_disk.jpg
Disk setup

After about 6 hours of configuring and installing everything required, I was ready to make a trip to a local datacenter to rack it (Thanks to previously mentioned friend!) and start the painful migration.

Unfortunately I don’t have any photos of the datacenter/server install. But it was awesome - you can take my word for it!

Here is where we are currently sitting:

/server_resource.jpg
Current status

I’m pretty happy overall with how this has turned out. I have just finished configuring nightly off-site backups to b2backblaze (Remember: RAID is not a backup!).

Costs have gone up a little bit. It’s still manageable for the time being and I plan on supporting this long term. If you want to help out, feel free to shout me a coffee @ OpenCollective.

We are currently hosting a few other ActivityPub (Fediverse) related sites you might be interested in!

Pixelfed.nz - Photos - Photo Sharing. For Everyone.

Mtrx.nz - Chat - An open network for secure, decentralized communication.

OpenEvents.nz - Events - Tool to help manage your events, your profiles and your groups.

Peertube.nz - Videos - ActivityPub-federated video streaming platform using P2P directly in your web browser.