systemd-nspawnが本番展開に適していないのはなぜですか?

systemd-nspawnが本番展開に適していないのはなぜですか?

systemd-nspawnについて読みながら、誰かが言及本番環境では使用しないでください。その理由は、管理および展開インフラストラクチャが不足しているためです。実用性が唯一の理由ですか、それとも潜在的な安全/機能的な理由もありますか?

答え1

Lennart Poetteringは2013年のスピーチでこれに言及しましたが、2015年には次のように述べたものとして引用されました。

systemdにはsystemd-nspawnコンテナマネージャも含まれています。これは比較的小さいが強力なコンテナマネージャの実装です。当初はテスト目的で作成しましたが、今日、私たちはさまざまな生産目的に使用できると思います。。実際、CoreOSのrktコンテナツールはそれを低レベルのコンテナバックエンドとして使用します。

引用:systemdとコンテナが出会う場所:Lennart PoetteringとのQ&A

答え2

あなたのソースは、システム開発者Lennart Poetteringのデモを説明します。 LennartはRed Hatの社員です。 Red Hat Enterprise Linux と Fedora Linux コミュニティディストリビューションの両方が SELinux を使用します。

systemd-nspawnとSELinuxの統合が壊れているようです。例をご覧ください。rhbz1416540。また、Fedora Linux(使用時のデフォルト[email protected])のプライベートネットワークネームスペースで起動されたコンテナからネットワークにアクセスしようとするとファイアウォールによってブロックされる

私の結論は、systemd-nspawnがコンテナをサーバーとして実行するのをサポートしていないことです。 Red Hat以外のシステムで実行することもできますが、何の利点も得られません。LSMベース保護。自分でいくつかの問題を解決できない場合は、そうです。

他のよく知られたコンテナマネージャには、LSMベースの保護が含まれています。特にDockerですが、LXCにはAppArmorのいくつかの戦略も含まれています。

本番準備が完了したということは、人々がsystemd-nspawnを安全に使用する方法を確認し、文書化し、マーケティングまで行っていることを意味します。私はsystemd開発者が少なくともまだ実際にそうしていないことを認めるほど正直だと思います。

関連情報