複数のクラウドやオンプレミスなど、異なる環境で迅速にアプリケーションを実行するための技術として、「コンテナ」の利用が広がっています。コンテナ管理ツールの「Docker」に加え、「Kubernetes」のようなコンテナオーケストレーションツールが利用できるようになり、開発者に限らずITインフラ運用者の間でもコンテナへの注目度が高まっています。本連載はコンテナやコンテナネットワークの基礎知識など、コンテナをITインフラ運用に用いる場合に知っておくべきポイントを解説します。
コンテナは仮想化技術の一つであり、単一のOSで複数のアプリケーションをそれぞれ隔離された状態で実行可能にします。コンテナを利用せず通常のOSで複数のアプリケーションを実行すると、そのOSが稼働するサーバ、そのサーバが利用するストレージ、ネットワークなどのリソースはアプリケーション間で共有されます。これに対し、コンテナでは各コンテナが個別に割り当てられたストレージやネットワークを持ち、他のコンテナから隔離された状態でアプリケーションを実行できます。
コンテナの役割は、隔離されたアプリケーション実行環境を用意することです。その点で、広く普及している仮想マシン(VM)と類似しています。ただしVMはハイパーバイザーなどの仮想化ソフトウェアによってハードウェアを抽象化し、単一のハードウェアで複数のOSが起動することを実現する技術であり、仕組みはコンテナと異なります(図1)。まずはVMと比較することで、コンテナの特徴を考えてみましょう。
「Webサイトのデジタルマーケティング実力評価診断」 エクスペリエンスとNexalがサービス開発
エクスペリエンスとNexalがそれぞれに長年手掛けてきたコンサルティングの知見を生かし、...
「幸福感を広めてほしい」 コロナ禍で政府への信頼が低下する一方、ブランドへの期待感が高まる
McCann Worldgroupが「文化と新型コロナウイルスについての真実 第9回調査」の結果を発...
今ツイートした人に広告配信 電通デジタルと電通が「リアルタイムキーワードターゲティング」を提供開始
広告主が配信対象とするツイートのターゲティング期間を短縮してタイムラグを解消。今ま...