サーチ…


簡単な例 - WindowsFeatureを有効にする

configuration EnableIISFeature
{
    node localhost
    {
        WindowsFeature IIS
        {
            Ensure = “Present”
            Name = “Web-Server”                      
        }
    }
}

Powershell(EnableIISFeature)でこの設定を実行すると、localhost.mofファイルが生成されます。これは、マシン上で実行できる「コンパイル済み」構成です。

ローカルホスト上のDSC設定をテストするには、次のコードを実行します。

Start-DscConfiguration -ComputerName localhost -Wait 

リモートマシン上でのDSC(mof)の起動

リモートマシン上でDSCを起動することは、ほぼ同じくらい簡単です。すでにPowershellのリモーティング(または有効なWSMAN)をセットアップしていると仮定します。

$remoteComputer = "myserver.somedomain.com"
$cred = (Get-Credential)
Start-DSCConfiguration -ServerName $remoteComputer -Credential $cred -Verbose

Nb:あなたのローカルマシン上のあなたのノードの設定をコンパイルしたとします(設定を開始する前にファイルmyserver.somedomain.com.mofが存在すると仮定します)

psd1(データファイル)をローカル変数にインポートする

場合によっては、Powershellデータファイルをテストして、ノードとサーバーを反復処理すると便利です。

Powershell 5(WMF5)は、Import-PowerShellDataFileと呼ばれるこの機能を追加しました。

例:

$data = Import-PowerShellDataFile -path .\MydataFile.psd1
$data.AllNodes

利用可能なDSCリソースのリスト

オーサリングノードで利用可能なDSCリソースを一覧表示するには:

 Get-DscResource 

これにより、オーサリングノードにインストールされているすべてのモジュール(PSModulePathにあるモジュール)のすべてのリソースが一覧表示されます。

WMF 5のオンラインソース(PSGallery ++)にある利用可能なDSCリソースをすべて一覧表示するには:

Find-DSCResource

DSCで使用するためのリソースのインポート

構成内のリソースを使用するには、そのリソースを明示的にインポートする必要があります。あなたのコンピュータにインストールするだけで、あなたは暗黙のうちにリソースを使用することはできません。

Import-DscResourceを使用してリソースをインポートします。

PSDesiredStateConfigurationリソースとFileリソースをインポートする方法の例

Configuration InstallPreReqs
{
   param(); # params to DSC goes here.

   Import-DscResource PSDesiredStateConfiguration 

   File CheckForTmpFolder {
        Type = 'Directory'
        DestinationPath = 'C:\Tmp'
        Ensure = "Present"
    }
 }

:DSCリソースを動作させるには、構成を実行するときにターゲットマシンにモジュールをインストールする必要があります。それらをインストールしていないと、設定は失敗します。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow