Skip to content

SPSearchServiceApp

Brian Farnhill edited this page Dec 9, 2016 · 20 revisions

Parameters

Parameter Attribute DataType Description Allowed Values
Name Key string The name of the search service application
ProxyName Write string The proxy name, if not specified will be /Name of service app/ Proxy
ApplicationPool Required string The application pool that it should run in
SearchCenterUrl Write string The URL of the enterprise search center site collection
DatabaseName Write string The name of the database (noting that some search databases will use this as a prefix)
DatabaseServer Write string The server that host the databases for this service application
DefaultContentAccessAccount Write String The default content access account for this search service app
CloudIndex Write boolean Should this search service application be a cloud based service app
Ensure Write string Present if the service app should exist, absent if it should not Present, Absent
InstallAccount Write String POWERSHELL 4 ONLY: The account to run this resource as, use PsDscRunAsCredential if using PowerShell 5

Description

This resource is responsible for provisioning the search service application. The current version lets you specify the database name and server, as well as the application pool. If the application pool is changed the DSC resource will set it back as per what is set in the resource. The database name parameter is used as the prefix for all search databases (so you will end up with one for the admin database which matches the name, and then "_analyticsreportingstore", "_crawlstore" and "_linkstore" databases as well).

Examples

Example 1

This example creates a new search service app in the local farm

Configuration Example 
{
    param(
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SetupAccount
    )
    Import-DscResource -ModuleName SharePointDsc

    node localhost {
        SPSearchServiceApp SearchServiceApp
        {  
            Name                  = "Search Service Application"
            DatabaseName          = "SP_Search"
            ApplicationPool       = "SharePoint Service Applications"
            PsDscRunAsCredential  = $SetupAccount
        }
    }
}

Example 2

This example removes a search service app in the local farm. The ApplicationPool parameter is still required but is not actually used, so its value does not matter.

Configuration Example 
{
    param(
        [Parameter(Mandatory = $true)]
        [PSCredential]
        $SetupAccount
    )
    Import-DscResource -ModuleName SharePointDsc

    node localhost {
        SPSearchServiceApp SearchServiceApp
        {  
            Name                  = "Search Service Application"
            Ensure                = "Absent"
            ApplicationPool       = "n/a"
            PsDscRunAsCredential  = $SetupAccount
        }
    }
}
Clone this wiki locally