PowerCLI を利用した vCloud Air 上の仮想マシン操作

vCloud Air OnDemand サービス上の仮想マシンを PowerCLI を利用してコンソール接続する方法を紹介します。
この方法を利用することで、vCloud Air ポータルなど経由せずに vCloud Air 上の仮想マシンのコンソールが確認できます。

他のクラウド サービスの場合、SSH や RDP 通信させなければいけないですが、vCloud Air ならコンソールがそのまま見れるのでネットワーク設定をせずに仮想マシンの状態を見れるのはありがたいですね。

# PowerCLI のインストール手順
2016 年 2 月時点では PowerCLI 6.0 Release 3 が最新となっています。

ダウンロード VMware vSphere PowerCLI 6.0 Release 3
https://my.vmware.com/jp/web/vmware/details?downloadGroup=PCLI600R3&productId=468

上記のサイトから MyVMware のアカウント情報を利用してインストーラーをダウンロードします。
途中で必要なコンポーネントが自動的にインストールされますが、Windows Management Framework 3.0 だけは別途インストールする必要があります。(再起動が必要)

Windows Management Framework 3.0
https://www.microsoft.com/en-us/download/details.aspx?id=34595

![1.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/2382b092-66ea-236f-f0c0-c5e385e0d8ca.png)

![2.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/5b322bd8-3281-73d0-c19f-ad8df64c7e71.png)

インストール完了後、Power shell の Execution Policy を RemoteSigned 以上に設定します。
設定する際には、Power Shell を管理者として実行してコマンドを実行します。

コマンド例: Set-ExecutionPolicy remoteSigned
![3.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/0febb887-59cc-94d6-8103-aacca9803cd3.png)

デスクトップ上に表示されているアイコンをクリックして正常に PowerCLI が起動することを確認します。

![4.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/be2ca07c-7326-5771-621e-0a3b6d1803cb.png)

# vCloud Air OnDemand の仮想マシンへコンソール接続する
vCloud Air OnDemand 上の仮想マシンにコンソール接続するための方法です。

\# PowerCLI を起動し、認証情報を入力します。
`Connect-PIServer -vCA`
\# Compute Instance を GUI から選択します。
`$CI = Get-PIComputeInstance | Out-GridView -OutputMode Multiple`
`$CI | Connect-CIServer`
\# 仮想マシンの一覧からコンソール接続する電源が入った仮想マシンを選択します。
`$selection = Get-CIVM | ? {$_.Status -eq "PoweredOn"} | Out-GridView -OutputMode Multiple`
`$selection | foreach { Open-VMConsoleWindow $_}`
![11.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/66afcad7-d57e-3a7c-eca7-25dbfc8c86f6.png)



上記の方法はプラグイン (VMRC) を利用してコンソール接続しますが、2016 年 2 月時点では、Chrome では接続できないようです。
そのため、Firefox か IE を利用する必要があるので、Chrome が起動してしまう人は以下の設定が必要です。

\# 現在のセッションの既定ブラウザを 32 bit 版の Firefox を利用するよう設定する
`Set-PowerCLIConfiguration -Scope Session -VMConsoleWindowBrowser "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -Confirm:$false`
\# 現在のセッションの既定ブラウザを 32 bit 版の IE を利用するよう設定する
`Set-PowerCLIConfiguration -Scope Session -VMConsoleWindowBrowser "C:\Program Files (x86)\Internet Explorer\iexplore.exe" -Confirm:$false`
*※ 既定のブラウザを変更しても、大丈夫です。*

// Firefox Tips
Firefox の設定から [アドオン] を選択して、[プラグイン] から "VMware Remote Console Plug-in" を [常に有効化する] を選択しておきましょう。 

// IE Tips
IE11 で接続する際には以下の方法を実施してください。
1. PowerCLI から 32 bit の IE が立ち上がることを確認します。
2. ブロックされたコンテンツを有効にします。
![5.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/a3c6b164-0faf-b5e2-ed93-fc23b54dc2be.png)
3. 右上にある歯車のアイコンから **F12 開発者ツール** を選択します。
![7.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/b2d1ac4a-01a1-7eb7-16d2-237f3fd31a75.png)
4. エミュレーション タブを選択し、**ドキュメント モード** に **10** を選択します。
![9.PNG](https://qiita-image-store.s3.amazonaws.com/0/111746/34f51f8e-bd39-a140-f77b-d1210b72ecf8.png)


// 参考 URL
vCloud Air On-Demand PowerCLI Evaluation Module
http://blogs.vmware.com/PowerCLI/2015/08/vcloud-air-on-demand-powercli-evaluation-module-2.html

Opening the Virtual Machine Remote Console through PowerCLI
http://blogs.vmware.com/PowerCLI/2013/10/opening-the-virtual-machine-remote-console-through-powercli.html

vCloud Director 5.5 VM Consoles and Google Chrome
http://orchestration.io/2014/12/16/vcloud-director-5-5-vm-consoles-and-google-chrome/