PowerShell DSC / Hyper-V
PowerShell 4.0の新しい機能である、Desired State Configurationを使ってみました。
参考:PowerShell DSCによるプッシュ型展開
http://www.atmarkit.co.jp/ait/articles/1407/24/news131.html
このDSCというのは、サーバの設定を自動的にするしくみで、リモートホストとPushおよびPull通信をします。
ここでは、Windows Server 2012R2のHyper-VにWindows 8.1を仮想化した環境で、2012R2から8.1へのPushをテストしました。
設定するものは、ファイルリソースを使って、メッセージを指定のフォルダに書き込み見ます。
8.1側は以下の設定を事前にします。
Enable-PSRemoting -Force
Set-Item wsman:\localhost\Client\TrustedHosts -Value * -Force
Set-ExecutionPolicy RemoteSigned
hello.ps1
Param([string]$msg) Configuration DSCTest { Node "192.168.11.11" { File dscFile { DestinationPath = "C:\work\hello.txt" Ensure = "Present" Type = "File" Contents = $msg } } } $outputPath = ".\DSCTest" DSCTest -OutputPath $outputPath Start-DscConfiguration -Path $outputPath -Wait -Verbose -Credential 192.168.11.11\user
冪等性から、何度設定しても同じ状態になる特徴がありますが(同じ状態だと何もしない)、
上のようにメッセージを引数で変えてやると、毎回設定にいくようです。
対象ノードは複数設定でき、いろいろと応用した使い方ができそうです。