2010/03/26

仮想マシンのインベントリのゴミを強制削除

VMware Viewでは、もう既に存在しないハズのレプリカ(replica)のインベントリが、vCenter上に残ってしまった場合の対処法として有用。

View Composerを使う環境で、色々と遊んでいると、何かのタイミングでこの現象が発生するっぽい。データストアから該当するフォルダを丸ごと削除してもダメ。

具体的には、
1.vCenter上で、レプリカの仮想マシンのインベントリが、イタリック体で表示される。
2.[インベントリから削除]も[ディスクから削除]も、グレーアウトしていて選択できない。
という状態。


で、対処法は、以下のとおり。

vCenterのデータベースの、[VPX_ENTITY]テーブルを見て、該当するレプリカの仮想マシン名が入っているレコードを削除する。

2010/03/18

"When VM is not in use"っていつ?

VM(仮想マシン)はPower Onしているけれど、ログイン画面が出ている(ログオフされている)状態、のとき。



View Managerの設定項目のハナシです。

2010/03/11

ストレージ・オーバーコミット(Storage Overcommit)

View Composerのリンク クローン用に用意された機能の一つとして、ストレージ・オーバーコミット(Storage Overcommit)がある。これは何なのか?

ストレージ・オーバーコミットの対象は?
リンク クローンでは、仮想デスクトップOS(事実上、C:ドライブ)と、その仮想デスクトップが依存している親仮想マシンOS(事実上、C:ドライブ)との間のデータの差分(デルタ)を、それぞれの仮想デスクトップが別々に持つ。この仕組みこそが、ストレージ容量を節約しながらも個々の仮想デスクトップの独立性を提供しているのだ。

で、その差分(デルタ)を格納するためにディスクを、デルタ ディスクと呼ぶ。
そのデルタ ディスクが、ストレージ・オーバーコミットの対象となる。
なので、UDD(User Data Disk)とかはストレージ・オーバーコミットの対象外だ。

なぜ、UDDが対象外なのか?
それは、そもそもストレージ・オーバーコミットが「View Composerを使うってことは、管理者は定期的にRecomposeかRefreshをするんだよね〜。故に、デルタ ディスクは定期的にクリアになるんだよね〜。」ということを前提にした機能だからだ(たぶん)。
あたりまえながら、ユーザーとしては、UDDが(意図せず)クリアされたら、困っちゃう。なので対象外。


デルタ ディスクに溜まるもの
「管理者が定期的にRecomposeかRefreshをする」ことを前提にするならば、 各仮想デスクトップのOS(事実上、C:ドライブ)部分には、どれくらいのストレージ容量を確保しておけばよいのだろうか。

ユーザーが自信のデータを保存する先は、すべてUDDだ。とすると、デルタ ディスクには、たとえばOSのパッチやらサービスパックやら、が入ることになる。使い方によって増加率は変わるだろうけれど、(RecomposeかRefreshをするまでは)時系列に従ってデルタ ディスクは増えることはあっても減ることはない。けれど、RecomposeかRefreshをすれば、これがクリアされる。

分かり易くするために、あえて極端な例を挙げてみる。たとえば、元々の親仮想マシンがWindows 7 Service Pack1で、次のRecomposeのタイミングで Service Pack2にするとしよう。当初は、Windows 7 SP1の状態でリンク クローンされているので、SP2は、各仮想デスクトップにインストールされる。このSP2は、そのまんまデルタ ディスクの増加につながる。1,000台仮想デスクトップがあったら、1,000個分のSP2の容量くらい、デルタ ディスクの総容量が増加してしまう。でも、親仮想マシンをWindows 7 Service Pack2にして、Recomposeすれば、デルタディスクの総容量は限りなく小さくなる。もちろん、各仮想デスクトップは、この時点でWindows 7 Service Pack2になっている。

で、ストレージ・オーバーコミットって、何をどうオーバーコミットするの?

たとえば、親仮想マシンOSが、20GBだとしよう。 上述の流れのとおりにいくならば、RecomposeやRefreshをせずに放置しない限りは20GBは間違いなく使わなそうだ、ということがわかるだろう。どんなに増えても5GB(1/4に該当)かそこいらしか使わないのでは、と推測できる。

マニュアルどおりの説明に従えば、ストレージ・オーバーコミットは、以下の4段階で設定できる。

None:オーバーコミットなし
Conservative:データストアのサイズの 4 倍(デフォルト)
Moderate:データストアのサイズの 7 倍
Aggressive:データストアのサイズの 15 倍

データストアのサイズのx倍、という表現だとわかりにくい(?)かもしれない。これと逆の表現をしてみよう。たとえばConservativeでは「デルタ ディスクは、親仮想マシンOS(事実上、C:ドライブ)の容量の、1/4程度までしか膨らまないだろう。1/4程度になる前に、RecomposeかRefreshをしよう」と、システム管理者が判断した、に等しい。
そんなんしか使わないのであれば、もったいないからそれなりの数の仮想マシンをデータストアに入れておこうよ、というわけだ。

「ほんじゃあ一番いっぱい仮想マシンを詰め込めるAggresiveがいいじゃん」という意見もあるだろうけど、それはすなわち、いっぱい仮想マシンを詰め込んだ場合は、RecomposeかRefreshの間隔を、より短くすることも同時に示している。

ストレージ・オーバーコミット、直訳すれば「ストレージの過度な約束」。
つーわけで、無理は禁物。

View Composer サービスが使用するドメイン ユーザー アカウント

View Composerは、その作業過程において、リンク クローン デスクトップ(仮想デスクトップ)を、Active Directory ドメインに自動的に参加させる。この作業によって、ユーザーは、既にActive Directory ドメインに参加した状態の仮想デスクトップを使うことができる。


このためのには、当然ながら、コンピューターオブジェクトを扱うための権限を有した、Active Directoryのアカウントが必要だ。

これまた面倒くさかったら、Domain Adminsのメンバーでイケるのだけれど「セキュリティーを高めるために最小限の権利を渡そうポリシー」を貫くために、システム管理者はがんばったほうが良いデス。

ドメイン ユーザー アカウントで、
[Create Computer Objects(コンピュータ オブジェクトの作成)]
[Delete Computer Objects(コンピュータ オブジェクトの削除)]
[Write All Properties(すべてのプロパティの書き込み)]

のアクセス許可を与えた、専用のアカウントを作成し、これをView Composerに設定しよう。

2010/03/10

UDDには何が入るのか

リンククローン技術で、OSと、いわゆるユーザープロファイルは分離して仮想Diskに保存することもできる。
ユーザープロファイルが保存される仮想Diskは、UDD (User Data Disk)と呼ばれている。
ではUDDには何が入るのか?

大別すると、以下の2つが入るらしい。
※もちろん、それに加えてユーザー自身がUDDに保存するデータも。
だから、OS側の仮想Diskを入れ替え(たとえばService Pack適用とか)ても、ユーザーはそれまでどおりに仮想デスクトップを使えるのだ。

1.ユーザープロファイルが格納される親フォルダまるごと
つまり、OSによってフォルダ名が異なることがあるけれど、たとえばWindows XPでいうところの "Documents and Settings" が、リダイレクトとかではなく、まるごとUDDに移る。

2.ユーザー固有のレジストリ

View Client(端末側)と仮想デスクトップとの間の接続方式

細かく分類すると何通りかあるが、ものすごーく大別すると、以下の2種類がある模様。これをおさえておけば、例えばWAN経由の接続を検討するときに、理解しやすいと思われ。

その1:すべてのトラフィックを、コネクションサーバー経由にする

このパターンは、RDPのみ出来る。なお、この場合、View Clientとコネクションサーバーとの間で流れるプロトコルはSSLのみ。あとは、コネクションサーバーが「がんばる」。通信トラフィックの流れを整えやすい反面、大規模になるとコネクションサーバーの負荷分散をどーするのか考慮する必要がある。


その2:認証関係のみをコネクションサーバーで行い、そののちに、直接、View Clientから仮想デスクトップに接続する

RDP、PCoIPともにできる。コネクションサーバーの負荷についての悩みを軽減できる反面、通信トラフィックの流れは、ちとばかり複雑になる。

WAN高速化装置を、VMware Viewで使う

F5編
http://www.f5networks.co.jp/solution/application/vmware.html

CISCO編
http://www.cisco.com/web/JP/solution/large_enterprise/enterprisearchitectures/datacenter/literature/pdf/white_paper_c11-494994.pdf

Riverbed編
http://www.riverbed.com/jp/results/solutions/virtualization/

BlueCoat編
http://www.bluecoat.co.jp/news/releases/2009/030909.html


Juniper編(仮想デスクトップ関連のページは見つけられず・・・使えるハズだが・・・)
http://www.juniper.net/jp/jp/products-services/application-acceleration/wxc-series/

Expand Networks編
http://www.expand.com/News-Events/Release.aspx?pressID=395ff7b2-51c8-4303-ac99-8e841d47b938

2010/03/09

VMware製品が使う、TCP/IPポート番号一覧

http://www.vreference.com/2010/02/23/firewall-diagram-version-5/

偉大なるExcel表を発見。


本家、
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1012382


にも載っていた。

もちろん、PCoIP 関連の、ポート番号も掲載されているデス。

VMware View Reference Architecture Kit

http://www.vmware.com/resources/wp/view_reference_architecture_thanks.html

VMware View Reference Architecture (39枚)
VMware View WAN Reference Architecture (17枚)
VMware ThinApp Reference Architecture (26枚)

3つのホワイトペーパー。

VMware View対応のPCoIPがしゃべれるゼロクライアント

http://www.teradici.com/pcoip/pcoip-products/vmware-view-clients.php

にざっくりとした一覧があった。

詳細は、
http://www.vmware.com/resources/compatibility/search.php
のハードウェア互換性ガイド(HCL)で検索できるです。
タブを、VMware Viewとかにして検索すれば良いのだろう。きっと。

VMware View Open Client

http://code.google.com/p/vmware-view-open-client/

LinuxやらMac OS Xやらで使えるView Clientもダウンロードできる。

PCoIPを使う場合の、ディスプレイの解像度

RDPだと、接続先のビデオRAMの搭載量にかかわらず、クライアント(接続元)に合わせて解像度や色の深度を変えることができる。

けど、PCoIPの場合、接続先のビデオRAMの搭載量に応じて、クライアント(接続元)で設定可能な解像度や色の深度、そしてモニタの最大数が変わる。

PCoIPの生い立ち(ビデオカードの出力(DVI)をPCoIPに変換する専用カード)や特性(Aeroや3Dグラフィックスなどのリッチコンテンツをコンテンツごとの特性に合わせて局所的にCODECを変える)を考えてみれば、ある意味あたりまえのようにも思える。

仮想デスクトップの場合は、当然ながら仮想マシンのプロパティでビデオRAMの搭載量を変えておこう。

2010/03/08

View Managerが必要とするvCenter上の権限

[Folder]-[Create Folder]
[Folder]-[Delete Folder]
[Virtual Machine]-[Inventory]-[Create]
[Virtual Machine]-[Inventory]-[Remove]
[Virtual Machine]-[Interaction]-[Power On]
[Virtual Machine]-[Interaction]-[Power Off]
[Virtual Machine]-[Interaction]-[Power Suspend]
[Virtual Machine]-[Interaction]-[Power Reset]
[Virtual Machine]-[Configuration]-[Add new disk]
[Virtual Machine]-[Configuration]-[Add or Remove Device]
[Virtual Machine]-[Configuration]-[Modify Device Settings]
[Virtual Machine]-[Configuration]-[Advanced]
[Virtual Machine]-[Provisioning]-[Customize]
[Virtual Machine]-[Provisioning]-[Deploy Template]
[Virtual Machine]-[Provisioning]-[Read Customization Specifications]
[Resource]-[Assign Virtual Machine to Resource Pool]

以上。

更に、View Composerを使う場合は、以下も。

[Datastore]-[Browse Datastore]

[Datastore]-[File Management]
[Virtual Machine]-[Inventory]全部
[Virtual Machine]-[Configuration]全部
[Virtual Machine]-[State]全部
[Virtual Machine]-[Provisioning]-[Clone]
[Virtual Machine]-[Provisioning]-[Allow Disk Access]
[Global]-[Enable Method]

[Global]-[Disable Method]

そして、vCenter Server上のローカルシステムAdministratorsグループのメンバーにする。



ま、これが面倒くさい場合は、vCenterの管理者権限を丸々付与してしまえばokですけど。
とはいえView Managerがヤラれた場合を想定するならば、必要最低限のvCenterにおける権限をView Managerに付与する、というのが順当なわけですな。

2010/03/07

View Administratorには誰がログインできるのか?

「View Administratorとは、View Connection Serverの一部」であり、Webベースの管理コンポーネントだ。

https:///admin

で、アクセスできる。もちろん、にはView Connection ServerのFQDNかIPアドレスが入る。



デフォルトでは、View Connection Server システムのローカル管理者グループのメンバーであるドメイン ユーザーがログインできる。

これは、View Administrator の[Configuration] - [Administrators]で、変更することができる。

いつでも、どこでも、自分の書斎(パソコン)が使える

「いつでも、どこでも、自分の書斎(パソコン)が使える」っつーのが、エンドユーザが仮想デスクトップを使う上での利点の一つですな。

やっぱ人間ってのは、効率よく作業をするのに「慣れ」が必要なわけです。それが、特定のアプリケーションだったり、アイコンの位置だったり、ちょっとした設定の違いだったりするわけだ。「そんなのすぐに変更しちゃえばいいじゃん」という意見もあるかと思うけど、そんなちょっとしたことで人間って集中力が途切れちゃったりするんだと思う。

仮想デスクトップだったら、いつでも、どこでも、自分の慣れた環境、つまり自分の書斎、が使える。それが良いのだ。

オフラインデスクトップ機能(offline desktop)を使えば、飛行機の中だって、自分の書斎が使えるし。

出先でパソコンを持ってきていなくても、iPhoneからでも自分の仮想デスクトップにアクセスできる。さすがに長時間操作には向かないだろうけど「あーーっ、あのデータはアソコを見れば分かるのに・・・」という事態には対応できて便利かと。
http://www.wyse.com/products/software/pocketcloud/index.asp
Wyse PocketCloud、とりあえず買ってみた。

2010/03/04

vCenter を Windows Server 2008 R2 x64 with SQL Server 2008 に入れてみた

最新版大好きっ子なので、SQL Server 2008 (x64)を使う。
面倒くさいので、vCenter ServerとSQL Server 2008は同居。

以下の4点で、ちこっとだけハマった。

1. SQL Server 2008 SP1を使わないと、SQL Server 2008がインストールできない

2. ODBCが32ビットぢゃないとダメ。具体的には、管理ツールの中のODBCではなく、\Windows\SysWOW64\odbcad32.exe を使えばよい。
追加情報:vCenter5では、ODBCが64ビットでokになっていた。

3. データソースのドライバーは「SQL Server」ではだめで「SQL Server Native Client 10.0」を選択する。

4. 貧弱なマシンに、色々とブッコミ過ぎたせいか、以下の2つのサービスが自動起動してこない。これらのサービスの、[スタートアップの種類]を「自動(遅延開始)」にしたらokになった。
VMware VirtualCenter Management Webservices
VMware VirtualCenter Server

vCenter Serverが使うポート番号

USBデバイスへのアクセス制御ってどういう感じ?

大雑把にいうと、以下の3種類らしい。仕組み的にいって、上位のほうが強制力があるはず。
1.View Clientインストール時に「USB Redirection」コンポーネントをインストールしない。

2.View Administratorのポリシータブ
View ClientからView Connection Server にログインする都度、View Clientにそのポリシーが割り当てられる、と推測される。
ここだと細かい制御はできない。USBアクセス、MMR(マルチメディアリダイレクト)、Offline Desktop関連の、許可もしくは禁止の制御のみ。
ポリシー適用の範囲は、グローバル(全体)、プール、ユーザー、の計3レベル。まぁ普通はプール単位に適用するんだろうな。

3.Active DirectoryのGPO
View Connection Serverをインストールすると、以下の4つのGPOテンプレートが用意されている。場所は、
Program Files¥VMware¥VMware View¥Server¥Extras¥GroupPolicyFiles

vdm_agent.adm
vdm_client.adm
vdm_server.adm
vdm_common.adm

これらをActive DIrectoryに読み込ませて使えばよい。
USBデバイス関連も、これらの中に入っている。

他にも、Windows OS標準のGPOテンプレートで色々と制御できるので、上述のGPOと組み合わせて使おう。



詳細は、View Manager管理者ガイドの載っているので見てちょうだい。
http://www.vmware.com/jp/support/pubs/view_pubs.html

VMware View Manager 4.0.1 リリース ノート

http://www.vmware.com/jp/support/view40/doc/releasenotes_viewmanager401.html

VMware関連の質問が日本語で投稿できるコミュニティサイト

Japan Area VMware User Group 

http://communities.vmware.com/community/vmug/forums/asia_pacific/japan

2010/03/03

将来に夢のあるソフトウェアを選ぼう

おそるべし、ポール・マリッツ氏。

http://www.atmarkit.co.jp/news/201003/03/vmware.html
http://techtarget.itmedia.co.jp/tt/news/1003/03/news06.html
http://journal.mycom.co.jp/news/2010/03/03/005/index.html

彼がCEOに就任してから、
VMwareは「単一技術の会社」から確実に成長路線へとシフトしてきていると思う。

買収も、場当たり的なものではなく、大きな将来構想を描いていることが、無理なく読み取れる。


当ブログのお題である仮想デスクトップに関しても、この将来構想をあやかりたい。
似たようなソフトウェアを売っている会社はいくつかあるけれど、どうせかうなら将来にワクワクするような期待が持てる会社の製品を買いたいものだ。

現行バージョンの星取表(○×表)のみで、どれを買うのか決めるということは、将来価値を無視しているっつっても過言ではない・・・と思う。

将来価値を無視するっつーのは、まるで学歴と勤務先だけでダンナを決めるようなもんだ。
「つまらんオトコと結婚したな」、と後で後悔する・・・かもね。

2010/03/01

USBデバイスサーバ

サイレックス・テクノロジーが、なかなか楽しそうなモノを販売している
「USBデバイスサーバ」 なるものを販売している。


ちと考えてみると、仮想デスクトップでも超活用できそうな感じだ。


たとえば、仮想デスクトップどうしで、スキャナーを複数のユーザーで共有して使いたいときだってあるだろう。

大企業に置いてあるような大型の複合機があれば、仮想デスクトップであってもネットワークを経由して共有できるのは当然。

だけど、「USBデバイスサーバ」をつかえば、安価な複合機でもokじゃん。
 http://www.silex.jp/products/usbdeviceserver/

それとか、ゼロクライアント(Zero Client)だと、VMware View4の仮想プリンタ(ThinPrint)とかは事実上使えないだろうから、その場合に、この「USBデバイスサーバ」をひとつの手段として検討してみるのもオモロイだろう。



実際使うとなると、
VMware View4の仮想プリンタ(ThinPrint)とはちがって、「USBデバイスサーバ」に接続されたデバイスを使うときは、仮想デスクトップが持っているIPアドレスと「USBデバイスサーバ」のIPアドレスとの間で通信が発生するっつーことを認識しておく必要はありそうだ。

まぁでも、USBデバイスを仮想デスクトップから使う、という用途においては、色々と応用ができそうな気がするでございますよ。

たとえば仮想デスクトップで・・・
・DVDを見る
・DVD-Rを焼く
・iTunes with iPhone で使う
とかね。