VMware vSphere PowerCLIを使用したスクリプトをバッチから起動するためのメモ

VMware vSphere PowerCLIを使用したスクリプトをバッチから起動するためのメモです

VMware vSphere PowerCLIは便利ですが、VMware vSphere PowerCLIコンソールを立ち上げてからのコマンド実行なので、少しめんどくさいです。なので少し調べてみました。

なお、VMware vSphere PowerCLIは、以下からダウンロードできます。

ダウンロード vSphere PowerCLI 5.5

VMware vSphere PowerCLIに限らずですが、
Powershell スクリプトファイル(.PS1)を実行するためにはポリシー変更が必要です。

VMware vSphere PowerCLIを初回起動時には以下のように表示されます。

 

この場合、管理者として実行したPowershellにて、以下のコマンドを実行する必要があります。

(上記の場合、ローカルのローカルに保存されているスクリプトは実行可能。インターネットからダウンロードしたスクリプト(非ローカルのスクリプト)は、署名されているもののみが実行可能。)

そのほかのパラメータとしては、以下のようなものがあります。

Unrestricted
全てのスクリプトが実行可能。ただしインターネットからダウンロードしたスクリプトは、実行するかどうかが確認されるので、ユーザーが明示的に許可した場合のみ実行される

Bypass
全てのスクリプトが実警告やユーザーへの確認なしに、全てのスクリプトが実行可能

 

 

これで、VMware vSphere PowerCLIを起動した状態でPowerSHellからスクリプトファイルが実行できるようになります。

ためしに以下のps1ファイルを作成します

Get-PowerCLIVersion.ps1

 

これをVMware vSphere PowerCLIで実行します。

 

しかし、コマンドプロンプトやバッチファイルから以下のように実行しても、エラーになります。

 

この場合は、実行するps1ファイルに以下の行を追加します

 

実際にやってみます。

Get-PowerCLIVersion.ps1 を変更

 

コマンドプロンプトから実行してみます

実行できました。

あとは以下のようなバッチファイルを書けば、すぐに実行できますね。