PowerShell 5.0 以降で構成名を使用してプル クライアントを設定するSet up a Pull Client using Configuration Names in PowerShell 5.0 and later

適用対象: Windows PowerShell 5.0

Von Bedeutung

プル サーバー (Windows 機能 DSC-Service) は Windows Server のサポートされているコンポーネントですが、新しい機能を提供する予定はありません。 新しいバージョンの DSC が一般提供され、 ゲスト構成という名前の Azure Policy の機能によって管理されることをお知らせします。 ゲスト構成サービスは、DSC 拡張機能、Azure Automation State Configuration、およびお客様からのフィードバックから最も要望の多かった機能を組み合わせたものです。 ゲスト構成には、 Arc 対応サーバーを介したハイブリッド マシンのサポートも含まれます。

プル クライアントを設定する前に、プル サーバーを設定する必要があります。 この順序は必須ではありませんが、トラブルシューティングに役立ち、登録が成功したことを確認できます。 プル サーバーを設定するには、次のガイドを使用できます。

各ターゲットノードは、構成やリソースをダウンロードし、そのステータスを報告するように構成できます。 以下のセクションでは、SMB 共有または HTTP DSC プル サーバーを使用してプル クライアントを構成する方法を示します。 ノードのLCMが更新されると、設定された場所にアクセスして、割り当てられた設定をダウンロードします。 必要なリソースがノードに存在しない場合は、構成された場所から自動的にダウンロードされます。 ノードが レポート サーバーで構成されている場合は、操作のステータスが報告されます。

注

このトピックは PowerShell 5.0 に適用されます。 PowerShell 4.0 でのプル クライアントの設定については、「 PowerShell 4.0 で構成 ID を使用してプル クライアントを設定する」を参照してください。

プル クライアント LCM を構成する

次のいずれかの例を実行すると、 PullClientConfigName という名前の新しい出力フォルダーが作成され、そこにメタ構成 MOF ファイルが配置されます。 この場合、メタコンフィグレーション MOF ファイルの名前は localhost.meta.mof になります。

構成を適用するには、 Set-DscLocalConfigurationManager コマンドレットを呼び出し、 Path をメタコンフィギュレーション MOF ファイルの場所に設定します。 例えば次が挙げられます。

Set-DSCLocalConfigurationManager –ComputerName localhost –Path .\PullClientConfigName –Verbose.

設定名

次の例では、LCM の ConfigurationName プロパティを、この目的のために作成された、以前にコンパイルされた Configuration の名前に設定します。 ConfigurationName は、LCM がプル サーバー上の適切な構成を見つけるために使用する名前です。 プル サーバー上の構成 MOF ファイルには、 <ConfigurationName>.mof という名前 (この場合は "ClientConfig.mof") を付ける必要があります。 詳細については、「 プル サーバーへの構成の発行 (v4/v5)」を参照してください。

プルクライアントを設定して設定をダウンロードする

各クライアントは プル モードで構成し、その構成が格納されているプル サーバーの URL を指定する必要があります。 これを行うには、必要な情報を使用してローカル構成マネージャー(LCM)を構成する必要があります。 LCM を構成するには、 DSCLocalConfigurationManager 属性で修飾された特別な種類の構成を作成します。 LCM の構成の詳細については 、「ローカル構成マネージャーの構成」を参照してください。

次のスクリプトは、"CONTOSO-PullSrv" という名前のサーバーから構成をプルするように LCM を構成します。

  • このスクリプトでは、 ConfigurationRepositoryWeb ブロックがプル サーバーを定義します。 ServerURL プロパティは、プル サーバーのエンドポイントを指定します。

  • RegistrationKey プロパティは、プル サーバーとそのプル サーバーのすべてのクライアント ノード間で共有されるキーです。 同じ値がプル サーバー上のファイルに格納されます。

    注

    登録キーは 、Web プル サーバーでのみ機能します。 SMB プル サーバーでは、引き続き ConfigurationID を使用する必要があります。 > ConfigurationID を使用したプル サーバーの構成については、「構成 ID を使用したプル クライアントの設定」を参照してください

  • ConfigurationNames プロパティは、クライアント ノード用の構成の名前を指定する配列です。 > 手記:ConfigurationNames に複数の値を指定する場合は、構成で PartialConfiguration ブロックも指定する必要があります。 >部分的な構成の詳細については、「 PowerShell Desired State Configuration の部分的な構成」を参照してください。

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }
        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = '140a952b-b9d6-406b-b416-e0f759c9c0e4'
            ConfigurationNames = @('ClientConfig')
        }
    }
}
PullClientConfigNames

リソースをダウンロードするためのプルクライアントの設定

LCM 構成で ConfigurationRepositoryWeb ブロックまたは ConfigurationRepositoryShare ブロックのみを指定した場合 (前の例のように)、プル クライアントは ".mof" ファイルが格納されているのと同じ場所からリソースをプルします。 また、クライアントがリソースをダウンロードできる別の場所を指定することもできます。 リソース サーバーを指定するには、 ResourceRepositoryWeb (Web プル サーバーの場合) または ResourceRepositoryShare ブロック (SMB プル サーバーの場合) を使用します。

次の例は、プル サーバーから構成をダウンロードし、SMB 共有からリソースをダウンロードするようにクライアントを設定するメタ構成を示しています。

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }

        ResourceRepositoryShare SMBResources
        {
            SourcePath = '\\SMBPullServer\Resources'
        }
    }
}
PullClientConfigNames

ステータスを報告するためのプルクライアントの設定

1 つのプル サーバーを構成、リソース、およびレポートに使用できます。 デフォルトでは、クライアントに対してレポートは構成されていません。 クライアントでステータスをレポートするように設定するには、 ReportRepositoryWeb ブロックを作成する必要があります。 次の例は、構成とリソースをプルし、レポート データを 1 つのプル サーバーに送信するようにクライアントを設定するメタ構成を示しています。

注

レポート サーバーを SMB 共有にすることはできません。

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }

        ReportServerWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }
    }
}
PullClientConfigNames

こちらもご覧ください