XNUMX年間の開発の後、 Kata Containers 3.0 プロジェクトのリリースが公開されました。 それが発展する 実行中のコンテナを整理するためのスタック 断熱材の使用 完全な仮想化メカニズムに基づいています。
Kata の中心にあるのは、共通の Linux カーネルを使用し、名前空間と cgroup を使用して分離された従来のコンテナーを使用するのではなく、完全なハイパーバイザーを使用して実行されるコンパクトな仮想マシンを作成する機能を提供するランタイムです。
仮想マシンを使用すると、Linux カーネルの脆弱性の悪用によって引き起こされる攻撃から保護する、より高いレベルのセキュリティを実現できます。
カタコンテナについて
カタコンテナ 分離インフラストラクチャへの統合に重点を置いています これらの仮想マシンを使用して従来のコンテナーの保護を強化する機能を備えた既存のコンテナーの。
プロジェクト さまざまな分離フレームワークと互換性のある軽量の仮想マシンを作成するメカニズムを提供します コンテナ、コンテナ オーケストレーション プラットフォーム、および OCI、CRI、CNI などの仕様。 Docker、Kubernetes、QEMU、および OpenStack との統合が利用可能です。
統合 コンテナ管理システム付きこれは、コンテナ管理をシミュレートするレイヤーによって実現されますこれは、gRPC インターフェイスと特別なプロキシを介して、仮想マシン上のコントロール エージェントにアクセスします。 ハイパーバイザーとして、Dragonball Sandbox の使用がサポートされています。 (コンテナーに最適化された KVM エディション)、QEMU、および Firecracker と Cloud Hypervisor を使用します。 システム環境には、ブート デーモンとエージェントが含まれます。
エージェント ユーザー定義のコンテナー イメージを OCI 形式で実行する Docker の場合は CRI、Kubernetes の場合は CRI です。 メモリ消費量を削減するために、DAX メカニズムが使用されます。 また、KSM テクノロジを使用して同一のメモリ領域を重複排除することで、ホスト システムのリソースを共有し、異なるゲスト システムを共通のシステム環境テンプレートに接続できるようにします。
Kata Containers 3.0 の主な新機能
新しいバージョンでは 代替ランタイムが提案されています (runtime-rs) は、Rust 言語で記述されたラッパー パディングを形成します (上記のランタイムは Go 言語で記述されています)。 ランタイム OCI、CRI-O、Containerd をサポートし、 これにより、Docker および Kubernetes と互換性があります。
この新しいバージョンの Kata Containers 3.0 で際立っているもう XNUMX つの変更点は、 GPUもサポートするようになりました。 この 仮想機能 I/O (VFIO) のサポートを含むこれにより、セキュアで非特権の PCIe デバイスとユーザー空間コントローラーが有効になります。
また、 メイン構成ファイルを変更せずに設定を変更するためのサポートを実装 「config.d/」ディレクトリにある別のファイルのブロックを置き換えることによって。 Rust コンポーネントは新しいライブラリを使用して、ファイル パスを安全に操作します。
さらに、 新しい Kata Containers プロジェクトが登場しました。 これは、オープン ソースの Cloud-Native Computing Foundation (CNCF) サンドボックス プロジェクトである Confidential Containers です。 Kata Containers のこのコンテナー分離の結果は、Trusted Execution Environments (TEE) インフラストラクチャーを統合します。
の その他の変更 目立つ:
- KVM とrust-vmm に基づく新しいドラゴンボール ハイパーバイザーが提案されました。
- cgroup v2 のサポートが追加されました。
- virtiofsd コンポーネント (C で記述) が virtiofsd-rs (Rust で記述) に置き換えられました。
- QEMU コンポーネントのサンドボックス分離のサポートが追加されました。
- QEMU は、非同期 I/O に io_uring API を使用します。
- QEMU および Cloud-hypervisor 用の Intel TDX (Trusted Domain Extensions) のサポートが実装されました。
- 更新されたコンポーネント: QEMU 6.2.0、Cloud-hypervisor 26.0、Firecracker 1.1.0、Linux 5.19.2。
最後に プロジェクトに興味のある方へ、Intel と Hyper によって Clear Containers と runV テクノロジを組み合わせて作成されたことを知っておく必要があります。
プロジェクト コードは Go と Rust で書かれており、Apache 2.0 ライセンスの下でリリースされています。 プロジェクトの開発は、独立した組織である OpenStack Foundation の後援の下に作成されたワーキング グループによって監督されています。
あなたはそれについてもっと知ることができます 次のリンク。