現行のPleroma / Akkomaに、プロフィール補足情報(Misskeyだと追加情報)が多すぎるとアカウント情報の取得に失敗し、再取得を繰り返してしまうバグが存在します。
これにより、CPUが使い尽くされたり、データベースが肥大したり、相手サーバへ過大な負荷をかけてしまいます。
Pleroma / Akkoma全体でこれが発生するため、実質的にDDoSを仕掛けるような挙動となります。
デフォルトが20なので、これを設定(Instance の Max remote account fields)で大きく引き上げる方法でまず対応し、
指定数をオーバーしたら切り捨てて対応するパッチをあてる対応が必要です。
https://git.pleroma.social/pleroma/pleroma/-/merge_requests/4220
Pleroma / Akkomaの新バージョンがリリースされたら速やかにアップデートしましょう。
この不具合は、プロフィール補足情報の件数が多いActivityPub実装すべてで発生します。
Mastodonの標準は4件、Misskeyは16件、Fedibirdは8件ですが、独自に数を増やしているサーバであれば該当する可能性があります。
また、Misskey.ioのバナー機能はプロフィール補足情報で連合するので、こちらでも発生します。
とりあえずPleromaの運営者さんは「管理者設定」→「制限」→「Max remote account fields」を50くらいに設定してください……おねがいします……
Misskeyのプロキシアカウントは、必要ないときにフォローする動作をやめた方がいいと思うよ。
たとえば、私のフォロワーがそのサーバに既にいて、投稿が相手のサーバに届いているときでも、そこのサーバの誰かがリストに入れただけでフォローしてくる。しなくていいよ。
具体的に言うと
1. ioのバナーはプロフィールの「追加情報」として連合される
↓
2. 結果、追加情報が30個くらいついてるユーザーが生まれる
↓
3. 追加情報欄のPleromaのデフォルトの上限がわりと低いので、上限を余裕で越す
↓
4. よってPleromaはRejectするが、バグがあって「Rejectしたものを再Fetchしない」ようになっていない
↓
5. そのため、PleromaはまたFetchしようとする
↓
6. 3に戻る
となっています [参照]
村上さんが言ってたAkkomaの問題ってこれかな
/ 831 - [bug] Spamming Fetch Requests - AkkomaGang/akkoma - Akkoma Development https://akkoma.dev/AkkomaGang/akkoma/issues/831
大規模分散データ処理の世界にいるJavaエンジニアの端くれです。最近はあんまりJava書いてなくてPythonが多いですが。
GUI開発の世界にも興味を持っていてJavaFXいじったりもしています。