gVisorとは
gVisorとは、コンテナ型仮想化で使われる技術の1つで、OCI Runtime Specificationに基づいて作られたKubernetesやDockerの低レベルなランタイムです。
gVisorは、Go言語で書かれたユーザスペースで動くカーネルと紹介されています。Google社が開発し、オープンソースとして公開されています。runcのセキュリティの問題を解消するために開発されました。
コンテナ・アーキテクチャ
コンテナ型仮想化は、OCI Runtime Specification、OCI Image Format Specification、CRI(Container Runtime Interface)などの規定によって、アーキテクチャーが標準化されています。図は、そのアーキテクチャを示したものです。
gVisorは、このアーキテクチャのうちの低レベルのランタイムとして、実装されています。
gVisorとrunc
低レベルのランタイムとしては、Dockerのコードから分離して作られたruncが知られています。runcでは、すべてのコンテナが1つのカーネルを共有して動作します。そのため、不適切なコンテナが存在した場合には、他のコンテナに影響が及ぶ可能性があり、セキュリティ的に脆弱だと懸念されています。
gVisorは、コンテナの動作に必要なシステムコールの多くを、直接ホストカーネルに渡さず、ユーザ空間で処理します。ただし、ハードウェアに関連する一部のシステムコールだけは、ホストカーネルに処理を委ねる構造になっています。このような構造によって、gVisorは、ホストカーネルとコンテナを切り離し、コンテナをサンドボックス化することができます。
gVisorは、Linuxでのみ動作します。
低レベルのランタイムとしては、他にKata Containerなどがあります。
【カテゴリ】:システム管理  仮想化  オープンソースソフトウェア  
【Webセミナー】Rocket.Chatだけじゃない!OSSビジネスチャットの最新情報
日程: | 12月19日(木)Webセミナー「BigBlueButton」を使用します。 |
内容: | Rocket.Chatの機能制限でお困りの方も必見!ライセンスフリーで利用できるOSSのビジネスチャットを紹介します。 |
ご興味のあるかたはぜひご参加ください。 |
関連用語
- Kubernetesとは
- Dockerとは
- Kata Containerとは
- CRI-Oとは
- runcとは
- containerdとは
- rktとは
- Podとは
- podmanとは
- Deploymentとは
- ReplicaSetとは
- Minikubeとは
- Microk8sとは
- Dockerfileとは