Technical information

Kompiraの機能 Windowsでリモートスクリプトを実行する(その1)

KompiraはLinuxなどのssh接続できるもの以外に、Windowsに対するアクセスもサポートしています。
今回の記事ではKompiraの”リモートスクリプト”を利用して、Windowsサーバーでバッチファイルを実行する方法をご紹介します。

※本記事ではWindows Server 2012 R2(WinRM version 3)で動作確認をしております。

 
Windows側での設定

KompiraからWindows機への接続はWinRM/WinRSを利用して接続します。Windows Serverでは通常、デフォルトで必要な設定が行われておりますが、必要に応じて設定を行ってください。

スタート > “Windows Power Shell”を右クリック > “管理者として実行”
下の実行例の様に、”winrm qc” コマンドを実行してください。

また、ファイヤーウォールなどで通信を管理している場合にはポート5985番にリクエストを行えるように設定してください。

続いて、KompiraからWinRM経由でアクセスできるよう、Basic認証と暗号化していない認証を許可します。
同様にPower Shellの画面から次のコマンドを実行してください。

Basic認証の設定

ここまでで、Windows側の設定は完了です。

 
Kompira側の設定

実行するスクリプトを記述する”スクリプトジョブ”オブジェクトと、これを実行するサーバーを指定する”ノード情報”、”アカウント情報”を作成します。

まず”アカウント情報”ですが、ここでは”AccountOnWindows”という名前で以下のように作成しました。(名前は任意で結構です。)
Windows機で作成したアカウントの名前とパスワードを入力してください。

アカウント情報

次に”ノード情報”ですが、ここでは”WindowsServer”という名称で作成しました。WindowsサーバーのIPアドレスを記載し、”接続種別”は”Winrs”を選択してください。一番下の”アカウント”は先に作成した”AccountOnWindows”を選択します。

ノード情報

最後に”スクリプトジョブ”ですが、ここでは”Win機でバッチファイルの実行”という名前で作成しました。”ソース”は以下のように指定の引数等を表示させています。

Windowsでバッチファイルを実行させる場合拡張子を設定する必要があるので、”拡張子”の欄に”bat”と入力してください。

ジョブフロー

 
スクリプトジョブの実行

実行画面で先に作成したノード情報(“WindowsServer”)とアカウント情報(“AccountOnWindows”)を指定して実行します。

ジョブフローの実行

実行時に以下の様なエラーが表示される場合にはアカウント情報の指定ミスか、設定段階でBasic認証と暗号化していない認証の設定が失敗している可能性がありますので確認してください。

ここまで、Linuxの場合と同様に、Windowsに対してもスクリプトジョブを実行できるところまでを見てきました。リモートサーバーに直接バッチファイルなどを配置するとバッチファイルそのもののメンテナンスが大変ですが、Linuxなどの場合と同様にKompira側でそれらを管理して、複数のサーバーに同じ処理を実行させる事が可能になります。