HYPERCONCERTO株式会社のチーフエンジニア雑記Blog

hyperconcerto株式会社のチーフエンジニアが日々気づいたことを書いています

PowerCLIのTipsその1

だいぶ時間が空いてしまいましたが、2017年1回目の更新を行いたいと思います。

仮想化関係が得意ですと発表してしまっているので、仮想化関係の記事を書こうとここ最近悩んでいました。
しかし、なかなかネタが思いつきません。

最近vSphereのスクリプト開発が多かったので、PowerShellやPowerCLI関係の事を書きたいと思います。

1回目、vSphereをPowerShellで操作するときのTips

PowerCLIのウインドウからならGet-VMとかのコマンドが通るけど、PowerShellのウインドウから実行できないのはどうして?
PowerCLIってPowerShellベースじゃないの?
スクリプトファイルでの実行できないよ!

回答
PowerCLIはPowerShellに対してVMwareが提供するモジュールを組み込んだものです。
ですので、手動でモジュールを組み込めばコマンドが通ります。

基本コマンドを使えるようにするには下記モジュールを読み込みます
Import-Module VMware.VimAutomation.Core

読み込めたらConnect-VIServerが通るはずです。

他のモジュールはこの中に入っているので、使いたいプロダクトに合わせて読み込んでください。
C:\Program Files (x86)\VMware\Infrastructure\PowerCLI\Modules

全てのモジュールを読み込む場合は初期化スクリプトを呼び出してください
& 'C:\Program Files (x86)\VMware\Infrastructure\PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1'


PowerCLI6.5RC1がリリースされているので補足
PowerCLI6.5RC1の段階ではHorizonViewに関するコマンドは提供されていませんが、ViewAPIがサポートされるようになったので一応は操作可能です。
ViewAPIを使った操作は結構大変なので、VMware.Hv.HelperというGitHubで公開されているモジュールを使ったほうが良いでしょう。
ただしデスクトッププールなどの一般的な操作のみサポートされています。
(細かな操作はViewAPIを使う必要があります)