仮想アプライアンスとは、ハイパーバイザ上で実行可能な、事前構成済みの仮想マシンイメージのことです。仮想アプライアンスは、より広範なソフトウェアアプライアンスの一種です。仮想マシンにソフトウェアアプライアンスをインストールし、それをイメージとしてパッケージ化することで、仮想アプライアンスが作成されます。ソフトウェアアプライアンスと同様に、仮想アプライアンスは、複雑なソフトウェアスタックの実行に伴うインストール、構成、およびメンテナンスのコストを削減することを目的としています。
仮想アプライアンスは完全な仮想マシンプラットフォームではなく、タイプ1またはタイプ2のハイパーバイザである仮想マシンプラットフォーム上で動作するように設計されたソフトウェアスタックを含むソフトウェアイメージです。
仮想アプライアンスは、電子ダウンロードまたは物理的な配布のいずれかによって、ファイルとしてユーザーまたは顧客に提供されます。最も一般的に使用されるファイル形式は、Open Virtualization Format (OVF) です。Open Virtual Appliance (OVA) として配布される場合もあり、.ovaファイル形式は .ovf と互換性があります。分散管理タスクフォース(DMTF) は、OVF 仕様ドキュメントを公開しています。[ 1 ] VMware、Microsoft、 Oracle 、Citrixなどのほとんどの仮想化プラットフォームは、OVF ファイルから仮想アプライアンスをインストールできます。[ 2 ]
仮想化は、グリッドコンピューティング分野における重要な課題、すなわち、十分な規模のグリッドは必然的に多様なハードウェア構成とオペレーティングシステム構成から構成されるという現実を解決します。仮想アプライアンスを導入することで、グリッドノードのプロビジョニングを極めて迅速に行うことが可能になり、さらに重要なことに、アプリケーションに関するすべての情報を仮想アプライアンス内にカプセル化することで、グリッドオペレーターとグリッドコンシューマーを明確に分離することができます。
仮想アプライアンスは、サービスとしてのインフラストラクチャ(IaaS)クラウドコンピューティングにおいて重要なリソースです。仮想アプライアンスのファイル形式はクラウドプロバイダーの管轄であり、クラウドユーザーが仮想アプライアンスの所有者であっても、通常はクラウドユーザーには関係ありません。ただし、仮想アプライアンスの所有権の移転や、クラウドデータセンター間での仮想アプライアンスの移転には課題が生じる可能性があります。このような場合、仮想アプライアンスのコピー機能やエクスポート/インポート機能を使用してこの問題を克服できます。[ 3 ]
ホスト型サービス提供のプラットフォームとして仮想化が台頭するにつれ、仮想アプライアンスは、従来のオンプレミスアプリケーションを、マルチテナント向けの大規模なアプリケーション再設計を必要とせずに、サービスとしてのソフトウェア(SaaS)モードで迅速に再展開するための直接的な手段を提供するようになりました。仮想アプライアンスは、ハードウェアおよびオペレーティングシステムのインフラストラクチャプロバイダーとアプリケーションスタックプロバイダーを切り離すことで、一方では規模の経済性を、他方ではシンプルさの経済性を活用できるようにします。Salesforce.comなどが提唱する従来のSaaSアプローチは、共有インフラストラクチャを活用することで、ソフトウェアスタックに大規模な変更と複雑さの増大を強いています。
SaaSを提供する仮想アプライアンス方式の具体的な例として、Amazon Elastic Compute Cloud (EC2) が挙げられます。これは、Xenハイパーバイザーノードのグリッドと、 Amazon Machine Image形式で提供されるパッケージ化された仮想アプライアンスを組み合わせたものです。Amazon EC2はコスト障壁を大幅に低減し、ホスト型サービスの顧客ごとに専用の仮想アプライアンスインスタンスをプロビジョニングすることが可能になりました。これにより、顧客は共通のインスタンスを共有せざるを得なくなりました。EC2が登場する以前は、シングルテナント型のホスト型モデルはコストが高すぎたため、初期のASP (アプリケーションサービスプロバイダー)の多くは失敗に終わっていました。
さらに、SaaSのマルチテナント方式とは対照的に、仮想アプライアンスは、実行中のアプリケーションへのローカルネットワークアクセスが必要な顧客や、サードパーティのホスティングモデルでは満たせないセキュリティ要件を持つ顧客向けに、オンプレミス環境に展開することも可能です。基盤となる仮想化技術により、仮想アプライアンスインスタンスを物理的な実行環境間で迅速に移動することもできます。従来のSaaS方式では、アプリケーションはホストされたインフラストラクチャ上に固定されます。