2

Powershell.org のDSC Bookにある指示に従って、 DSC で使用する http プル サーバー (Windows 2012 サーバー) をセットアップしました。http プル サーバーをセットアップし、プルする構成を作成し、構成をプルして実行するようにノードの LCM をセットアップしました。

Task Scheduler/Microsoft/Windows/Desired State Configurationの下のノードに Scheduled タスクが表示されるので、少なくとも何かが機能していることがわかります。ただし、私の構成は実行されていません。Apps&Svcs/Microsoft/Windows/Desired State Configuration/Operational Logの下のイベント ログを見ると、次のイベントが表示されます。

Job {E0B6977A-E34F-4EDD-8455-E555063CD3DD} : 
This event indicates that failure happens when LCM is trying to get the configuration from pull server using download manager WebDownloadManager. ErrorId is 0x1. ErrorDetail is The attempt to get the action from server http://pullserver.local:8080/PSDSCPullServer/Action(ConfigurationId='adaba4f6-b2b6-420d-a1dd-3714106451d6')/GetAction returned unexpected response code InternalServerError.

CustomErrors を有効にした後、手動でその URL にアクセスすると、次のエラーが表示されます。

Exception Details: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Isam.Esent.Interop, Version=6.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

このエラーについてグーグル検索を試みましたが (うまくいきませんでした)、この DLL に関する役立つ情報が見つかりません。Windows の一部に付属しているように見えますが、私のシステムには表示されません。それらの「DLLダウンローダー」サイトの1つからダウンロードするのは気が進まない.

DSC プル サーバーがこの DLL を必要とするように思われるのに、私がそれを持っていない理由を教えてください。

4

2 に答える 2

5

xPSDesiredStateConfiguration の PSDSCPullServer リソースは、デフォルトで Esent をデータベース プロバイダーとして使用するように設定されているようです。これは、Windows 8.1 (Server 2012 ではない) でのみ機能します。ここで、コピーできるコードを含むいくつかのドキュメントを見つけました。プル サーバーの web.config を編集して、これを変更する必要がありました。

<add key="dbprovider" value="ESENT" />
<add key="dbconnectionstr" value="C:\Program Files\WindowsPowerShell\DscService\Devices.edb" />

これとともに:

<add key="dbprovider" value="System.Data.OleDb" />
<add key="dbconnectionstr" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\WindowsPowerShell\DscService\Devices.mdb;"/>

元の構成が Devices.edb (これは私のシステムには存在しませんでしたが、.mdb にはありました) を指そうとしたという事実は、何かおかしなことが起こっていることのさらなる証拠です。

于 2014-06-17T19:59:45.750 に答える
1

どのような方法を使用しましたか? リソース キットの xPSDesiredConfiguration モジュールまたは手動の手順ですか? 私自身、DSC の本を読んだことはありません。だから、私は彼らが何を勧めているのか分かりません。

Microsoft.Isam.Esent.Interop アセンブリは、ESE データベース プロバイダーです。ただし、このプロバイダーは Blue OS (Windows 8.1) でのみ使用する必要があります。プル サーバーにはどの OS を使用していますか? Blue OS 以外のサポートされているすべての OS では、devices.mdb に Jet プロバイダーを使用する必要があります。

于 2014-06-17T06:31:38.653 に答える