2011/06/28

水無月3.VDI環境をつくってみた

VDIのテスト環境を作ってみました。
・・・とはいえ、作ってみた感想としては利用する場面は特殊な状況の時だけかなぁと感じました。

作成は以下の@ITの記事を参考に。

Windows Server 2008 R2によるVDI実践入門
http://www.atmarkit.co.jp/fwin2k/operation/vdi01/vdi01_01.html

さて、VDI(Virtual Desktop Infrastructure)というのはそもそも何かというと、
hyper-v上に仮想クライアントOSをいくつか展開し、それらのOSへ利用者がhyper-v上にあることを特に意識せずリモートデスクトップ接続でつなぎに行く一連のシステムのことを指します。

結構 関連するサーバシステムとしては大掛かりなのですが、役割のうちいくつかは同一サーバでうけもつことができます。図にするとこんな感じ。

2011/06/27

水無月2.リモートデスクトップ接続のセッション確認2

前回、query sessionコマンドを利用した別サーバのセッション確認の記事を書きましたが、
山市さんのえぬなんとかわーるどで、PowerShellによるセッション確認についての記事がありました

リモート デスクトップ セッションの RDP バージョンを調べる方法 by PowerShell
http://yamanxworld.blogspot.com/2011/06/rdp-by-powershell.html

以下にあるモジュールをダウンロードし、モジュールを読み込むことで、
リモートデスクトップセッション確認、さらには接続ユーザーへメッセージを送ったりプロセスを停止させるコマンドレットを使うことができるようになります。

Terminal Services PowerShell Module 
http://psterminalservices.codeplex.com/

query sessionではせいぜいユーザー名や状態の出力くらいですが、
上記のモジュールを読みこむことで使用可能となる、Get-TSSessionはLoginした時間や接続したクライアントなど多岐にわたる情報が出力されます。

さらに、PowerShellであるため色々な応用が可能となります。
一定時間接続したユーザーに対してメッセージやログオフ処理を走らせたり、特定の端末が接続した場合のみ特殊な処理を実行させる、、ということもできそうです。
セッションの情報はRemoteAppで接続した場合でもきちんと出力されましたし、色々趣向をこらせそうですね。

では実際にやってみます。まず、モジュールを読み込み。


2011/06/18

水無月1.リモートデスクトップ接続のセッション確認

今、VDIの記事でも描こうかなぁと、検証中。
でも、その前にTipsなぞ。

まずはリモートデスクトップサービス(RDS)のおさらい
リモートデスクトップ機能概要
http://www.microsoft.com/japan/windowsserver2008/r2/technologies/rds.mspx

RDSは最近は、マルチメディアやプリンタのリダイレクトやAeroグラスのサポートなどもしています。
RDSの中でもいちばんスタンダードなリモートデスクトップ接続についてですが
遠隔からサーバを管理したり、PCに接続し動作させることなどができます。

@IT  リモート・デスクトップでコンソール・セッションに接続する
http://www.atmarkit.co.jp/fwin2k/win2ktips/519rdcons/rdcons.html

上記の記事にはこうあります。
リモート・デスクトップで接続すると、それぞれの「セッション」ごとに固有のユーザー環境が用意される。セッションとは、ユーザーごとに用意される画面やキーボード、プロセス空間などの環境へ接続した状態のことを指す。リモートからログオンしたユーザーに対しても仮想的なコンピュータ環境が用意され、実際の物理コンソールの状態には関係なく、独立してコンピュータを利用できる。実際の物理的なコンソールから利用しているセッションのことを特に「コンソール・セッション」といい、リモートから接続しているセッションのことを「リモート・セッション」という。
セッションは、Windows XP Professionalでは同時に1セッションのみが利用でき、Windows Server 2003/Windows Server 2008の「管理用リモート デスクトップ」モードでは、同時に最大3セッション(1コンソール・セッション+2リモート・セッション)まで利用できる。
本来、サーバに接続する場合にはライセンス(RDSCAL)が必要なのですが、3セッションまでは管理用として接続が許可されているわけです。
WindowsServer2008以降ではデフォルト設定では、アカウント1つに付き同時に1つのセッションだけの利用しかできないため、複数の管理者が同一アカウントで接続しようとした場合、作業中にいきなり画面が落ちてしまう(セッションがとられてしまう)場合があったりします。
さて、そんなことにならないよう、現在のセッションの状態を調べたい場合に "query session"コマンドがあります。