Weitere ähnliche Inhalte Ähnlich wie VM ロールで仮想デスクトップ環を作ってみよう (20) Mehr von Masayuki Ozawa (20) VM ロールで仮想デスクトップ環を作ってみよう2. 自己紹介
• 名前
– 小澤 真之
• 参加コミュニティ
– JAZUG / SQLTO に参加させていただいています
• お仕事
– 都内の SIer で主に Microsoft 製品の社内支援を
しています
2
3. VM ロールをサーバー用途以外でも使えないか?
Azure はインターネットにつながれば
どこからでも利用することが可能
VM ロールは OS のイメージを自分で準備
できるためカスタマイズ可能な範囲が広い
• この 2 つを組み合わせて、どこからでも利用で
きる仮想デスクトップ環境 (ぽいもの) を作れな
いか試してみました
3
5. このような環境になっています
Azure ①インスタンス起動時に
Azure ドライブをマウント
VM ロール Azureドライブ
リモート
デスクトップ
接続用ユーザー
③VM ロールで起動した
IE だけをリダイレクト
②リモートデスクトップ用
ユーザーのプロファイルのパスを
Azure ドライブに指定
(ユーザープロファイルの永続化)
インターネット
接続環境
5
6. ①インスタンス起動時に Azure Drive をマウント
VM ロールではスタートアップタスクがない
• インスタンス起動時に実行したい処理は VM ロールアダプターで
実装
VM ロールアダプターってなにもの??
• Windows Azure API を使用してWindows Azure のランタイム
情報を使用する Windows サービス
• と書きましたが作成方法は通常の Windows サービスと同じ
• PowerShell + タスクスケジューラーで代替することも
6
8. ②プロファイルのパスに Azure ドライブ を指定
• リモートデスクトップのユーザーの移動ユーザープロ
ファイルのパスにAzure ドライブを設定
– VM ロールアダプター内に処理を組み込めると思いますが、
今回はイメージアップロード前に手動でプロファイルのパ
スを設定しています
プロファイルのパスに
Azure Drive を指定
Azure ドライブ上に保存された
移動ユーザープロファイル
(ログオン/ログオフ時に同期される)
8
9. ③VM ロールで起動した IE をリダイレクト
• Remote Desktop で Remote App の機能を使用
– 以下のレジストリを変更することでリモートデスクトップ
接続先の特定のアプリケーションだけをリダイレクト可能
• HKLM¥SOFTWARE¥Microsoft¥Windows
NT¥CurrentVersion¥Terminal Server¥TsAppAllowList
• fDisabledAllowList (REG_DWORD) : 1
– 特定のアプリケーションに限定してリダイレクトを許可す
ることも可能
• 管理ポータルからダウンロードした RDP ファイルを
修正し、起動したいアプリケーションの情報を設定す
ることでアプリケーションの画面だけ表示可能
- 以下の記述を追加 -
remoteapplicationmode:i:1
remoteapplicationname:s:Internet Explorer
remoteapplicationprogram:s:C:¥Program Files¥Internet Explorer¥iexplore.exe
9
12. 参考)VM ロール アダプターの作り方
• MSDN ≫ Windows Azure の VM ロールのアダプター
の開発方法
– http://msdn.microsoft.com/ja-jp/library/gg466226.aspx
※ [アダプターのインストーラーを作成するには] の [Account プロパ
ティ] は [Local System] を設定しないとうまく動きませんでした
• 64 Blog ≫ VMロール アダプターでドライブレター固定
のWindows Azureドライブをマウントする
– http://blogs.gine.jp/kusa/archives/1575
12
13. 参考)sysprep 時の注意事項
• SID は要注意
– Generalize (一般化) したイメージだとローカルに作成したリ
モートデスクトップ用ユーザーの SID (セキュリティ識別子)
が初期化のたびに変更され、初期化後は Azure Drive 上のユー
ザープロファイルが読めなくなります (同姓同名の他人となっ
てしまうため)
– 今回は Generalize しないイメージを使用していますがサポート
対象外になるかもしれないので自己責任で…
• Azure Connect でドメイン参加させ、リモートデスクトップ
の接続にはドメインユーザーを使用するのが良いかもしれま
せん
– ドメインユーザーは初期化後も SID 変更の影響なしなので
Generalize 可能
• ユーザー情報は Active Directory に保存されているため
– 参考) ロールがドメインに結合されている場合の Windows Azure Connect の概要
• http://msdn.microsoft.com/ja-jp/library/gg454720.aspx
13
14. 参考)アプリケーションだけをリダイレクトする
- レジストリをコマンドで変更 -
reg add "HKLM¥SOFTWARE¥Microsoft¥Windows NT¥CurrentVersion¥Terminal
Server¥TsAppAllowList" /v fDisabledAllowList /t REG_DWORD /d 1 /f
- RDP ファイルの修正例 -
full address:s:xxxxxxx.cloudapp.net
username:s:xxxxxx
LoadBalanceInfo:s:Cookie: mstshash=xxxxx#xxxxx_IN_0
remoteapplicationmode:i:1
remoteapplicationname:s:Internet Explorer
remoteapplicationprogram:s:C:¥Program Files¥Internet
Explorer¥iexplore.exe
14
15. 参考)オーディオをリダイレクト
• [Start] → [Administrative Tools] → [Remote Desktop
Services] → [Remote Desktop Session Host Configuration] を
実行して、[RDP-Tcp] のプロパティを開く
• [Audio and video playback][Audio recording] のチェックを外す
チェックを外す
15