[DaaS][Virtualization] Horizon 7~一通り遊べる環境を構成してみる~

LAN内で遊ぶだけなら、接続サーバとComposerだけあればいい

意外とHA等々まったく気にしないのであれば、構成が非常にシンプルであるとわかり、結構びっくりしてるわけなんですが、意外とさっくり動いてくれました。

ただ、ICAに比べるとやっぱし重いところもあり、何より仮想マシン端末側にそれなりのパワーが必要なように感じました。一番きついのは「ぬるぬるとは動いてくれない」ところで、省電力機能を強くかけると紙芝居レベルに負荷が上がっちゃうのが難点かなーと思います。

では作ろう。

まとめ資料ですが、ちゃんと記事を書く感じではなくてすみません。PowerPoint資料としてまとめたものをSpeakerDeckにアップロードしました。こちらをご覧ください。

接続に使用されるプロトコル

VMware Horizonでは、以下の3つのプロトコルが選択できるようになってます。

Remote Desktop Protocol

Remote Desktop Protocol (RDP) はご存じの通りMicrosoft社のリモートサーバ操作プロトコルですね。VMware Horizonの仕組みの中でこのプロトコルを選択することができます。

PCoIP

PC over IP (PCoIP)は カナダのTeradici 社とVMware社の2社共同開発によって作成されたプロトコルで、WAN上に出る際の帯域を圧縮し、ディスプレイ出力を転送するという動きをする。VMware View 4からこのプロトコルが採用されている。

VMware Blast

PCoIPに追加する形で動作するリモートサーバ操作プロトコルで、操作する端末側の負荷を低減するための工夫がなされている。Horizon7ではデフォルトプロトコルはこれになっている。

3つのプロトコルを使って比べる機会があったんですが、基本的にはやっぱりBlastを選択するのが一番快適です。PCoIPだと少し紙芝居レベルになってしまうことが多いかなーという風に体感的な意見ですが感じました。

次はUnified Access Gatewayを作ろう

Unified Access Gatewayはインターネットのような外部ネットワークからConnection Serverやセッションホストへアクセスできるようにするリバースプロキシの一種です。
仮想アプライアンスとして提供されていて、OVA形式ファイルをデプロイすることで作れます。

UAG作成手順

これもスライドでまとめる形にしています。よろしければご参考ください。

注意ポイントとしては、末尾スライドにあるIPアドレス設定に苦慮しました。
Public側のインタフェースにどうしても設定ができず、結果としてOS上に埋め込んだわけですが、その埋め込み方もどこに正データが眠っているかがわからないという。

何とか発掘できたので、それをもとに設定変更をしてみてTipsとしてまとめました。

一通り使ってみてわかったこと

これまで私は

【端末】-【モバイル回線】-【Azure P2S】-【LinuxへSSH接続してフォワード】-【開発サーバ】

という感じで接続してました。が、多重でRDP接続すると画面が三角形に消えたりとか、いろいろ応答の遅さも目立って辛かったりしました。特にモバイル回線がいわゆる「激安SIM」系なので、昼休みごろのレスポンスは絶望的に悪かったり。

で、今回WVDやVMware Horizon7を使うことで

【端末】-【モバイル回線】-【WVD/Horizon】

という風に短縮され、アクセスプロトコルも少し通常の管理ベースRDPとは違うようで、画面表示不具合などは解決し、レスポンスも格段によくなりました。

WVDに関しては自動シャットダウンを通常有効化し、必要に応じて起動して利用するスタイルにしていますが、基本それで必要な時はそれでという扱いはできていると思います。Horizonについては、自前インフラで動いているということもあり、ある意味使い放題なので使い倒す感覚で触っています。

ただ、やっぱりリソースの大きさの差でしょうかねー、WVDのほうがなんぼか軽い気はしますね。