2014-06-16 48 views
2

我遵循Powershell.org的DSC Book中的說明建立http拉服務器(Windows 2012服務器)以便與DSC一起使用。我設置了http拉服務器,然後製作了一個要拉取的配置,然後設置節點的LCM來拉動並運行配置。Powershell DSC拉服務器引發內部錯誤 - Microsoft.Isam.Esent.Interop未找到

我可以看到下任務計劃程序/微軟/視窗/節點所需狀態配置在預定的任務,所以我知道至少東西工作。但是,我的配置沒有運行。當我看到在事件日誌下應用&的SVC /微軟/視窗/期望狀態配置/操作日誌,我看到以下事件:

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後,在這裏是的錯誤:

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 Downloader」網站下載它。

任何想法爲什麼DSC拉服務器似乎需要這個DLL,我沒有它?

回答

5

看來,xDSDesiredStateConfiguration中的PSDSCPullServer資源默認使用Esent作爲數據庫提供程序,該數據庫提供程序僅適用於Windows 8.1(不是Server 2012)。我發現一些文檔here與我可以複製的一些代碼。我不得不編輯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確實)進一步證明了某些事情正在發生。

1

你使用了什麼方法?資源工具包中的xPSDesiredConfiguration模塊還是手動步驟?我自己也沒有看過DSC書。所以,我不知道他們在推薦什麼。

Microsoft.Isam.Esent.Interop程序集是ESE數據庫提供程序。但是,您只需要將此提供程序用於Blue OS(Windows 8.1)。 Pull服務器使用哪個操作系統?對於除Blue OS之外的所有支持的操作系統,您應該爲devices.mdb使用Jet提供程序。

+0

我在您提到的模塊中使用了PSDSCPullServer和PSDSCComplianceServer資源。這是一個Windows 2012服務器。 我不知道數據庫提供程序是如何設置的,我想它是由資源設置的。我可以在哪裏改變這個? –

+0

你的回答絕對讓我朝着正確的方向前進。我已經發布了我自己的答案,以及我必須改變的具體細節才能實現它。我希望你不覺得我試圖在這裏竊取你的信用! –

+0

NP!這就是我的意思。 xPSDesiredStateConfiguration模塊有一個錯誤。 – ravikanth