5.2K Views
February 24, 24
スライド概要
2024/2/24に開催された「第1回 Fediverse Linux User Group 勉強会」の登壇資料です。
■補足(2024/2/24 22:35 追加)
本資料の中で電気通信事業の届出について言及がございますが、多くの場合、電気通信事業の届出は必須ではございません。
ただし、利益を目的とする場合など特定の条件下では届出が必要となる場合がございます。
詳しくは「総務省|電気通信政策の推進|電気通信事業参入・変更手続の案内」https://www.soumu.go.jp/menu_seisaku/ictseisaku/denkitsushin_suishin/tetsuzuki/ をご確認ください。
その他、MastodonやMisskeyなどのソースコードを改変する場合、ライセンスによりソースコードの公開が必要となります。改変などの前に必ず各種ソフトウェアのライセンスや利用許諾などをご確認ください。
色々なサーバーを運営しています。
サーバの運用と体制の話 ― 結構人がいるかもしれないサーバーを良い感じに運用する もりかぷ @[email protected] Otaku Social
自己紹介 もりかぷ Main: @[email protected] 本職 会社員 (IT業界) 別の肩書 Otaku Social 自称代表 趣味 サーバー運営、ソフトダーツ、3Dプリント、旅行 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 2
運用しているサーバー Mastodon OtaDon カベドン KAPUVERSE Misskey Maniakey Maniakey .Homes CircleEvents Other ふぁぼかる OS-Relay Otaku Social Hosting Service OtaSora (ATProtocol PDS) 合計ユーザ数は1,000以上 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 3
今日話す内容 ・サーバーの構成とSidekiq ・運営チームの体制や対応 ・欲しいものは(保守できる範囲で)カスタムしよう! Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 4
サーバーの構成とSidekiqについて Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 5
サーバーの構成 OtaDon の場合… Zone: Tokyo-1 6vCPU/RAM 16GB Mastodon / DB / Search Zone: Tokyo-2 4vCPU/RAM 4GB Job Internet WAF / CDN Object Storage Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 6
サーバーの構成 OtaDon の場合… Zone: Tokyo-1 6vCPU/RAM 16GB Mastodon / DB / Search Sidekiq: 4 process 25 threads default, push, pull, mailers, ingress 25 threads default, push, pull, mailers, ingress 50 threads ingress 5 threads scheduler Zone: Tokyo-2 4vCPU/RAM 4GB Job Sidekiq: 3 process 25 threads default, push, pull, ingress 25 threads default, push, pull, ingress 25 threads default, pull, ingress Total: 7 process / 180 threads Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 7
意外だったこと かつて、もう一つのJobサーバーがあった… Zone: Tokyo-1 6vCPU/RAM 16GB Mastodon / DB / Search Sidekiq: 4 process 25 threads default, push, pull, mailers, ingress 25 threads default, push, pull, mailers, ingress 50 threads ingress 5 threads scheduler Zone: Tokyo-2 4vCPU/RAM 4GB Job Sidekiq: 3 process 25 threads default, push, pull, ingress 25 threads default, push, pull, ingress 25 threads default, pull, ingress Zone: Tokyo-3 4vCPU/RAM 4GB Job Sidekiq: 3 process 25 threads default, push, pull, ingress 25 threads default, push, pull, ingress 25 threads default, pull, ingress Total: 10 process / 255 threads Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 8
意外だったこと もりかぷ @[email protected] プロフィール編集 Owner otadon.com 高専→プログラマー修行4年目です。 妖魔退治(原神)やダーツ、超次元サッカー、サーバー運用など幅広く好きなことを しています。 アイコンの顔はTwitterのフォロワーさんに描いていただいたものです。 登録日 2022年11月18日 TWITTER twitter.com/inakapu WEB moritoworks.com まにあきー maniakey.com/@morikapu 12K 投稿 419 フォロー 807 フォロワー 419 フォロー 807 フォロワー 色々なサーバーにフォロワーさんがいる ≒サーバーの数分だけ配信処理が行われる Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 9
意外だったこと プロセス数を増やしつつ、スレッド数を大幅に増やした結果… → DBなどが追い付かなくなり、最悪タイムアウトに… Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 10
効率よく高速に処理するには… ・強いスペックのマシンにする(パワープレイ) ・プロセス/スレッド数を何も考えずに増やさない CPUにあったプロセス/スレッド数にすることで効率よく処理できる どういう値にすべきかは正直、環境によって変わるので試行錯誤が必要 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 11
運営チームの体制や対応 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 12
これを見て思う人がいるはず… Mastodon OtaDon カベドン KAPUVERSE Misskey Maniakey Maniakey .Homes CircleEvents Other ふぁぼかる OS-Relay Otaku Social Hosting Service OtaSora (ATProtocol PDS) Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 13
運営しているサーバー、多くない? モデレーション大丈夫? Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 14
安心してください! 複数人で運営しています! Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 15
安定・安心なサーバー運営のために 全てのサーバーを審査制に、一定期間内の受入人数を制限 Maniakey Maniakey Otaku Social 待機列はこちら! 本サービスは審査制/招待制です。招待コードをお持ち の方のみ登録できます。 タイムラインを見てみる このサーバーに登録する OtaDon ルール ユーザー情報 メールアドレス の確認 承認 いくつかのルールがあります。 これらはotadon.com モデレータによって設定され、実施 されます。 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 16
安定・安心なサーバー運営のために 審査について ※記載の内容は一例です。状況に応じて確認内容、基準は変更となる場合がございます。 登録メールアドレスの確認 一定期間内の審査ログ確認 志望理由の確認 必要な場合、意思確認・追加の審査 厳格に行うことで 事前にトラブルなどを防止 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 17
安定・安心なサーバー運営のために 定期的なリストア試験環境でバックアップファイルの確認 バックアップには物理バックアップかつオンラインバックアップである pg_basebackup を利用 バックアップのプロセス 1. pg_basebackup による物理バックアップ 2. バックアップ完了後、pg_verifybackup にて取得したバックアップの検証 3. 問題なしの場合、書き込み専用(一方通行)のバックアップサーバーに移動 このほかにも最低1回/月、バックアップファイルからリストア試験を実施 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 18
安定・安心なサーバー運営のために ・定期的なミドルウェアのアップデート確認、設定確認 ・リソースの使用状況の確認 ・DMARCレポートの確認 ・顧問弁護士の契約 ・電気通信事業の届出、各種連絡先の定期確認 ・わかりやすい、読める利用規約の制定 ・運営チームとの定期的な認識合わせ ・本家レポジトリの動向確認 etc… Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 19
欲しいものは(保守できる範囲で)カスタム! Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 20
オープンソースなので自分でカスタムできる! プロフィールページのタブがスッキリ ドライブの空き容量表示を分かりやすく ドライブ 空き領域: 18.7GB/19.5GB 動画 スクリーンショット Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 21
オープンソースなので自分でカスタムできる! ホーム志向モード(公開タイムラインの存在を消す) 設定 基本設定 プロフィール プライバシー 絵文字ピッカー ドライブ 通知 メール セキュリティ 公開タイムライン これらの設定をオンにしてもノートの公開範囲によっては公開タイムラインに掲載されます。画 面に反映するにはリロードしてください。 ローカル・ソーシャルを非表示にする グローバルを非表示にする リロードして反映する Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 22
オープンソースなので自分でカスタムできる! ノートに添付されている画像をギャラリーっぽく表示 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 23
オープンソースなので自分でカスタムできる! チャンネルを一気に見やすく、全てのチャンネルタブ追加 チャンネル 検索 全てのチャンネル トレンド お気に入り フォロー 管理中 まにあきーマッスル部(健康部) Let's be macho. 55人が参加中 631投稿があります Go! Go! Muscle!!!!!!…健康になりたい方向けのチャ ンネルです。マッスルボディを目指す人、ダイエットし たい人、健康になるため頑張っている方、ぜひ! 更新日時: 2時間前 まにあきー原神部 原神を楽しんでる旅人さんの交流の場になれば幸いで す!■デイリーやった報告、ガチャ報告、魔神任務や伝 説任務の感想、進捗報告、フレンド募集、質問疑問やマ ルチ募集、配信告… 更新日時: 2時間前 まにあきーゲーム部 ありそうでなかったゲーマーの集会所、「まにあきーゲー ム部」です。購入、クリア、実績コンプ、ガチャ報告 までご自由にご利用下さい。また、おすすめタイトルの プレゼン、セール… 更新日時: 5時間前 まにあきーオドオタ部 次元、事務所、性別問わずアイドルについてお話するチ ャンネルです。ネタバレな話題やネタバレはOKを使用 してください。アイドルへの過激な発言や誹謗中傷を含 んだ投稿はお控… 更新日時: 5時間前 まにあきーグルメ部 美味しいものが好きな人、あつまれー!まにあきーの皆 様が食べたり飲んだりしたものを共有したりされたりし てみんなで幸せになれる部です。・自炊頑張ったから褒め て!・こ… 更新日時: 10時間前 まにあきーサッカー部 サッカーが好き・興味ある人なら誰でもどうぞ!国、リ ーグ、クラブ問いません。試合実況、感想などお好きに お使いください。※選手や他サポへの配慮を忘れずにお 願いします。 更新日時: 13時間前 まにあきーFGO部 まにあきー崩壊:スターレイル部 運営スタッフへの叫びチャンネル Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 24
ではなぜ保守が必要なのか Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 25
保守が必要な理由 ソースコードに変更を入れると、将来のアップデートでコンフリクトが起きる ソフトウェア側の仕様変更により動作しなくなる可能性がある セキュリティ的に対応が必要かどうかは定期的に見る必要がある Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 26
サーバーを建てるのと同様にカスタマイズは 比較的高コスト Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 27
仕様変更やパッチの適用など 長期的に見るとコストはそれなりにかかる Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 28
何か運用する上で覚えておくこと 何かを公開することには大いなる責任が伴います サービスを公開する前に再度どういった体制で運用するのか、計画しよう! 自分で手を入れる場合は、手を入れたことを忘れずに Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 29
よいFediverse Lifeを。 Otaku Social 2024/2/24 第1回 Fediverse Linux User Group 勉強会 - サーバの運用と体制の話 30
ご清聴ありがとうございました。 もりかぷ @[email protected] Otaku Social
各種URL アイコン素材ダウンロードサイト「icooon-mono」| 商用利用可能なアイコン素材が無料(フリー)ダウンロードできるサイト https://icooon-mono.com/ 各種ソースコード https://github.com/orgs/Otaku-Social/repositories Otaku Social