実家で古いアーカイブを整理しているときに見つけました。懐かしい資料です。
マイクロソフト SoftGrid Application Virtualization の概要 (ソフトグリッド アプリケーション仮想化)で、いまの App-V と何が違うのかは用語と配布管理方法が異なりますが、基本概念は同じです。
■基本概念(採用理由):
・管理、プロビジョニング、サポート、展開の一元化によってアプリケーションの管理コスト削減する。 ・アプリケーションをデスクトップ、ラップトップ、およびサーバーに展開する際のリスク、コスト、 および時間削減。 ・アプリケーションの競合が最小化され、複数のプラットフォームでより多くのアプリケーションを実行する。 ・アプリケーションの競合が回避され、回帰テスト作業が少なくなる。 ・ターミナル サービス ファームのサーバーの数が削減され、複雑さが軽減する。 ・ローカルにインストールすることなく、本当の意味でアプリケーションのオンデマンド利用が可能になり、 管理時間とコスト削減する。 ・既存のソフトウェア資産を保持しながら、アプリケーションをネットワーク対応ユーティリティとして 利用する。 ・ライセンスの準拠が管理され、ソフトウェアの不正コピーを防止でき、ソフトウェア資産の管理が 容易になる。
===
■アプリケーション仮想化の基本処理:(上位レイヤでの動き)
・アプリケーションはローカルの OS またはファイル システムにインストールされない。 ・アプリケーションは、ローカルにインストールされたアプリケーションと同様に、ローカル リソースを使用 してローカルで実行される。 ・各アプリケーションについて仮想環境が読み込まれる。 ・仮想環境によって、アプリケーションはオペレーティング システムから分離されるので、OS は アプリケーションによる変更から保護される。また、アプリケーションは他のアプリケーションからも 分離される。 ・アプリケーションはインストールされていないが、ローカルにインストールされたアプリケーションと同様に、 ローカルの OS とやり取りし、システムのすべての周辺機器(ローカル ディスク、USB デバイス、 ネットワーク プリンタなど)を直接使用する。 ・アプリケーションの必要な部分のみがクライアント コンピュータに送られる (アプリケーションを事前にキャッシュするという決定が行われていない場合)。
===
App-V が登場するまでの、同機能を提案する常套文句は次の内容でした。
・現在、次のようなアプリケーション展開の問題を抱えていますか。 - アプリケーションをデスクトップに展開するのに非常に時間がかかる。 - アプリケーション パッケージが複雑である。 - アプリケーションのライセンスへの準拠を監視する手段がない。 - アプリケーションが頻繁に変更される。 ・互いに競合するアプリケーションを同時に実行する必要がありますか。 ・ユーザーや他のプログラムによる変更が原因で、ヘルプデスク担当者が定期的にアプリケーションを “修正する”必要がありますか。 ・組織内で新しいアプリケーションやアプリケーションの更新プログラムの回帰テストに長い時間を かけていますか。 ・同じアプリケーション(Microsoft Access やその他の Office コンポーネントなど)の 複数のバージョンを実行する必要がありますか。 ・アプリケーションの構成や競合の結果として、ターミナル サーバー環境に複数のアプリケーション サイロが存在しますか。 ・ターミナル サーバー環境では実行されないアプリケーションがありますか。
このような問題のいずれかに直面していない場合、SoftGrid はユーザーやユーザーの環境に大きな恩恵をもたらす製品ではない可能性があります。つまり、現在の環境が次のような属性を持っていると想定できます。
・アプリケーションのポートフォリオが小規模で限定的である。 ・アプリケーションが競合していない。 ・アプリケーションの変更や更新が限定的である。 ・ライセンスへの準拠を監視する必要がない。 ・アプリケーションをインストールした後、ロールバックする必要がない。 ・アプリケーションを更新する必要がない。 ・アプリケーションがパッケージされていないか、パッケージが単純なプロセスである。 ・ターミナル サーバーや Citrix を使用していない。または、アプリケーションが限られていて、 アプリケーション サイロを使用していない非常に小規模なターミナル サーバー環境である。
現在の環境がこれらに該当する場合は、幸運であると言えます。該当しない場合は、SoftGrid テクノロジがアプリケーションを仮想化する場合の最適な選択肢である可能性があります。
===
この SoftGrid 方式が提唱された 2007年当時はそのまま SMS 等のアプリケーションシステム管理サーバを使うのではなく System Center Virtual Application Server へ SoftGrid Sequencer (シーケンサー)でソフトグリッド対応化アプリケーションとしてパッケージ化された Windows アプリケーションを登録して、デスクトップ環境から使用要求発生時(オンデマンドでアプリケーション または プリキャッシュ要求時)にそのアプリを配信する仕組みでした。
つまり クライアントは ThinPC 風に動作するものですが、アプリケーション・パッケージの全体の10〜30%を社内インフラによりRTP ストリームで転送されます。この最初の転送(初回起動時のみ5〜15秒)でアプリケーション画面が開き、利用できるようになります。以降はクライアントキャッシュされるので、再ストリーミングを受けることはなく起動時間はアプリケーションがローカルにあるのとほとんど変わらなくなるという仕組みです。
もちろん、これは Active Directory 環境が正しく構築され運用されていることが前提となります。そのため監査ベースのライセンスの追跡管理や厳密なライセンスの適用を実行するようにシステムを構成できます。
たとえば、管理者は、最大 20 人のユーザーが同時にアプリケーションを実行できるように、アプリケーションに同時使用ライセンスを割り当てることができます。この場合、21 番目の同時使用ユーザーに対して、利用可能なライセンスが残っていないことを示すメッセージが表示されます。・・・このメッセージが出てほしくない場合は個別対応可能だったはず。(それ用のメッセージを出す)
当時の Windows 技術では、ターミナルサービス上でのアプリ配信だったので、これらの名称は本当にグリッドという名前を流用するのは少し違うのではないか?という疑問を持った方は少なからずいらっしゃったと思います。ワタシもその一人でした。
あれから 4年も経ち、App-V が普及したいま、SoftGrid を思い出す機会はほぼありませんが、当時は仮想化について今とは違ったアプローチをしていたんだなと感じます。
以上