Mastodonの自宅鯖運用について

Mastodon の自宅鯖運用

(主に Twitter 改悪を契機として) これまで何度か Mastodon ブームがあったため、存在を知っている人は多いと思う。 今更説明しないくてもいい気がするので、 ここ とかをご参照ください。

脱 Twitter というモチベだけで Mastodon のサーバを自宅運用している。数年前は VPS を利用していたが、維持費がバカにならないため現在は使っていない。その自宅サーバだが、ここ1ヶ月くらいで以下のように環境移行を繰り返した。

  1. Raspberry Pi 4B
  2. Dell の適当 PC
  3. Mac Pro (2013)

Raspberry Pi 4B から Dell の PC へ

元々は Raspberry Pi 4B (RAM 8GB) で Mastodon を動かしていた。Arm プロセッサで省電力、また RAM も 8GB あれば充分だと思っていたためだ。前者 (CPU の性能) について、目論見が外れることとなる。

ぶち当たった問題は、周りの人の投稿が30分程度遅延して表示されるというものだった。自分だけ30分前の世界に生きているのである。

Mastodon では、Twitter でいうところのフォローフォロワーといった概念だけではなく、 サーバ間の繋がりによっても表示される投稿1 が変わってくる。

連合タイムラインというものに、リレーサーバを介した投稿が集まる。結果、フォローしていない人の投稿も見ることができる。

裏で非同期処理をしているのが Sidekiq というものらしく、 このエントリには以下のように表記されていた。

Ruby 製のバックグラウンドジョブフレームワーク Sidekiq

Raspberry Pi 4B ではこの Sidekiq のキューを処理しきれず、夜間のピーク時、前述のように周りの方々の投稿が30分遅れで TL に表示されるような状態に陥った。

そこで、今後の環境移行のしやすさ、運用保守性を高めることを目的とし、手持ちの Dell の適当 PC に Ubuntu Pro をインストールし、Docker を使って Mastodon サーバを運用するようにした。

このときの参考リンクは以下

Dell の PC から Mac Pro (2013) へ

Dell の PC での運用を2週間程度行ったが、 この運用での難点はファン音だった。静音 PC でもない普通のデスクトップ PC だったため本当にうるさかった。 そこで、中古で買って転がしていた Mac Pro (2013) にも同様に Ubuntu Pro をインストール、Docker 環境を構築した。macOS で使っていたとき、アイドル時に静かだったことを思い出したためである。ちなみに、Mac Pro (2013) は macOS Monterey でサポートが切られている。悲しい。

結果としては大正解だった。ファンは静かで冷却性も高い。なんなら排出される空気がキンキンに冷えている。 筐体にはゴミ箱という不名誉なあだ名が付いてしまったが、流石は Apple。


1 ...自分が見たい投稿は自鯖で処理しなければならない。明示的に設定した場合の画像などは別

コメント

このブログの人気の投稿

この支配 (Twitter, はてなブログ Pro) からの卒業