Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
自宅サーバでマストドンを立てる
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hikaru Ashino
June 30, 2017
Technology
1
3.1k
自宅サーバでマストドンを立てる
hokutodonから学ぶ 自宅サーバでのマストドン構築と運用
Hikaru Ashino
June 30, 2017
Tweet
Share
More Decks by Hikaru Ashino
See All by Hikaru Ashino
さくらのクラウド高火力プランを使って 大規模言語モデル(LLM)を動かしてみよう
picasa
1
640
クラウドの作り方(GPUサーバ編)
picasa
0
3.1k
A story until offering openSUSE on Sakura VPS
picasa
0
120
さくらのサービスを支えるAPI開発のお話(仮) - APIStudy#6
picasa
0
97
卒業制作 サーバーの脆弱性情報管理システム
picasa
0
58
Kickstartfileジェネレータを作ってみた
picasa
0
54
Amazon Cognito + SNS + Zabbixでサーバー監視アプリを作ってみた - JAWS DAYS 2015
picasa
0
110
Amazon SNSでZabbixのアラートをプッシュ通知してみた
picasa
0
95
cobbler + koan VPS作成の自動化
picasa
0
37
Other Decks in Technology
See All in Technology
作るべきものと向き合う - ecspresso 8年間の開発史から学ぶ技術選定 / 技術選定con findy 2026
fujiwara3
6
1.6k
2026-02-25 Tokyo dbt meetup プロダクトと融合したCI/CD で実現する、堅牢なデータパイプラインの作り方
y_ken
0
150
サンタコンペ2025完全攻略 ~お前らの焼きなましは遅すぎる~
terryu16
1
540
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
チームメンバー迷わないIaC設計
hayama17
5
3.2k
クラウド時代における一時権限取得
krrrr38
1
140
APMの世界から見るOpenTelemetryのTraceの世界 / OpenTelemetry in the Java
soudai
PRO
0
200
AI Agentにおける評価指標とAgent GPA
tsho
1
240
AI が Approve する開発フロー / How AI Reviewers Accelerate Our Development
zaimy
1
230
Windows ネットワークを再確認する
murachiakira
PRO
0
180
社内でAWS BuilderCards体験会を立ち上げ、得られた気づき / 20260225 Masaki Okuda
shift_evolve
PRO
1
150
Snowflakeデータ基盤で挑むAI活用 〜4年間のDataOpsの基礎をもとに〜
kaz3284
1
290
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
700
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
130
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
190
My Coaching Mixtape
mlcsv
0
63
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Code Reviewing Like a Champion
maltzj
527
40k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
560
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
370
How GitHub (no longer) Works
holman
316
140k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
190
Leo the Paperboy
mayatellez
4
1.5k
Transcript
自宅サーバでマストドンを立てる hokutodonから学ぶ 自宅サーバでのマストドン構築と運用 2017/6/28 (C) Copyright 1996-2016 SAKURA Internet Inc
さくらインターネット株式会社 技術本部 アプリケーショングループ VPSチーム 芦野 光
自己紹介 • 芦野 光 • 2016年4⽉ 新卒⼊社 ⼊社2年⽬ • 所属
• 技術本部アプリケーショングループ VPSチーム • 担当業務 • さくらのVPS • Python/Djangoを⽤いたAPI・バックエンド開発 • 社内向けAPIの開発 • 趣味 • ツーリング(普通⾃動⼆輪) • ⾃宅ラック(サーバ) • 今年で10年 • その他 • ICTSCトラブルシューティングコンテスト実⾏委員 2
agenda • 本日お話しすること • Mastodonを自宅サーバでの構築・運用のポイント。 • hokutodonを事例にご紹介。 3
• 自宅サーバとは 4 自宅サーバまたはホームサーバ(じたくサーバ、Home Server)とは、 主に個人が自宅で趣味または複数台のパソコンを管理として運用する インターネットまたはイントラネット向けのサーバを指す。 (Wikipedia)
• hokutodonとは 5 ヨッピーの自宅でマストドンを運営する企画 ※さくらのナレッジ http://knowledge.sakura.ad.jp/other/8752/
• hokutodonとは 6 ※さくらのナレッジ http://knowledge.sakura.ad.jp/other/8752/
• hokutodonとは 7 ※さくらのナレッジ http://knowledge.sakura.ad.jp/other/8752/
• hokutodonとは 8 ※さくらのナレッジ http://knowledge.sakura.ad.jp/other/8752/
hokutodonの一連の流れ 事前確認 構築 運用 閉鎖 9
事前確認
事前確認 • ネットワーク • IPアドレス • そもそも外部からアクセスできるか。 • ルータ •
NAPT • 外部からのルータへのアクセスを自宅内のサーバに転送できるか。 • PC(自宅サーバ)のスペック • 性能的に耐えられるか。 11
事前確認 • ネットワーク • IPアドレス • 疎通ができた。 • ルータ •
自宅内のPC上のWebサーバへの疎通を確認。 • PC(自宅サーバ)のスペック • CPU:Core i5 / メモリ8G / HDD:2TB 12 事前確認のポイント ・IPアドレスについてプロバイダによって、 1つのグローバルIPアドレスを共有して提供している場合があるので要チェック。 ・HDDの容量は多い方が良いです。(hokutodonでは、1日2GBペースで消費)
構築
構築 • サーバ • ドメイン取得 • 10分くらいで完了。 • OSインストール •
メール送信の設定 • DNSの設定 • 証明書の設定 • Let‘s Encrypt を利用。 • Mastodonインストール • 公式のドキュメントに従ってインストール。 • ネットワーク設定(ルータ) • NAPTの設定 • 外部からのルータへのアクセスを自宅内のサーバに転送する設定。 14
構築 • サーバ • OSインストール • メール送信の設定 • DNSの設定 15
構築 • OSインストール • 事前にインストールメディアを作成。 16
構築 • メール送信の設定 • 自宅サーバからのメール送信 • プロバイダの制限(OB25P)のため送信できない。 • Mailgunを利用。 •
設定(DNS)を確認する機能がある。 • 送信ログなども参照可能。 17
構築 • DNSの設定 • DDNSサービスを利用。 • IPアドレスが動的に変わるため、DDNSを利用。 • ドメイン取得元でできるかどうか不明だったため。 •
メールのためのDNSレコードの設定 • 設定しないとメールが届かない場合がある。 • SPF(Sender Policy Framework) / DKIM(Domainkeys) 18 構築のポイント ・DDNSサービスを使いましょう。 ドメイン取得元のネームサーバで対応していれば、ベスト。 →ドメイン取得してから DDNSサービスに登録してネームサーバを変更する手間が不要。 ・SPF / DKIMの設定はお忘れなく。 →メールが届かない原因になります。
運⽤
運用 • hokutodonが満を持して開始 20
運用 • hokutodonの舞台裏では • ユーザが増える • 開始10分で200ユーザ 21 0 200
260 454 550 563 650 850 2900 3800 10000 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 2017/4/25 19:09 2017/4/25 19:20 2017/4/25 19:24 2017/4/25 19:33 2017/4/25 19:37 2017/4/25 19:39 2017/4/25 19:42 2017/4/25 20:00 2017/4/25 22:48 2017/4/26 12:47 2017/4/28 23:32 登録ユーザ数(管理画面上)
運用 • hokutodonの舞台裏では • ユーザが増える • 登録確認メールが送信される • Mailgunの1時間あたりの送信上限数に達する •
確認メールが送信できなくなる 22
運用 • hokutodonの舞台裏では • 手動での登録承認作業 23
運用 • hokutodonの舞台裏では • リレーサーバを急きょ構築 • さくらのVPS上にPostfixを構築。 • さくらのVPS上のPostfixからメール送信。 24
ポイント ・メール送信サービスの上限数を確認。 ・送信数が多くなることが想定される場合は、プランを変えて送信数の上限数を上げる。 ・メール送信部分だけ、VPS・クラウドを使う手も。
運用 • 監視 • Mackerelを利用 • CPU • Load Average、たまに1を超えるぐらい。
• メモリ • 特に足りなくなることはなかった。 • ストレージ(HDD) • 1日に2GB消費。 • ネットワーク • MAX 1.8Mbps • 平常時 500Kbps 25
運用 • 監視 • Load Average 26
運用 • 監視 • CPU 27
運用 • 監視 • メモリ 28
運用 • 監視 • ストレージ 29
運用 • 監視 • ネットワーク 30
閉鎖
閉鎖 • hokutodon終了のお知らせ • インスタンスの停止 • データ削除 32
閉鎖 • hokutodon終了のお知らせ 33
閉鎖 • インスタンスの停止 • 他のインスタンスからの通信が発生している • Mastodonはインスタンス間の通信ができない場合リトライをする • 通信できないとリトライがたまる。 •
→ 他インスタンスに迷惑をかけることになる。 • 対処:404ページを返してあげる。 • 他のインスタンスにご迷惑をおかけしました。 34
閉鎖 • リモートインスタンス間の通信(通常) 35
閉鎖 • リモートインスタンス間の通信(障害・閉鎖時) 36
閉鎖 • 解決方法 37
閉鎖 • データ削除 • 10,000件のメールアドレスなどのユーザ情報。 • 残しておきたくない。 • DBANを使用 •
CDブートでHDD上のデータを消去するツール • 削除方式が様々ある。 • 米国国防総省方式 • Gutmann方式 • etc… 38
閉鎖 • データ削除 39
閉鎖 • 2TBで1日以上かかりました。 40
閉鎖 41 閉鎖のポイント ・利用者に事前に閉鎖をお知らせをしましょう。 ・インスタンスの停止をした場合、閉鎖後も404ページを一定期間返すようにしましょう。 (他インスタンスからのリトライ対策) ・ユーザの情報が記録されているので、データ削除を行いましょう。(完全閉鎖する場合)
まとめ
まとめ • hokutodonのサマリー • 運用期間: 4/25 19:09 〜 4/29 0:42
• ユーザー数: 2,478(管理画面上では約10,000) • トゥート数:29892 • 接続中のインスタンス : 257 43
まとめ • 事前確認 • IPアドレスが外から疎通できるものか。 • HDDの容量は足りますか?。 • 構築 •
DDNSサービスを使いましょう。 • メール送信サービスの送信上限数を確認。 • 運用 • 不適切なトゥートがないかを確認。 • サーバ / ネットワークの監視(できたら)。 • 閉鎖 • 事前に閉鎖のお知らせを。 • 閉鎖後は404ページを返すように。 • データ削除をお忘れなく。 • Mastodon自体について • 公式のドキュメントを参照 • https://github.com/tootsuite/documentation/tree/master/Running-Mastodon 44
まとめ • 自宅サーバを運用するにあたって確認すること (一例) • 家族の同意 • 電気代 • 排熱
• 音 • ネットワーク帯域 • ファシリティ • 設置場所 • 空調 • 電気 • ネットワーク • 耐荷重 45 • キャパシティプランニング • ネットワーク帯域 • ディスク容量 • 可用性 • 保守性 • コスト • 監視 楽しんで運用できることが一番大事!
まとめ • 自宅サーバ / ラックの良さ • ネットワーク機器 • LEDがよく光る、ときめきを感じる。 •
クラウドの時代だからこそ • クラウドの仕組みを理解する。(H/Wで作られてきたインフラの抽象化) • H/Wへの理解。 • 様々なことができる • 業務では作らない構成を作ってみる。トライアンドエラー • 壊したりループさせても失敗しても大丈夫な環境があることは大事。 • 自己研鑽。 46
ご静聴ありがとうございました。 47