コンテナ仮想化とは、どのような概念ですか?

メモリやサーバのリソース使用を節約するために、誕生した技術です。

従来のサーバ仮想化には、仮想化ソフトウェア上の仮想マシンやゲストOSがメモリやサーバのリソースを使用し過ぎるというデメリットがありました。こうしたデメリットを避けるために誕生したのがコンテナ仮想化です。
コンテナ仮想化では、コンテナエンジン上にOSの一部機能を搭載することで「仮想的なユーザー空間=コンテナ」を構築します。システム開発に必要な時間を大幅に削減できます。

コンテナ仮想化は、システム開発に必要な時間を大幅に削減できます。

コンテナ仮想化では、仮想マシンとゲストOSの立ち上げが必要ないために起動時間が短く、メモリやサーバの負荷も小さくなります。また、コンテナ内の環境をパッケージとして保存・移行でき、コンテナ内にほぼすべてのシステム環境を構築できるため、システム開発に必要な時間を大幅に削減できます。
ただし、仮想化された各コンテナはホストOSの一部を共有して稼働するためにベースとなるOSは選べず、ホストOSと同じOS環境を利用することになります。また、別のコンテナにおける負荷やセキュリティの影響を受けやすいなどのデメリットもあります。

IT常識_03_p155-247_z.indd

コンテナ仮想化にはオーケストレーションツールが必須です。

コンテナ仮想化では、複数のコンテナを効率よく稼働させるために、オーケストレーションツールが必要になります。オーケストレーションツールは、必要なコンテナを配置し、コンテナの自動ビルドを実行し、負荷に応じてコンテナを自動増減させます。
現在、コンテナエンジンとしてはDocker、コンテナオーケストレーションツールとしてはKubernetesが業界標準となっています。

おすすめの記事