ハクソク

世界を動かす技術を、日本語で。

F-Droidのためのより速いハート。新しいサーバーが登場しました。

概要

  • F-Droidはコミュニティからの寄付によって独立性と信頼性を維持
  • 主要なサーバーハードウェアを寄付で刷新
  • 新サーバー導入でアプリ公開速度と安定性が大幅向上
  • サーバー管理は信頼できる貢献者のもとで透明性を確保
  • すべてのユーザーと開発者に恩恵をもたらすアップグレード

F-Droidインフラ刷新とその意義

  • F-Droidの独立性維持のために寄付が不可欠
  • コミュニティの支援でコアサーバーハードウェアを更新
  • サーバーの性能が全体のアプリビルドと公開速度に直結
  • 旧サーバーは12年前の機材、5年間稼働
  • 新サーバー導入で日々の運用負荷と遅延を大幅に削減

サーバー調達の課題と対応

  • 部品調達難および世界的なサプライチェーンの混乱に直面
  • 見積もり取得、再計画、納期遅延への対応
  • 妥協せず、長期運用に耐えるサーバー構成を追求
  • 適切なハードウェア到着まで粘り強く調整

サーバーの設置場所と管理体制

  • 一般的なデータセンターではなく、長年の信頼ある貢献者の管理下に設置
  • 物理的な所在・アクセス権限を明確に把握
  • 高い透明性と信頼性を重視した運用体制
  • 交渉・調整を重ねた特別なアレンジ
  • 匿名的な運用ではなく、実在する人物による管理

新サーバー導入後の効果

  • ビルド・公開サイクルの大幅な高速化
    • 1月~9月:3~4日に1回の更新
    • 10月:2日に1回
    • 11月:毎日
    • 12月:1日2回のペースに到達
  • f-droid.org透明性ログで更新頻度を確認可能
  • アプリのアップデートからユーザー提供までのタイムラグ短縮
  • 朝のサイクルで自動更新アプリ、夕方に新規・修正・手動更新アプリをビルド
  • 現実的な運用リスクにも注意を払いながら進行

コミュニティ支援の意義

  • このアップグレードはコミュニティの寄付があったから実現
  • 高速サーバーで開発者へのビルド提供も迅速化
  • 保守リスク低減とリポジトリ全体の健全性向上
  • 大口・小口問わず寄付がF-Droidの信頼性・独立性・自由ソフトウェアの価値を支える原動力

Hackerたちの意見

コンテキスト: 「F-Droidのビルドサーバーは、古いCPUのせいで現代のAndroidアプリをビルドできない」(https://news.ycombinator.com/item?id=44884709)
で、彼らはどんなハードウェアを買ったの?
そうそう、ちょっと目立って欠けてるよね!彼らは言ったよね > 「前のサーバーは12年前のハードウェアで、かなりヤバい。」中古のシステムを買えば、たくさんのRAMと16コアのRyzenが400ドルくらいで手に入るのに。12年前のハードウェアは、RPi 5よりほんの少し速いだけだよ。
うーん: 「F-Droidは、ただのデータセンターで、誰が管理しているかわからないような一般的なハードウェアではホスティングされていません。私たちは特別な取り決めをして、このサーバーは長年の貢献者によって物理的に保持されています。彼はサービスを安全にホスティングする実績があります。私たちはリモートで制御でき、正確にどこにあるかもわかっていて、誰がアクセスできるかも知っています。」
「F-Droidは、適切な手続きやアクセス制御があるデータセンターではホスティングされておらず、代わりに誰かの寝室にあります。」って、あんまり安心できないね。
F-Droidの信頼性について疑問を持ったことはなかったけど、これを読んでからはそう思うようになった。すごくアマチュアっぽい運営に聞こえる。こういうのはクラウドVM + DB + バケットみたいなものだと思ってた。彼らが言ってる「ハードウェアアップグレード」は、VMタイプを変更するのに数クリックするだけの、全然大したことじゃなかった。今は、知らない誰かのクローゼットにあるような、ちょっと変なセットアップを想像するしかない。とにかく、F-Droidに必要なハードウェアが具体的に何なのか、CPUやメモリ、ストレージについての具体的な情報は出てこなかったから、そこが気になる。
うわ、やばいね。そんな要件に「特別な取り決め」は必要ないよ。これは多くのプロが運営しているコロケーションデータセンターの最低限の条件だから。データセンターは顧客の要件を満たすことがビジネスの重要な部分だから、セキュリティ要件を満たせないことはないはず。もしかしたら、その人はウェブホスティングサービスやラックユニット単位のコロケーションサービスしか知らないのかも。でも、これらのサービスを使う必要はないよ。アクセスできるロック付きのキャビネット(または1/4キャビネット)を簡単に手に入れられるから。
うーん。これで彼らのセットアップがいかに不安定でメンテされていないかが100%わかるね。グローバルサプライチェーンや引用の周りの言い訳、手を振るようなこと...一般的なハードウェアを手に入れて、特別な誰かの地下室に押し込むのにかなり時間がかかったのに、それを良いことのように見せようとしてる?F-DroidはGrapheneOSコミュニティでもよく話題にされていて、中央集権化や署名に関する懸念は正当だと思う。これはボランティアの努力だと理解してるけど、あまり良い印象ではないね。
20年以上にわたって多くのボランティアオープンソースコミュニティやプロジェクトを運営してきた者として、こういう「小さな」勝利がどれだけ大きいかはよくわかる。インターネットは、ランダムな地下室でコンパイルされたバイナリで動いていて、そういう地下室には感謝すべきだよ。企業は絶対に資金を提供してくれないから。
「これはボランティアの取り組みだって理解してるけど、あまり良い印象じゃないね。」確かに、こういう社会で大企業の悪口を言いながら、フリーの代替案にはほとんど投資しないのは良くないよね。
> 特別な誰かの地下室に置いてる どんな条件で保管されてるかは言ってないよね。君はただ不安を煽ってるだけだから、やめてほしい。ベッドの下にあるかもしれないし、言及された貢献者が運営してるプロのサーバールームにあるかもしれない。
「何もかも十分じゃない」(商標)
ちょっと違った視点で読んだんだけど、何百万台のサーバーを持つメガコープじゃなくても、実際に良い方向に変えることはできるよ。そんなに難しくないし!それに、12年前のハードウェアでもめちゃくちゃ速いからね。
グラフェンは素晴らしい製品だけど、彼らが自分たち以外のサービスに対していつも泥を投げつけているのは、せいぜい面倒だね。彼らの指摘は一部正しいけど、違うサービスが必ずしも同じ問題を解決しようとしているわけじゃないってことを受け入れられないことが多すぎる。
> コモディティハードウェア このスレッドで反論されてる「誰かの地下室」以外にも、彼らが「コモディティハードウェア」を手に入れたとは書いてないよね。むしろその逆を示唆してると思うけど、理由があるんだろうね。
現代の機械って、本当にすごいパフォーマンスを発揮するよね。F-Droidみたいな小規模なものには、実際にホスティングするのにそんなにハードウェアはいらないと思う。静的ファイルが多いから、基本的なウェブサーバーでも何十万ものリクエストを処理できるし、普通のマシンでも10Gbpsをフルに使えるんじゃないかな。彼らがやってることには十分だと思う。なんか、誰かが運営してる共有ラックにボックスを置いてるだけって感じがするけど、詳細は全然わからないからね。
これはウェブサイトやパッケージリポジトリをホスティングするためのサーバーの話じゃなくて、すべてのパッケージをビルドするためのサーバーの話だよ。
それ自体がちょっと怪しいよね。「ああ、私たちはあの地域でコロケーションにお金を払ってる」って言えないのはなんでなんだろ?それが秘密である必要があるの?
彼らのセットアップがアマチュアっぽいのは分かるけど、シンプルなセットアップがどれだけ簡単かを思い出させてくれる良い例でもあるよね。HNで言うのもなんだけど。
> このサーバーは、サービスを安全にホスティングしてきた実績のある長年の貢献者が物理的に保管している。私たちはリモートで制御でき、正確にどこにあるかも、誰がアクセスできるかも知っている。これを読んで、物理サーバーが誰かの地下室や職場のラックにあって、議論が起きたときにそれが問題になったプロジェクトを思い出したのは私だけじゃないと思う。自己ホスティングは多くの人にとって誇りのポイントだけど、私の経験では、低コストのハードウェアを安いコロケーションに置いて、契約を法人にする方がずっといいと思う。誰か一人に任せると、その人のドメインに多くのコントロールが入ってしまうからね。このチームには良い結果を願ってるし、その人が本当に信頼できる能力のある人だと信じたいけど、こういう取り決めは一般的に強く反対したい。追記:F-Droidは今年、単一のソースから40万ドルの助成金を受け取ったから(https://f-droid.org/2025/02/05/f-droid-awarded-otf-grant.htm...)、このサーバーを一人のチームメンバーに任せて、具体的な条件も言わずにホスティングすることにした理由がますます混乱してる。
そうだね。でも、共有ホスティングやコロケーション、AWSでも、たった一人が王国の鍵を握ってると、同じことが簡単に起こるよ。リーダーが行方不明になったり、大きな争いが起きたりして、実質的にやり直さなきゃいけなかったオープンソースプロジェクトをいくつか知ってる。それを考えると、メンバーの家にサーバーをホスティングするのはプロジェクトにとってひどい決断だと思う。
400Kは、伝統的なコロケーションセットアップにこだわったらすぐに消えちゃうよ。こういう寄付は珍しいし、これが10年間の全てになるかもしれない。個人的には、複数のメンテナーが自宅でホストしているマシンにラウンドロビンで分散させた方が安心できるかな。
> 40万ドルの助成金か。毎年こんな助成金を取れるかは分からないけど、これくらいの規模になるとクラウドホスティングが意味を持ってくるんじゃない?
OSUオープンソースラボは、データセンター内のグループにマシンを提供してるよ。https://osuosl.org/services/hosting/ かなり有名なサービスもホスティングしてるみたい。
彼らがシンプルなハードウェアでこんなに多くのことを成し遂げたことに注目しよう。もっと多くのリソースを持っている会社と比べるのはやめよう。
Droid-ifyについて知っている人いるかな?安全な選択肢なのか、それとも避けた方がいいのか?F-Droidがいつもすごく遅く更新される理由を調べていたら、ある日出てきたんだ…それでDroid-ifyを試したら、もうその問題はなくなった。明らかに接続が良くなったし(それとも単にユーザーが少なかったのかな?)
同じサーバーを使っている別のクライアントだよ。fdroidの公式クライアントは本当にバグが多い。
> どのデータセンターでもホスティングされていない [...] 安全にサービスをホスティングしている実績のある長年の貢献者 これはあいまいだね。コロケーションセンターの貢献者のラックを指しているのか、自宅のラボを指しているのか。前者だと思いたいけど、初めて読んだときは後者だと理解したのは否定できない。それに、ハードウェアの詳細はないの?