BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Styrolite発表、低レベルのコンテナランタイム

Styrolite発表、低レベルのコンテナランタイム

原文リンク(2025-04-30)

Styroliteはオープンソースで、Linuxコンテナ化におけるセキュリティとユーザビリティの問題に対処するための低レベルのコンテナランタイムである。Edera社により開発され、制御されたセキュアな方法で開発者がコンテナを作成・管理できるプログラム的APIを提供することにより、Styroliteは自己差別化している。

Edera社の創設者かつ著名なエンジニアのAriadne Conill氏は、ブログ投稿でStyroliteを発表した。新しい低レベルコンテナランタイムの必要性について詳述し、Conill氏は、Bubblewraputil-linuxのunshareなどの既存の低レベルコンテナランタイムは複雑なコマンドラインインターフェースに過度に依存しているか、もしくは必要なプログラム制御が欠けていると述べた。これによりエラーが発生しやすく、現代のセキュリティにフォーカスしたプラットフォームに統合するのが難しくなっている。

一方でKubernetes Container Runtime Interface (CRI)のような高レベルソリューションは、低レベルのコンテナ管理には抽象化が過剰すぎる。これらのギャップを埋めるため、エンジニアがコンテナをより精密かつ信頼性の高い方法で生成・管理できる新しい低レベルランタイムが必要だ。

Linuxの名前空間はコンテナの基盤であるが、元々は厳密なセキュリティ境界として設計されていない。これにより、コンテナの脆弱性がエコシステム全体に広がることがある。この制限を踏まえ、Styroliteはコンテナ化されたワークロードに対してより強固なセキュリティ基盤を提供する。

内部的にはStyroliteはLinuxのunshare(2)システムコールを利用して、プロセスをホストの名前空間から分離することで隔離環境を作成する。このアプローチを使用することで、エンジニアはどの名前空間が分離され、リソースがコンテナにどのように公開されるかを詳細に制御できる。APIは、ルートファイルシステム、実行ファイル、引数、作業ディレクトリ、名前空間の明確な仕様を提供し、手動のCLIスクリプトよりもエラーが発生しにくいコンテナ設定を実現する。

Hacker Newsの技術コミュニティは直ちにこの発表に注目した。あるHNユーザーが、いまだLinuxの名前空間を使用しているにもかかわらず、StyroliteでEdera開発者がどんな違うことをしているのか質問した。HNハンドルdenhamparryを持つEdera開発者が回答した、

(...)私たちはEdera Protectでコンテナを実行するためにStyroliteを使用しています。Edera Protectはゾーンを作成してプロセスを他のゾーンから隔離するため、誰かがコンテナから脱出した場合でも、彼らはゾーンのプロセスしか見えません。ホストオペレーティングシステムやマシンのハードウェアは見えません。ここでの他の隔離実装との主な違いは、パフォーマンスの低下がなく、コンテナイメージを再構築する必要がなく、特定のハードウェアを必要としないことです(例えば、Edera Protectはベアメタルやパブリッククラウドインスタンスなど、あらゆる環境で実行できます)。

同じ投稿の別会話スレッドではgVisorとEdera Protectの機能が比較された

Edera Protect内ではStyroliteはマイクロサービスのセキュリティを強化し、セキュリティセンシティブなワークロードに対して細かいコンテナ隔離を可能にする。また、エンジニアはStyroliteを使用して、継続的インテグレーションとデリバリーパイプラインのための隔離されたリソース制御環境を構築できる。

詳細について興味ある読者はStyroliteのGitHubリポジトリにアクセスできる。

作者について

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT