- FrameworkノートPCとJBODを活用して独自のS3ストレージを構築し、10TBの容量を低コストで運用しており、4か月間ほぼ放置でも安定して稼働
- 画面のない中古のFrameworkノートPCにZFSとgarage S3を導入してホームサーバーとして活用し、AppGoblinのSDK追跡プロジェクト向けの大容量ストレージとして使用中
- 4か月間サーバーをまったく気にしていなかったが、ログインしてみると10TBが使用され、アップグレード待ち状態になっており、再起動後もすべて正常に動作
- garage S3のv1からv2へのアップグレードも問題なく完了し、安定した運用を確認
- USBでノートPCとJBODを接続する非標準的なZFS構成で当初は問題があったが、メタデータをノートPC内部に移して解決
プロジェクトの背景と動機
- 5か月前に独自S3ホスティングを決定
- AppGoblinの上位10万件のAndroidおよびiOSアプリのSDK追跡作業を進行中
- 大容量の保存領域が必要だったが、コストは抑えたかった
- 既存のクラウドS3ではなくセルフホスティング方式を選択
ハードウェア構成
- FrameworkノートPCを活用
- 画面のない中古のFrameworkノートPCを安価に購入
- 旧型モデルのため、ホームサーバー用途に適していた
- ノートPCの携帯性と低消費電力の特性を活用
- JBOD(Just a Bunch of Disks)を追加
- 大容量保存のための外付けディスクアレイ
- USB経由でノートPCに接続
ソフトウェアスタック
- ZFSファイルシステム
- データ整合性とスナップショット機能を提供
- JBODをZFSプールとして構成
- garage S3
- 軽量な分散S3互換ストレージソリューション
- Deuxfleursが開発したオープンソースプロジェクト
- S3 API互換性を提供
4か月間の無管理運用
- 設置後4か月間、サーバーをまったく気にしなかった
- 旅行や仕事、忙しい日常の中でもS3は継続的に利用されていた
- サーバーについて考える必要がなかった
- ログイン後にわかったこと
- 10TBの保存領域が使用されていた
- システムはアップグレードのための再起動を辛抱強く待っていた
- 再起動の結果
- 緊張しながら再起動を実行
- すべてが正常に再稼働し、ほっとした
garage S3のアップグレード
- v1からv2へのアップグレード
- 保留されていたメジャーバージョンアップを発見
- アップグレード作業は問題なく進行
- 良い週末だったと評価
技術的な注意点と解決策
- 非標準的なZFS構成への認識
- USB経由でノートPCとJBODを接続するのは、やや非標準的なZFSの利用例
- Redditコミュニティからこの点について警告を受けた
- 初期の問題発生
- garageが大量の読み書きを行う際にZFSの問題が発生
- 初期設定ではSQLiteのメタデータもJBOD/ZFS上に保存されていた
- 問題の解決
- メタデータをノートPCの内部ストレージへ移動
- その後はZFSの問題が解消し、安定して動作
3件のコメント
セルフホスティングに挑戦すること自体がすごいです。
価格帯にはかなり差がありますが、Frameworkのメインボードは現代のRaspberry Piになったようですね
Hacker News の意見