人気ブログランキング | 話題のタグを見る
MSのApp-V for RDSを試してみた


HPのシンクライアント評価時に、営業担当からApp-Vの話を聞きました。
恥ずかしながらそれまでApp-Vのことは知りませんでした。
ということで、App-Vを試してみました。


MED-V,APP-V,RemoteApp,VDI
どうやら調べてみるとMicrosoftの仮想化ソリューションはいつの間にやら結構出ていたようです。
主に、MED-V,APP-V,RemoteApp,VDIがあるようですね。どれもアプリケーションの仮想化なのでユーザーエクスペリエンスは同等ではあるんですが、使っている技術が大きく異なります。
下記の技術をうまく組み合わせて、ユーザビリティなアプリケーション環境を作ることが肝ですね。


●MED-V(Microsoft Enterprise Desktop Virtualization、Virtual PCとXP Modeの集中管理化)
クライアントPCの上で仮想PC(VirtualPC)を動かしレガシーアプリケーションを動かす方式です。
ただし、仮想PCと言っても、その上で動かすアプリケーションのウィンドウしか見せません。
Windows7 の XP Mode アプリケーションみたいなものです。
XP Mode と異なるのは一括管理機能を有することみたいです。

●App-V(Microsoft Application Virtualization、アプリケーションの仮想化とストリーミング配信)
今回の記事のメインのアプリケーション仮想化機能です。
アプリケーションを仮想パッケージ化し、クライアントPCではApp-Vサーバより配信されたアプリケーションを実行するという、アプリケーションのストリーミング配信的な形態です。
パッケージ化は、シーケンサーというツールで、アプリケーションのインストールを監視して、変更があったファイル・レジストリの設定をまとめてしまいます。
パッケージ化されているので、実行するクライアントPCにいちいちアプリケーションをインストールする必要も有りません。(ただし、アプリケーションが動くのはクライアント上であり、クライアントのOSの依存が完全になくなるのではないことは注意が必要です)
これを使うと、同じクライアントPCで複数のバージョンのアプリケーションを同時に動かせたりしますし、アプリケーションの配布も楽になります。
通常のApp-VはクライアントPCで仮想アプリケーションを動かすことを前提としてますが、App-V for RDS(Application Virtualization for RemoteDesktop Service)を使うと、リモートデスクトップサーバ上でApp-Vを使用することができます。
今回は、この App-V for RDS を試してみました。

●RemoteApp(画面転送)
これはリモートデスクトップのアプリケーション版ですね。
リモートデスクトップサーバ上で任意のアプリケーションを実行し、そのアプリケーションのウィンドウをクライアントPCに転送するというものです。
CitrixのXenAPP(旧メタフレーム)とほぼ同じ機能です。


●VDI(Virtual Desktop Infrastructure、デスクトップ仮想化)
これはサーバ上に多数の仮想化したクライアントOSを配置し、クライアント(主にシンクライアント等)からその仮想OSを使うイメージです。
プレゼンテーション層の仮想化(リモートデスクトップサービス,ターミナルサービスetc)と似ていますが、仮想化されたクライアントOSとクライアント端末が1対1になるという点が異なるでしょう。(クライアントOSなので複数ユーザ起動がNGなアプリやサーバOSでの動作がNGなアプリも動かせます)
昨今の震災で在宅勤務の観点から注目を集めているようです。
CitrixのXenDesktopやMSのHyperV+RDSなどがこれに当たるようです。

各機能の比較や特徴については下記を参照:
仮想化の教室 [第9回] 企業デスクトップの仮想化 ~MDOPの新顔、MED-V~ : Windows Server - Computerworld.jp
TechNet:MED-V と App-V を比較しどちらが自分に合っているかを判断する
VDI(Virtual Desktop Infrastructure) - @IT
【仮想化道場】 マイクロソフトの仮想化戦略を担うMED-V【前編】 -クラウド Watch
アプリケーションを使いやすくするVDI環境の拡張機能 - @IT(VDIとRemoteApp,App-Vの組み合わせ)

Windows Server 2008で大幅に進化したターミナルサービスを試す【中編】(RemoteApp)





App-V for RDSの構成
App-V for RDSの構成はちょっと複雑です。

まず、サーバとして下記が必要になります。
・RDSサーバ : 仮想化アプリケーションを実行するリモートデスクトップサーバー
・App-V(Application Virtualization Server)サーバ : 仮想化アプリケーションを配信するサーバ

また、アプリケーションをパッケージ化して仮想化するための Application Virtualization Sequencer という環境が必要になります。


App-V 配信サーバ構築
App-Vサーバには、Application Virtualization Management System というソフトをインストールする必要がありますが、他にも IIS6.0 以降(ASP.Net)や.NetFramework2.0以降、SQLServer2008(ExpressEditionでも可)、ActiveDirectory環境も必須になるようです。

インストール媒体はTechNetの サーバー → Desktop Optimization Pack → Microsoft Desktop Optimization Pack 2011 (x86 and x64) - DVD (Japanese) をダウンロードしました。

具体的なインストールの手順は、Microsoft Application Virtualization スタート アップ ガイド | TechNetにドキュメントが公開されています。が、docx形式なので注意が必要です。

今回インストールするのは、App-V 4.6 SP1 を試しました。上記のスタートアップガイドは App-V 4.5 のものですが、ほとんど変更はありません。
(4.6といっても、MagementServer は 4.5 SP2 のままのようです。App-V4.6については、山市良のえぬなんとかわーるど: (補足) MDOP 2010 の App-V 4.6 についてが参考になります。)

スタートアップガイドに従うと、下記のような手順で、App-Vサーバを構築していきます。

・IIS(ASP.Net)のインストール。
・SQLServer Expressのインストール。
・ADにグループ、ユーザ追加。
・Management Server 4.5 SP2 のインストール

System Center Application Virtualization Streaming Serverはインストールしませんでした。


クライアントソフトのインストール
App-Vクライアントとなるリモートデスクトップサーバに、Application Virtualization Desktop Client 4.6 SP1のインストールしようとしましたが、できません。
リモートデスクトップサービスがインストールされている環境では、RDS用のクライアント(App-V for RDS(TS))がいるようです。

App-V for Remote Desktop Services (RDS) 4.6 (32-bit/64-bit)はダウンロード提供となり、http://www.microsoft.com/downloads/ja-jp/details.aspx?displaylang=ja&FamilyID=e633164f-9729-43a8-9149-de651944a7feからダウンロードできるようです。


App-V for RDS をインストール後、管理ツール → Application Virtualization Client → 公開サーバ でApp-Vサーバの指定を行います。
設定は下記のようにしました。
表示名:自由
種類:Application Virtualization Server
ホスト名:app-v.hogedomain.local
ポート:554


ここまでできたら、デフォルトで用意されているサンプル仮想アプリケーションの動作確認を行います。
スタートアップガイドの 4.5 章の部分ですね。


Sequencerの環境M
App-VではApplication Virtualization Sequencerというツールで、アプリケーションを仮想パッケージ化します。
このSequencerは、クリーンインストールされており、WindowsUpdate以外のプログラムは何もいれてはいけないようです。
なので、仮想PCとして環境を作るのが望ましいでしょう。それで、クリーン時のすナプショットを取っておき、何かの仮想アプリケーションをパッケージ化したら、一旦スナップショットを復元し、またパッケージ化するという感じです。

今回はOSはXP SP3としました。
Microsoft Desktop Optimization Pack 2011内にある、Sequencer4.6 SP1(32ビット)をスタートアップガイドの5.3章に従いインストールします。

シーケンスの手順も、スタートアップガイドの5.4章に従って行います。
4.5と4.6は若干画面が異なったので注意が必要かもしれません。

パッケージ作成後に、Sequencer で作成したパッケージを開き、展開設定を忘れないようにしないといけません。
"展開"タブでプロトコルと、ホスト名とパスを設定します。(プロトコル・ポートについてはスタートアップガイドに従ってセットアップしたなら RTSP 554ポートになります。ホスト名は、App-vサーバのホスト名を指定します。パスは作成されたパッケージのフォルダと同じにしないといけません。)
また、オペレーティングシステムで、実行対象のOSを選択します。今回は2008R2上のRDSで使う予定なので、Windows 2008 R2 Terminal Server 64-bitを選ぶ必要があります。

これでパッケージを上書き後、App-Vサーバにアプリケーションを登録します。
App-VサーガのApplication Virtualization Management Consoleで、"アプリケーション"ツリー → "アプリケーションのインポート" でパッケージを選びます。
このあたりの作業は、スタートアップガイド 5.5章を参考にできます。


最後に、RDSサーバで実行出来ればOKです。アプリケーションの読み込みはRDSのログイン時になるようですね。


.Net Frameworkの上で動くアプリケーションに仮想化は結構面倒みたいです。
Paint.Netを試みましたがうまくいきませんでした。


参考:
App-V検証~その1 環境作成 MCTの憂鬱
Microsoft Application Virtualization (App-V) のライセンス: Microsoft Virtualization
Microsoft Desktop Optimization Pack (MDOP)についてまとめてみる: MSLabo
Microsoft Application Virtualization 4.5 ドキュメント | TechNet
Microsoft Application Virtualization ホーム
ついてるサラリーマンアスリートの備忘録 | Microsoft Application Virtualization 4.5
Application Virtualization Client のトラブルシューティング情報
2008R2RDS導入のポイント_v1.0.pdf MSのTechnetブログに掲載されてた情報ですが、App-Vに限らずRDSを使う上での冗長化、ライセンス、パフォーマンスについて分かりやすくまとめられています。RDSを導入するのなら必ず読んでおくべきですね。
by Jehoshaphat | 2011-10-28 00:27 | サーバがらみ


<< App-V でOffice20... リモートデスクトップの接続の履... >>