Microsoft FAST Search Server 2010 Installation Issue with Powershell Script

I am currently installing Microsoft FAST Search Server 2010 RC on my demo/development environment and ran into an issue running the post configuration Powershell script (found at C:\FastSearch\installer\scripts\psconfig.ps1). When I initially ran the script, it failed either because I didn’t supply the FQDN to my SQL Server machine (which is required) or because I may have fat-fingered the service account name or one of the associated passwords. Anyways, when I tried to re-run the script (this time making sure I entered the inputs correctly), I got an error that the configuration failed, specifically that ‘An error occurred while installing Resource store’. So I did a search both on the web and the Microsoft Connect newsgroups to see if there was anyone else that had this error but saw nothing. I checked the logs and found this (not the complete log file):

 1: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:requestFiltering /+verbs.[verb='POST',allowed='true'] /commit:apphost - Applied configuration changes to section "system.webServer/security/requestFiltering" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST"  
 2: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:requestFiltering -requestLimits.maxAllowedContentLength:1073741824 /commit:apphost - Applied configuration changes to section "system.webServer/security/requestFiltering" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST"  
 3: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:httpRuntime -maxRequestLength:1024000 -executionTimeout:3600 /commit - Applied configuration changes to section "system.web/httpRuntime" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST/ResourceStore/Config"  
 4: 3/10/2010 4:53:51 PM Warning Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" StdError - resourcestoreinstaller.exe - C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:appSettings /+"[key='FileLimit',value='']" /commit - ERROR ( message:New add object missing required attributes. Cannot add duplicate collection entry of type 'add' with unique key attribute 'key' set to 'FileLimit'
 5: 3/10/2010 4:53:51 PM Warning Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" StdError -  . )  
 6: 3/10/2010 4:53:51 PM Warning Utility.Execute - Return code for binary "C:\FASTSearch\bin\ResourceStoreInstaller.exe" is not 0. This may indicate that binary didn't execute successfully
 7: 3/10/2010 4:53:51 PM Verbose Utility.Execute - Finished executing "C:\FASTSearch\bin\ResourceStoreInstaller.exe"
 8: 3/10/2010 4:53:51 PM Error InstallResourceStore - An error occurred while executing binary "C:\FASTSearch\bin\ResourceStoreInstaller.exe". Return code is not 0.
 9: 3/10/2010 4:53:51 PM Error Utility.WriteException - Exception -  : Exception - System.Management.Automation.RuntimeException: An error occurred while installing Resource store.

The exception is on line 9 but the important error is actually on line 4. Based on this line, I was able to deduce that what was happening was the resource installer was trying to add a key (FileLimit) in an appSettings section of a config file but couldn’t because the key already existed. Instead of just replacing the old key, it just causes the post configuration script to fail. Anyways, in order to fix it, I found the config file that it was attempting to update (there are a ton of config files for this app). The particular config file where it was failing is located at C:\FASTSearch\components\resourcestore\config\web.config. Sure enough, the FileLimit key was there. All I did was delete that key, re-ran the script again and presto, all done.

Anyways, just wanted to share this, to save others the headache I just ended up getting trying to figure out why that darn script wasn’t working correctly.

Technorati Tags: ,