Some errors in recent ps1 script

Sep 15, 2010 at 9:37 AM

Hi Brian,

With the new script I am getting the following errors:

Get-SPPerformancePointServiceApplication : The service name and type specified are not valid. The service may not be installed or may not have been specified with the namespace or assembly qualified name, which is case sensitive and required for services not in SharePoint. Additional information: |0

At D:\sp2010\scripted\AutoSPInstaller.ps1:1278 char:43

I didn't notice any PerformancePoint configuration settings in the SetInputs.xml file (also, this should really only be called if it is SharePoint has been installed with Enterprise Edition features).

I am also getting errors with the Search configuration:

New-SPEnterpriseSearchServiceApplication : A database exception occured when creating Search Application: Login failed for user '<domain\farmaccount>'.

At D:\sp2010\scripted\AutoSPInstaller.ps1:1381 char:66.  The farm account has dbcreator/securityadmin rights to the db (but is not a local admin of the SQL box).

Also getting:

- Setting administration component...

Get-SPEnterpriseSearchCrawlTopology : Cannot bind argument to parameter 'SearchApplication' because it is null. (several search script errors here).

At D:\sp2010\scripted\AutoSPInstaller.ps1:1407 char:80

Below is a segment of the SetInputs.xml file:

    <EnterpriseSearchService ContactEmail=""
        ConnectionTimeout="60"
        AcknowledgementTimeout="60"
        ProxyType="Default"
        IgnoreSSLWarnings="false"
        InternetIdentity="Mozilla/4.0 (compatible; MSIE 4.01; Windows NT; MS Search 6.0 Robot)"
        IndexLocation="D:\SPIndex"
        PerformanceLevel="PartlyReduced"
        Account="domain\svc_spprodsearch"
                                ShareName="SearchShare">
      <EnterpriseSearchServiceApplications>
        <EnterpriseSearchServiceApplication Name="Enterprise Search Service Application"
             DatabaseServer="localhost"
             DatabaseName="SP2010_Search"
             FailoverDatabaseServer=""
             Partitioned="false"
             Partitions="1"
             SearchServiceApplicationType="Regular">
          <ApplicationPool Name="SharePoint Enterprise Search Application Pool" Account="domain\svc_spprodapplpool" Password="password" />
          <CrawlServers>
            <Server Name="localhost" />
          </CrawlServers>
          <QueryServers>
            <Server Name="localhost" />
          </QueryServers>
                <SearchQueryAndSiteSettingsServers>
                    <Server Name="localhost" />
                </SearchQueryAndSiteSettingsServers>
          <AdminComponent>
            <Server Name="localhost" />
            <ApplicationPool Name="SharePoint Enterprise Search Application Pool" Account="domain\svc_spprodapplpool" />
          </AdminComponent>
          <Proxy Name="Enterprise Search Service Application Proxy" Partitioned="false">
            <ProxyGroup Name="Default" />
          </Proxy>
        </EnterpriseSearchServiceApplication>
      </EnterpriseSearchServiceApplications>
    </EnterpriseSearchService>
 

I noticed in one instance that after the install, you could see that the search crawl account was the farmaccount, which was not specified anywhere in the above config.

Coordinator
Sep 16, 2010 at 3:06 AM

Hi, that's correct there are no PerformancePoint settings in the SetInputs.xml, and you're right in that it shouldn't be attempted unless we're on an Enterprise Edition SKU. I'll look into fixing this so it only tries to run on the correct edition.

Also as you've noted the Enterprise Search section isn't perfect - I still need to investigate things like which account is used to crawl (as you've pointed out) and also just generally verify a lot of what's going on in the Enterprise Search functions (as you may know they were originally from Gary Lapointe but modified by others).

Thanks for the feedback and I'll try to provide updates soon.

Brian

Oct 18, 2010 at 3:39 PM

Hi!

 

When it comes to the crawl account mentioned above, I ran the script and I see that the farm account is set as crawl account. Isn´t it "best practise" to create a specific crawl account for the crawling? The same goes for the service applications, Isn´t it _better_ to create a specific service account to run all service applications (except search), if you follow the least privelege approach?

 

Regards

Coordinator
Oct 22, 2010 at 4:36 PM

That's correct, I still need to do some work to get the Search Service App to properly use the crawl account that we specify in setinputs.xml, instead of defaulting to the Farm Account.