PowerCLIのスクリプトをタスクスケジューラで動かしてみる


ここでは、VMwareのPowerCLIを使ったスクリプトをWindowsのタスクスケジューラで動作させてみたいと思います。
タスクスケジューラに登録すれば自動化もできますね 🙂

PowerCLI Document

動作環境

項目 バージョン
OS Windows Server 2012R2
PowerCLI vSphere PowerCLI 6.3

PowerShellから動かすには

PowerCLIにあるコマンドをPowershell上から実行するには以下のPSSnapinを読み込ませればよさそうです。

  • VMware.VimAutomation.Core <- 標準的なものであればこれだけでよさげ
  • VMware.DeployAutomation
  • VMware.ImageBuilder

通常のスクリプト(ps1)から読み込ませる処理は以下のようにします。

テストスクリプトについて

今回動作させるスクリプトは以下のものを使おうと思います。

以下のパラメーターは環境に合ったものを入れます。

タスクスケジューラ登録

(1) コマンドプロントを起動して以下のコマンドを実行してタスクスケジューラーを起動します。

(2) 右クリックをして タスクの作成(R)... をクリックします。

(3) 名前 を入力して ユーザーがログオンしているかどうかにかかわらず実行する(W) を選択して 操作 タブを開きます。

(4) 新規(N)... をクリックします。

(5) プログラムの開始 になっていることを確認して以下のパスを入力して OK をクリックします。

項目 パラメーター
プログラム/スクリプト(P) C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
引数の追加 -c “C:\Users\Administrator\Desktop\output_vmlist.ps1”

(6) トリガー タブを選択します。

(7) 新規(N)... をクリックします。

(8) スクリプトを実行する条件を設定して OK をクリックします。

ここでは、日時を指定しています。

(9) タスクを作成するために OK をクリックします。

(10) パスワードを求められるので実行ユーザーのパスワードを入力して OK をクリックします。

これで、時間になったら結果ファイルが出力されていれば問題ありません 🙂

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)