Mastodon
twitter から mastodon への流出/流入がブームらしい。何周目かわからんけど
古くからある既存のデカいところにアカウントを作る方が多そうな印象を受ける。
ウケるw。自前で立てる根性と甲斐性とスキルは持ち合わせてなさそうだ
Mastodon のホスティングサービスは少ないが存在してるようだ。おひとり様で使うぶんには全然アリな価格設定じゃないですかね。
しかし昨今の流入が多すぎたのか、新規受け付けを停止しているようだ。また、インフラをユーザーごとに分離しきっていないのか、不安定だの落ちるだのを目撃する。がんばってほしい
根性と甲斐性とスキルがある人は、AWSl, Digital Ocean, レンタルサーバー、はたまた自宅サーバーなどに立てる選択肢がある。
mastodon は OSS であり、 docker-compose.yml まで用意されている。読めばだいたい必要なものが理解できるだろうし、 Docker を剥がして1台のサーバーに押し込めて立てることもできよう。
AWSでマネージドサービスを活用した構成にすると、月間 $62 くらいで立つらしい。
↑で利用してる CFn テンプレートは↓で配布されている。RDS, ElastiCache はこのインスタンスタイプで、そこそこの人数の負荷に耐えそうな気はする。
そこそこの人数に耐える構成とか考え始めてしまいますね....
- web, streaming, sidekiq は AutoScaling で伸縮させないと無理ゲー
- Fargate のインスタンスタイプも上げてく必要があるかな
- web は ALB を前に立てて WAF も付けておきたくなりますね
- CloudFront は効きが悪そうだなあ...。アセット配信には効きそうだし、無いよりマシではあるのだろうけど。WordPress に CloudFront を被せるほどは効かなそう
- streaming は private な NLB を前に立てておけばいいのかな
- sidekiq は生のまま立てとけばよさそうだな
- redis は ElastiCache Redis だとして、Mastodon て Redis に何を読み書きしてるのか。sidekiq だけなら、リードレプリカ1台を付けるだけで、AZ障害にも耐えよう。キャッシュ用途ガッツリ使ってるなら、リードレプリカを適時増やしてけばよさそう
- rds も面倒を見てかないとダメか....面倒見たくねえなあ
puma は Fargate インスタンスタイプを上げたらパラメータチューニングの余地がありそうだ
sidekiq は非同期処理だけと思いきや定期実行ジョブが動いてるんだな
redis は momento で悩まないことにしたい
postgresql は spanner の postgresql if で悩まないことにしたい (むしろ大変な目に遭遇しそうだ
WordPress のように「CDN を被せたら貧弱EC2でも大丈夫」みたいなゴマカシが効かなそうな要素が多く、大所帯な Mastodon サーバーを運営されてる方々には畏敬の念しか湧いてこなかった