1 minute read

Ground control to Mastodon… Ground control to Mastodon…


This is the fourth installment of a series of posts about taking back control of my web presence. Part 1 is about hosting, Part 2 talks about DNS and in Part 3 I rediscover Proxmox.

I was running my Mastodon instance on the Oracle Cloud Free Tier, but as detailed in part 1, it was time to move away and close down my Oracle account.

Moving Mastodon

Since the instance on Oracle Cloud was a different architecture - aarch64 vs x86_64 - I was fearing some issues when transferring the data. In the end, it was really simple:

  1. Set up a new instance according to the documentation: Running your own server
  2. Follow the migration documentation: Migrating to a new machine
  3. Profit!

It really was that easy. Kudos to the creators for having great documentation!

Moving Object Storage

I was also using Backblaze B2 as an object storage, together with Cloudflare - they are both part of the Bandwidth Alliance, a partnership where you pay no egress costs from Backblaze.

Finding an alternative was a bit trickier: I didn’t want to have to pay outrageous egress costs (which unfortunately is the case on a lot of these object stores), and the data pricing had to be reasonable. In the end I discovered Tebi, a company based out of Cyprus which has been around now since 2020.

Setting up a new account was remarkably easy, and they support a subset of the AWS Bucket Policies which allowed me to only allow traffic from my specific IP addresses (after implementing the cache). The Pay-As-You-Go plan comes with 25GB storage (50GB, but atleast two copies are required for redundancy) and 250GB data transfer out of the box, and you pay $0.02 per GB stored and $0.01 GB transferred - decently priced and sufficient for my use.

I also contacted their support a few times to clarify things, and they were very quick and responsive.

Transferring the objects was done using rclone, and reconfiguring Mastodon was also a piece of cake using the documentation. As an added safeguard I also implemented proxying of the object storage so that the object store only gets hit once for new items, massively reducing any egress traffic.

Updated:

Leave a comment