2011/11/29

実行中のアプリケーションのアップグレード

ThinAppの便利機能。

--- マニュアルからコピペ ---
ファイル名拡張子を .1、.2 などの数字にして、新バージョンのアプリケーションを既存の配布ディレクトリ にコピーすることができます。この手順では、サンプル アプリケーションとして Firefox を使用します。 
 

ショートカットを更新する必要はありません。

実行中のアプリケーションのアップグレード

1.  Firefox.exe などのアプリケーションの元のバージョンを配布します。

2. アプリケーションを中央共有 \\server\share\Firefox.exe にコピーします。 場所のサンプルは、C:\Program Files\Firefox\Firefox.exe のようになります。

3. 共有実行ファイルの場所 \\
server\share\Firefox.exe をポイントするデスクトップ ショート 
カットまたは [ スタート ] メニュー ショートカットをユーザーのデスクトップに作成します。 
2 人のユーザーが Firefox.exe を起動し、アプリケーションがロックされたと仮定します。

4. 最新バージョンの Firefox.exe を中央共有 \\
server\share\Firefox.1 にコピーします。 
新規ユーザーの場合、ThinApp は Firefox.1 内の新規パッケージ データを使用してアプリケーション を起動します。元のバージョンを使用中のユーザーの場合は、アプリケーションを終了して再起動させ た後に新バージョンを使用することができます。

5. 最近更新された Firefox を配布する必要がある場合は、末尾により大きい数字を付けて同じディレクト リに配置します。

6. バージョン 2.0 の Firefox.exe を中央共有 \\
server\share\Firefox.2 にコピーします。

Firefox.1 はロック解除してから削除することができます。ただし、ユーザーのショートカットは現在もそ の場所をポイントしているため、Firefox.exe はそのまま置いておく必要があります。ThinApp では、常に 最大のバージョン番号のファイル名が使用されます。以前のバージョンにロールバックする必要が生じ、最 新バージョンはロックされたままの場合は、以前のバージョンを最大のバージョン番号にしてコピーします。 

---  

なんだか小難しく感じるかもしれないけど、実際やってみれば単純なことがわかるYO。
これ、試すのはファイルサーバ使わなくてもできるんだ。
仕組みを理解するために、どこかのローカルフォルダを使ってみればよろし。


仕組みを要約するとこんな感じ。

たとえば、
test.exe(とある仮想アプリの Ver. 1としよう)

test.1(とある仮想アプリの Ver. 2としよう。で、Ver.2のtest.exeをファイル名変更でtest.1とかにしておく
を、同じフォルダに置いておくと、test.exeを実行したときに、test.exeが自動的に自分が置かれているフォルダ配下を参照して、同じファイル名で拡張子違いのファイルを探して、最大バージョンのものを起動するっつーこと。

.datファイルを使う場合でも、やり方は同じ。
.dat、つまりprimary data containerは、仮想アプリ生成時にファイル名を指定できるので、この生成時点でファイル名を変更しておくだけ。.datファイル側は、番号とか気にしなくて大丈夫。この仕組みは、あくまでも、.exe側でハンドリングされるみたい。
 

Windows7で何故IE6を利用したいのか?

良い記事だ。メモメモ。
http://tunemicky.blogspot.com/2011/11/windows7ie6.html

Adobe Flashの帯域制御


VMware ViewではAdobe Flashコンテンツに対して、特別な帯域制御を行えるようになっている。この制御は、View Administrator上で設定できる。

どんなことになるのか。
IEを使って、Adobe Flashコンテンツを見る(フルスクリーンはダメ)。ブラウザ上で、マウスカーソルをそのコンテンツ 上に持って行くと、動画が速く再生される。これは「見ていない動画コンテンツによる帯域消費を抑制する」ための仕組み。

どうやってコレを実現しているのか。
VMware Adobe Flash Optimizer
なるInternet ExplorerのアドオンがView Agentインストール時に入るのだ。

2011/10/28

Windows Embeddedのメインメモリ、トレードオフ(trade off)

ThinClient、シンクライアント、Windows Embeddedでは、

http://msdn.microsoft.com/ja-jp/library/bb499256%28v=WinEmbedded.51%29.aspx

・上記URLで説明されているEWF
・OSが使うメモリ空間
・RAM Disk(C:¥TMPとかのリダイレクト先として使われる??)
で、DDRとかの物理メモリを分け合って利用するらしい。
奥が深い・・・

2011/10/17

接続元の回線状況に応じて最適化されたプールに振り分ける方法

PCoIPのチューニングは、GPOで、ActiveDirectoryのOU単位に行う。これは、事実上、VMware Viewでいうところのプール単位、ということになる。
※レジストリ設定で、個々の仮想デスクトップOS単位で設定することもできるが、ここではその方式以外を検討してみた。

GPOの設定、ということなので、アクセス端末から仮想デスクトップOSに接続した後に動的に変更することはムズカシイ。

・・・となると「おいらは仮想デスクトップを、3G回線を使ったiPadからも使いたいし、Bフレッツ引いている自宅のMacからも使いたいんだけど」という要望があった場合、どうすりゃいいのか。

まず、いずれの方式も仮想デスクトップを「流動割り当て」にする。こうすれば、どのプールを使ってもユーザプロファイルを引っ張ってこれるからだ。

■経済的な方式
Connection Server group1の中に、
プールA: 3G用
プールB: emobile用
プールC: ブロードバンド用
とか、複数のプールを作っておいて、ユーザが自分が今アクセスに使っている回線状況に応じて手動でプールを選ぶ。

■自動化方式
Connection Server group1 プールA: 3G用
Connection Server group2 プールB: emobile用
Connection Server group3 プールC: ブロードバンド用
とかにしておいて、そのセッションを、どのConnection Server groupに行かせるか、をロードバランサ(Load Balancer)に振り分けさせる。

たとえばF5であれば・・・
GEO Location IP による、アクセス回線の判定ができる。BIG-IP LTM に標準搭載されている機能で、QUOVA社のOEMとのこと。通信キャリアに割り当てられたすべてのIPアドレスがカバーされているという保証はないが、ほとんど網羅されているっぽい。

GEO Location IPを使って、
・回線種別
・国単位や都道府県単位
・etc
の判別ができる。

で、GEO Location IPの判定に漏れてしまった場合(JPNICとかに割り当てられたばかりのIPアドレス群とか??)RTTをiRuleで計測して回線状況を判別。これだと1発目のシーケンスのRTTのみで決めるので、回線品質の振れ幅が大きい場合に、適切な判定がしづらいだろう。が、ほとんどはGEO Location IPで判別できるからRTTは例外処理に過ぎない、と考えられるのであれば、これでイケると思われ。

2011/10/15

PCoIPサーバーオフロードカード

ついにでたよ。

APEX2800
http://www.elsa-jp.co.jp/products/remotegraphics/apex_2800/index.html


これで、
1台の物理サーバに載せられる仮想デスクトップの数が増やせる
→用意すべき物理サーバの台数が減る
→消費電力が減る&設置場所が減る
だな。

特に、3DとかでグリグリPCoIPを使う場合は、効果覿面でしょ。


■動画再生時のCPU使用率削減模様
http://www.youtube.com/watch?v=ofRhYdVPFhE&feature=g-all-u&context=G26a2b9fFAAAAAAAABAA