balupton
(Benjamin Lupton)
12
LXD 上の Ubuntu サーバーで Raspberry Pi 4 と USB SSD を使用して Discourse を実行しようとしましたが、再構築中にハングアップしてタイムアウトしました。Btrfs ループバックストレージプールを使用するとハングアップが悪化/早期化し、ZFS ループバックストレージプールを使用するとさらに悪化しました。メモリ使用量は一貫して 1GB 周辺で、ピークは 3GB でした。ハングアップ時でも SSH/top は応答しましたが、すべての使用状況アクティビティが無視できるレベルに低下し、ギブアップしたことを示していました。
最近の LXD ドキュメント では、Docker の使用を有効にするために security.nesting を文字列値の true に設定することが推奨されており、私もそのようにしました。しかし、LXD ドキュメントには 本番環境の設定に関するページ もあり、約 20 の設定を変更する必要があると記載されていますが、私は試していません。
結局、Discourse を LXD で実行する試みを断念し、同じマシンで Docker を使用して Discourse を実行しました。
私の試みの詳細は次のとおりです。
奇妙なことに、以下の LXD Docker ガイドでは Btrfs を推奨していますが、LXD ドキュメントでは Btrfs を推奨していません。また、パーティションを使用していないように見えます(ただし、追加の設定を行い、docker.io 以外のパッケージをインストールし、Btrfs ボリュームのみを Docker にアタッチしています)。そのため、なぜ問題が発生したのか疑問に思っています。
@vmsman さん、これまでで最も成功したセットアップのようですので、プロファイル、ストレージプール、および変更が必要だったシステム設定など、LXD セットアップの詳細を共有していただけますか?
LXD について、いくつか疑問があります。
- ストレージプールのループバックファイルではなくパーティションを使用することで、パフォーマンスの問題が解決し、ハングアップの問題が解消されるかどうか。
- MicroCloud や LXD クラスターを使用すること、または Ceph をストレージプールとして使用することが役立つかどうか。
全体として、LXD で Discourse を動作させることはできませんでしたが、LXD の使いやすさには非常に感銘を受けています。以前は HashiCorp で数か月間苦労しました。HashiCorp はエンタープライズユースケースにしか興味がないように思われます。一方、LXD はすぐに機能し、人々は小規模チームやインディー開発者が進歩できるようにサポートしているようです。