オルタナティブ・ブログ > ITソリューション塾 >

最新ITトレンドとビジネス戦略をわかりやすくお伝えします!

【図解】コレ1枚でわかる仮想化とコンテナ

»

サーバー仮想化とコンテナ

con1.png

「サーバー仮想化」による仮想マシンの使用目的は、「隔離されたアプリケーション実行環境」すなわち、すなわちアプリケーションがクラッシュしても他に影響を与えない、アプリケーション毎に独自のシステム管理とユーザー・グループを持つことができるようにすることです。

同様の目的を実現する手段として「コンテナ」があります。コンテナは、「隔離されたアプリケーション実行環境」と言う点では仮想マシンと同じですが、仮想マシンとは異なり、ひとつのOS上で複数のコンテナを動かすことができます。仮想マシンとは、それぞれが本物と同じ個別のシステムなので、それぞれにOSを稼働させ、CPUやメモリ、ストレージなども本物と同じだけ消費します。一方、コンテナは、OSが1つなのでシステム資源のオーバーヘッド(消費される資源や能力)が少なくてすみ、同じ性能のハードウェアであれば、仮想マシンより多くの数のコンテナを実行できます。

また、コンテナは、それを起動させるために仮想マシンのようにマシンを立ち上げ、OSを起動させる手間がかからないため、極めて高速で起動できます。さらに個別にOSを用意する必要がないのでディスク使用量も、それを動かすためのシステム資源も少なくて済みます。

但し、コンテナはどれも同じOSです。仮想マシンならそれより一段下のレベル、つまりハードウェアのサーバーと同じ振る舞いをするので、仮想マシン毎に別々のOSを稼働させることができる点が異なります。ただ、本番でアプリケーションを稼働させる場合、仮想マシンが異なっても、管理負担軽減のために同じOSに統一することも多く、これが制約になることは、多くはありません。

ひとつのコンテナは、OSから見るとひとつのプロセスです。プロセスとは、プログラムが動いている単位です。そのため、他のサーバーにコンテナを移動させて動かすにも、OS上で動くひとつのプログラムを移動させるのと同様に、ハードウェアの機能や設定に影響を受けることがありません。仮想マシンなら、仮想マシンごとの機能や構成にかかわる設定情報も引き継がなくてはなりませんが、コンテナではその必要がなく、異なるサーバー間で実行環境を移動させることが容易にできます。

コンテナ管理ソフトウエア「Docker」

con2.png

「コンテナ」を実現するのが、「コンテナ管理ソフトウェア」です。このソフトウエアを使えば、そこでハードウェアやOSごとの違いを吸収してくれるため、その上でアプリケーションやミドルウェアの稼働が保証されているコンテナであれば、他のサーバに移して動かしても確実に動くことが保証されます。そのため、自前のハードウェアとクラウド・サービス、あるいは異なるクラウド・サービスをまたがるなどして、開発〜テスト〜本番を実施するような場合、アプリケーション開発者は、OSやインフラの違いを意識することなく、アプリケーションを開発することができます。また、運用管理者は、「コンテナ管理ソフトウェア」を自分たちで使うインフラ環境で安定稼働することを保証しておけば、これまでのようにアプリケーション開発者と運用管理者がアプリケーションごとに本番環境への移行を個別に相談し、対応しなくてもよくなります。

アプリケーション開発者は迅速にアプリケーションを開発、変更してユーザーに提供する、一方で運用管理者はインフラを安定稼働させるといった、それぞれの責任を独立して果たすことができるようになります、その結果、本番環境へのデプロイメント(移行作業)は迅速、頻繁に行えるようになり、アプリケーション開発や変更に伴うメリットをユーザーが直ちに享受できるようになります。

この「コンテナ管理ソフトウェア」の1つとして、業界標準となっているのが、Docker社が提供する「Docker」です。Dockerが注目されるようになったのは、コンテナを生成する設定を「Dockerfile」として公開し、それを他のユーザーと共有できる仕組みを設けた点にあります。これによって、他のユーザーが作ったソフトウェアとそれを動かすソフトウェア構築プロセスをそのままに他のサーバーで実行できるようになりました。その結果、物理マシンや仮想マシンを使う場合のように、アプリケーションを稼働させるためにOSをインストールして設定しテストするなどの大きな負担や手間が削減できるようになりました。

Dockerは、AWSやGoogleなどのクラウド・サービス・プロバイダーをはじめ、EMC VMware/Dell、IBM、RedHatなどの大手ITベンダーが採用しています。また、Microsoftも自社のクラウド・サービスであるAzureやWindows Serverで採用しており、「コンテナ管理ソフトウェア」の標準として、広く普及しています。

ITビジネス・プレゼンテーション・ライブラリー/LiBRA

【7月度のコンテンツを更新しました】

=======

  • RPAのプレゼンテーションに新しい資料を加えました。
  • 講演資料:「デジタル・トランスフォーメーションの本質と「共創」戦略」を追加しました。
  • 動画セミナーを3編追加いたしました。

=======

総集編
【改訂】総集編 2019年7月版・最新の資料を反映しました。

動画セミナー/ITソリューション塾・第31期
【改訂】IoT
【改訂】AI
【改訂】コレからの開発と運用

ITソリューション塾・最新教材ライブラリー/ITソリューション塾・第31期
【改訂】IoT
【改訂】AI
【改訂】コレからの開発と運用

ビジネス戦略編
【新規】OMO(Online Merges with Offline) p.5
【新規】デジタル・トランスフォーメーションとOMO p.16
【新規】デジタイゼーションとデジタライゼーション p.22
【新規】DX事業とは p.43
【改訂】DXを支えるテクノロジー p.55
【新規】Legacy ITとModern IT p.54
【新規】事業戦略を考える p.79

サービス&アプリケーション・先進技術編/IoT
【新規】IoTセキュリティ p.82

サービス&アプリケーション・先進技術編/AI
【新規】特化型と汎用型の違い p.13
【新規】ルールベースと機械学習 p.73
【改訂】知能・身体・外的環境とAI p.80
【改訂】機械と意識とAI p.81
【新規】学習と推論の関係 p.79
【新規】創造力とは何か P.114

ITインフラとプラットフォーム編
*変更はありません

クラウド・コンピューティング編
【改訂】クラウド・サービスの区分 p.43
【新規】なぜクラウド・ネイティブにシフトするのか p.105

サービス&アプリケーション・基本編
Frontier One Inc. (鍋野敬一郎氏)より提供の資料
【新規】ERPの進化 :業務システムの寄せ集めから次世代ERPへ p.18
【新規】SAPの提唱するインテリジェンス・エンタープライズp.19
【新規】SAPにおけるAIの定義(2018)p.20
【新規】SAP Leonardo :ERP+機械学習p.21
【新規】SAP Leonardo : ERP + AI = Intelligent Apps ! p.22

開発と運用編
【改訂】ビジネス・スピードを加速する方法 p.41

ITの歴史と最新のトレンド編
*変更はありません

テクノロジー・トピックス編
Facebook LIBRA
【新規】LIBRA協会の参加企業 p.52
【新規】LIBRAとは p.53
【新規】LIBRAとBit Coin との違い p.54
【新規】LIBRAへの懸念 p.55

RPA
【新規】AI-OCRの事例 p.25
【新規】導入上の留意点 p.26
【新規】成果をあげるための取り組み p.27
【新規】プロセス・マイニングとRPA 32

講演資料:デジタル・トランスフォーメーションの本質と「共創」戦略

Comment(0)