仮想化とは、単一の物理マシンから仮想環境を作成できるようにするテクノロジーであり、リソースをコンピューティング環境間で分散することで、より効率的にリソースを使用できるようにします。
ソフトウェアを使用する仮想化は、コンピューター・ハードウェアの上に抽象化レイヤーを作成し、プロセッサー、メモリー、ネットワーク、ストレージなどの単一システムのコンポーネントを複数の仮想マシン(VM)に分割します。各VMは独自のオペレーティング・システム(OS)を実行し、同じ基盤ハードウェアを共有しているにもかかわらず、個別の物理コンピューターのように動作します。
今日、仮想化はエンタープライズITアーキテクチャーの基本的な手法であり、クラウド・コンピューティングの重要な推進要因となっています。IBM Cloud、Microsoft Azure、Google Cloud、Amazon Web Services(AWS)などのクラウド・サービス・プロバイダー(CSP)が、ITインフラを最適に活用してスケーラブルなリソースを提供できるようにします。企業にとっては、必要なコンピューティング・リソースだけを購入し、ワークロードの増加に応じてコスト効率よく拡張し、投資を最大化することを意味します。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
仮想化テクノロジーの出現は、IBMがIBM System/360向けのタイムシェアリング研究プロジェクトであるCP-40を開始した1964年にまで遡ります。CP-40はその後CP-67へと進化して、最終的にはUnixに影響を与えました。Unixは、仮想マシンなどの最新の仮想化テクノロジーへの基盤を築いた最初のマルチユーザー型タイムシェアリング・オペレーティング・システムの1つです。1972年、IBMはSystem/370向けの最初の公式仮想マシン製品であるVM/370を発表しました。
1998年、VMwareは、単一のマシンを複数の仮想マシンに分割し、それぞれが独自のオペレーティング・システムを実行できるようにする、x86オペレーティング・システムを開発しました。同社が1999年に発売したWorkstation 1.0は、ユーザーが1台のPC上で複数のオペレーティング・システムを仮想マシンとして稼働できる初の商用製品でした。この製品は、さまざまなOS環境でアプリケーションを簡単にテストおよび開発できるため、ソフトウェア開発者の間で人気が高まりました。
The Business Research Companyの予測によると、仮想化ソフトウェア市場は2024年の858億3,000万米ドルから、2025年には1,001億9,000万米ドルまで、年平均成長率(CAGR)16.7%で成長すると予測されています。1
エッジコンピューティング、コンテナ化、ハイブリッドクラウドやマルチクラウドの採用、セキュリティーやコンプライアンスへの関心の高まりなどが、この成長を後押ししています。仮想化市場に貢献するその他の新たなトレンドには、モノのインターネット(IoT)、人工知能(AI)、機械学習(ML)の統合が含まれます。
仮想化は、ITオペレーションをサポートするオンプレミスとクラウドベースのデータセンターの両方に、以下のような数多くのメリットをもたらします。
仮想化以前は、ITスタッフは各アプリケーション・サーバーに専用の物理的な中央処理装置(CPU)を割り当て、アプリケーションごとに個別のサーバーを設置していました。このアプローチでは、1台のコンピューターに1つのアプリケーションと1つのオペレーティング・システムが必要でしたが、その信頼性を目的に採用されていました。ただし、各物理サーバーは十分に使用されていないことがよくありました。
対照的に、サーバー仮想化では、信頼性を犠牲にすることなく、単一の物理サーバー(通常はx86サーバー)上で複数のアプリケーションを、それぞれ独自のVMとOSで実行することができます。この機能により、物理ハードウェアのコンピューティング能力を最大限に活用し、リソースの利用が最適化されます。
物理コンピューターをソフトウェア定義型のVMに置き換えると、ソフトウェアを介したポリシーの管理と適用が容易になります。これにより、自動化されたITサービス管理ワークフローの作成が可能になります。例えば、自動化されたデプロイメントおよび構成ツールを使用すると、管理者はソフトウェア・テンプレートで仮想マシンとアプリケーションをサービスとして定義できるため、手動セットアップなしで一貫してデプロイできます。
さらに、仮想化セキュリティー・ポリシーは、仮想マシンの役割に基づいてセキュリティー構成を適用できます。これらのポリシーにより、使用されていない仮想マシンを廃止し、スペースとコンピューティング能力を節約することで、リソース効率を高めることもできます。
OSやアプリケーションのクラッシュは、ダウンタイムを引き起こし、ユーザーの生産性を損なう可能性があります。仮想化により、管理者は複数の冗長VMを相互に並行して実行し、問題が発生した場合にはVM間でフェイルオーバーできます。複数の冗長化された物理サーバーを運用する方が、はるかにコストがかかります。
アプリケーションごとにハードウェアをセットアップするのは時間がかかる場合があります。しかし、ハードウェアがすでに用意されていれば、アプリケーションを実行するための仮想マシンのプロビジョニングは大幅に高速化されます。VM管理ソフトウェアでは、このプロセスを自動化し、ワークフローを合理化できるようになりました。
仮想化により、ダウンタイムを最小限に抑えてサービスを迅速に復旧できるため、災害復旧が最適化されます。仮想マシンは簡単に移動、複製、またはバックアップできるため、システムを運用状態に復元する作業は従来の物理サーバーに比べて迅速かつ効率的です。
仮想化は、ハードウェアの取得、保守、エネルギー消費にかかるコストの削減に役立ちます。物理サーバーを仮想マシンに統合すると、ハードウェアを追加する必要性が減り、設備投資と運用費の両方を節約できます。
仮想化のメリットについて詳しくは、「仮想化の5つのメリット」を参照してください。
仮想化では、仮想環境を作成および管理するために、いくつかの重要なコンポーネントが利用されます。各VMは、リソースの効果的な割り当てを実現し、複数のVMが干渉なく同時に実行できるようにする上で重要な役割を果たします。
「ホスト・マシン」とも呼ばれる物理マシンは、仮想マシンにCPU、メモリー、ストレージ、ネットワーク・リソースを提供するハードウェア(サーバーやコンピューターなど)です。
仮想マシン(VM)は、物理コンピューターをソフトウェア形式でシミュレートする仮想環境のことです。VMは通常ゲストと呼ばれ、ホスト・マシン上で1台以上の「ゲスト」マシンが動作します。
仮想マシンは通常、構成、仮想ハード・ドライブのストレージ、その他の依存関係を含む複数のファイルで構成されます。仮想マシン間でシステム・リソースを共有することにより、仮想化はオンデマンドでの拡張性、効率性、コスト削減を実現できます。
ハイパーバイザーはVMを調整するソフトウェア層です。これは、VMと基盤となる物理ハードウェアの間のインターフェースとして機能し、両者が実行に必要なリソースにアクセスできるようにします。また、VMがお互いのメモリー空間やコンピューティング・サイクルに影響を与えることで、相互に干渉しないようにします。
ハイパーバイザーには次の2つのタイプがあります。
タイプ2のハイパーバイザーは、既存のOS上のアプリケーションとして実行されます。代替オペレーティング・システムを実行するためにエンドポイント・デバイスで最も一般的に使用されますが、ホストOSを使用して基盤となるハードウェア・リソースにアクセスして調整する必要があるため、パフォーマンスのオーバーヘッドが発生します。
サーバーの仮想化にとどまらず、さまざまな種類のITインフラストラクチャーを仮想化することで、特にIT管理者、そして企業全体に大きなメリットをもたらすことができます。これらのタイプの仮想化には、次のようなものがあります。
デスクトップ仮想化を使用すると、同じコンピューター上の独自のVMで複数のデスクトップ・オペレーティング・システムを実行できます。
デスクトップ仮想化には次の2つのタイプがあります。
仮想デスクトップの詳細については、「DaaS(Desktop-as-a-Service)とは」をご確認ください。
ネットワーク仮想化では、ソフトウェアを使用してネットワークの「ビュー」を作成し、管理者が単一のコンソールからネットワークを管理するために使用できます。ハードウェア要素と機能(接続、スイッチ、ルーターなど)を抽象化し、ハイパーバイザー上で実行されるソフトウェアに抽象化します。仮想ネットワーク管理者は、基盤となる物理コンポーネントに触れることなくこれらの要素を変更および制御できるため、ネットワーク管理が劇的に簡素化されます。
ネットワーク仮想化のタイプには以下が含まれます。
ストレージ仮想化により、ネットワーク上のすべてのストレージ・デバイスが、個々のサーバーにインストールされているか、スタンドアロンのストレージ・ユニットにインストールされているかに関係なく、単一のストレージ・デバイスとしてアクセスし、管理できるようになります。具体的には、ストレージ仮想化では、ストレージのすべてのブロックを単一の共有プールに統合し、必要に応じてネットワーク上の任意のVMに割り当てることができます。ストレージ仮想化は、VMへのストレージのプロビジョニングを容易にし、ネットワーク上で利用可能なすべてのストレージを最大限に活用できるようにします。
クラウド・サービス・プロバイダーは、ストレージ仮想化を利用して、Block Storage、Object Storage、File Storageなどのクラウド・ストレージ・サービスを提供しています。
現代の企業は、クラウドからオンプレミスのハードウェアおよびソフトウェア・システムに至るまで、多数の場所に複数のファイル形式を使用して、複数のアプリケーションのデータを保存しています。データ仮想化により、ソース、形式、場所に関係なく、あらゆるアプリケーションがすべてのデータにアクセスできます。
データ仮想化ツールは、データにアクセスするアプリケーションとデータを保管するシステムの間にソフトウェア層を作成します。この層は、必要に応じてアプリケーションのデータ要求またはクエリーを変換し、複数のシステムにまたがる成果を返します。データ仮想化は、他のタイプの統合が実現不可能で、望ましくなく、手頃な価格でない場合に、データ・サイロを破壊するのに役立ちます。
アプリケーション仮想化では、アプリケーション・ソフトウェアをユーザーのOSに直接インストールせずに実行できます。このテクノロジーは、アプリケーションのみが仮想環境で実行され、エンド・ユーザーのデバイス上のOSは通常どおり実行されるため、完全なデスクトップ仮想化とは異なります。
アプリケーション仮想化には次の3つのタイプがあります。
データセンターの仮想化は、データセンターのハードウェアのほとんどをソフトウェアに抽象化し、管理者が単一の物理データセンターを異なるクライアント向けの複数の仮想データセンターに効果的に分割できるようにします。
各クライアントは、同じ基盤となる同じ物理ハードウェア上で実行される独自のサービスとしてのインフラストラクチャー(IaaS)にアクセスできます。仮想データセンターを利用すると、クラウド・ベースのコンピューティングへの導入が容易になるため、企業はインフラストラクチャー・ハードウェアを購入することなく、完全なデータセンター環境を迅速に構築できます。
中央処理装置(CPU)の仮想化は、ハイパーバイザー、仮想マシン、さまざまなオペレーティング・システムを可能にする基本的なテクノロジーです。これにより、単一のCPUを複数の仮想CPUに分割して、複数のVMで使用することができます。
当初、CPU仮想化は完全にソフトウェア定義でしたが、今日のプロセッサーの多くには、CPU仮想化をサポートする拡張命令セットが含まれており、VMの性能が向上します。
グラフィック・プロセッシング・ユニット(GPU)は、大量のグラフィック処理や数学的処理を引き受けることで、全体的なコンピューティング性能を向上させる特別なマルチコア・プロセッサーです。GPU仮想化により、複数のVMが単一のGPUの処理能力のすべてまたは一部を使用して、より高速なビデオ、AI、その他のグラフィックや数学を多用するアプリケーションを実現できます。
仮想化環境のGPUには主に次の2つのタイプがあります。
サーバー、ストレージ、その他の物理データセンター・リソースを仮想化することで、クラウド・コンピューティング・プロバイダーは顧客に以下のようなさまざまなサービスを提供できます。
これらのクラウド・サービス・モデルの詳細については、当社のトピック・ページ「IaaS、PaaS、SaaSの比較」を参照してください。
サーバー仮想化では、コンピューター全体をハードウェアで再現し、OS全体を実行します。OSは1つのアプリケーションを実行します。これは仮想化を全くしないよりも効率的ですが、実行するアプリケーションごとに不必要なコードやサービスが重複してしまいます。
コンテナは別のアプローチを取ります。基盤となるOSカーネルを共有し、アプリケーションとその依存関係(ソフトウェア・ライブラリーや環境変数など)のみを実行します。この機能により、コンテナはより小さく、より速くデプロイできるようになります。
ブログ記事「コンテナと仮想マシン(VM)の違いとは」をご覧になり、詳細な比較をご確認ください。
「コンテナ化の説明」のビデオでは、コンテナ化の基本と、VMによる仮想化との比較について説明しています。
仮想化には数多くのセキュリティー上のメリットがあります。例えば、マルウェアに感染したVMは、VMが感染せず安定した時点(スナップショットと呼ばれる)までロールバックすることができます。また、より簡単に削除して再度作成することもできます。マルウェアはOSのコア・コンポーネントに深く統合されていることが多く、システムのロールバックを超えて永続性があるため、仮想化されていないOSを常に根絶できるとは限りません。
VMとその基盤となる物理ハードウェアを保護するためのセキュリティー機能には、アクセス制御、定期的な更新、ネットワーク・セグメンテーション、暗号化などがあります。さらに、ソフトウェア・ベースのセキュリティー・ソリューションは、コンプライアンスへの対処やリアルタイムの脅威検知などを行う仮想マシン監視ツールを提供します。
多数の企業が、サーバー、デスクトップ、アプリケーションの仮想化など、さまざまなユースケースに合わせてカスタマイズされた専門的な仮想化ソリューションを提供しています。以下は、マーケットプレイスで最も有名なソリューションの一例です。
Red Hat OpenShift on IBM Cloudは、フルマネージド型のOpenShift Container Platform(OCP)です。
IBM Spectrum Virtualizeで、オンプレミスとクラウドをシームレスにつなぎ、データをより柔軟に管理します。
ビジネスニーズに合ったクラウド・インフラストラクチャー・ソリューションを見つけ、必要に応じてリソースを柔軟に拡張します。