Containerization

目的


コモディティ化。つまり、差を無くしどこでも動作するようにする。

オペレーティングシステム、物理マシン、仮想マシンからアプリケーションを抽象化する。(クラウドファーストでありながら、オンプレでの利用もできる)

小さい容量、高速、移植性(どこでも動作)、簡易インストール

コンセプト


コンテナのプロセス・ネットワークが個別に隔離・分離されている。つまり、別のコンテナとは依存関係が無い。

仮想化からコンテナ化へ


ハードウェアに依存

CPUに依存してアプリケーションを開発する必要があり、異なるCPU上では動作しなかった。

言語とコンパイラ

コンパイラがC言語のような人にわかるコードをマシンの命令に自動的に作成。

いろんなコンピューター上で動作ができるようになった。

ただし、アプリケーションを動作させるのには、高価な物理的なハードウェアが必要。

仮想化とハイパーバイザー

一台の物理ハードウェア上で、より効率的に動作させる

一台の物理ハードウェア上で、複数の仮想マシンを動作させる

ハードウェア購入、納品の時間や物理的なスペースも減らすことができる

ただし、アプリケーションを動作させるのには、その条件にあった環境(OS≒仮想マシン)がそれぞれに必要。

コンテナ化

さらなる効率化が求めらる

OSからアプリケーションの抽象化

一つのOS上で、複数のアプリケーション動作環境を実現する。

用語


Untitled

どのように動くの?


一つのバンドルにパッケージ化されたもの

コードとそのアプリケーションが動作するのに必要な環境が一つになっている

完全なOSは必要としない

メリット


部門別のメリット

カスタマーサポート

クラウドオペレーション

品質保証

エンジニア

営業

コンテナをどのように構成されているの?