15 49.0138 8.38624 1 0 4000 1 https://vladtalkstech.com 300 1
theme-sticky-logo-alt

Use the Cloud Search Service Application On-Premises

8 Comments

One of the new features included in SharePoint Server 2016, and also available with SharePoint 2013 as long as you have the required PU, is the Cloud Hybrid Search. The Cloud Hybrid Search has many advantages, especially for end users and if you don’t know what it’s about, check out my overview I did on CMSWire.

The Instructions on how to setup the Cloud Hybrid Search, enabled by the Cloud Search Service Applications do show you how to configure everything so you can search both On-Premises content as well as SharePoint Online content from the SharePoint Online Admin Center. What they don’t include is how to enable your On-Premises Search Center to also see those results. Since the index is fully in the cloud, as soon as you enable the Cloud Search Service Application, your On-Premises search boxes and Search Center will start returning absolutely nothing.

Cloud Search Service Application On-Premises

That is because, the default Result Source of your Search Service Application is looking for items in the On-Premises Search Index, which is empty since everything is shipped to Office 365. What we will need to do in order to get this fixed, is configure a result source that uses Hybrid Federated Outbound Search to Office 365, and get the results from that Search Index. Luckily, if you didn’t have Server-to-Server trust already setup before configuring the Cloud Hybrid Search, the On-Boarding process has already configured that for you, so you don’t have anything else to do except the steps in this blog. So navigate your Central Administration, and then to the administration page of your Cloud Search Service Application.

Cloud Search Service Application On-Premises

From there, go to Result Sources, and create a new Result Source. Enter a good name and description, so everyone else in your organization knows what this Result Source does, and in the Protocol, select “Remote SharePoint”. In the Remote Service URL, enter your main SharePoint Online site collection which is always https://companyname.sharepoint.com. You can easily find this from your SharePoint Online Administration Center.

Cloud Search Service Application On-Premises

In the Type, select SharePoint Search Results, and in the Query Transform, you can customize the Query according to your business needs. In the Credentials Information section, select “Default Authentication”

Cloud Search Service Application On-Premises

Click Save, and return to the Result Sources page. From the Result Sources Page, select the dropdown near the Result Source you just created and then select “Set as Default”

Cloud Search Service Application On-Premises

Simply go do a search from your Document Library Search Boxes or from the Search Center, and you will start seeing Search Results again!

Cloud Search Service Application On-Premises

Cloud Search Service Application On-Premises

If you want to learn more about SharePoint Hybrid and the Cloud Hybrid Search, check out my Pluralsight course on Implementing a Hybrid SharePoint 2013/2016 Infrastructure by clicking the small banner below!

Previous Post
Review of Collabion: Awesome Charts and Dashboard without a single line of code
Next Post
SharePoint 2016 Beta Exam now available for free

8 Comments

  • July 25, 2016 at 5:54 am
    Sarath

    Hi Vlad,

    In this case, as you said the index is in O365 and lets suppose if some users don’t have license assigned to them in Office 365. Whether they will be able to receive the search results from online index?

    Reply
    • July 28, 2016 at 11:27 pm

      If they don’t have an Office 365 license, they will not be able to do any searches, since they won’t be able to authenticate to O365 to query the index.

      Reply
  • February 5, 2017 at 1:02 pm
    Raj

    Hi Vlad,

    I’ve installed SP 2016 and the June 2016 CU, but I don’t see the Cloud search service application. Is it part of any different installation or CU?

    Thanks

    Reply
  • April 7, 2017 at 11:15 am
    Andy

    Hi Vlad,
    I’ve been following your Hybrid course in Pluralsight and have found it to be extremely useful. The one area where I’ve not had any success has been in displaying cloud results within the on-premises search centre. I have added the additional result source within the CSSA and have checked connectivity with the “Test Source” option from the context menu and all is good and have set it to default. I also get the combined result set in my search centre in the SharePoint online. The only thing I have noticed is that the Cloud Search Service Application proxy is not a member of the default group with the service application associations, is this expected? Any thoughts or suggestions as to where I’ve gone wrong be gratefully received.

    Great job on the course!

    Thanks

    Reply
    • June 28, 2017 at 9:54 am

      Hello Andy, you need to put it part of the default, or if not, make sure that Web APplications use it in “Service Connections” if you don’t want to use it in all of them!

      Reply
  • May 10, 2017 at 10:19 am
    Cathi

    I’ve tried this and I’m getting a RemoteAPI permission error. I’ve deleted and recreated it a few times with the same error:

    0¾Microsoft.SharePoint.Client.ServerException: Query execution is only allowed with IgnoreSafeQueryPropertiesTemplateUrl=true when the user has the UseRemoteAPIs permission. at Microsoft.SharePoint.Client.ClientRequest.ProcessResponseStream(Stream responseStream) at Microsoft.SharePoint.Client.ClientRequest.ProcessResponse() at Microsoft.Office.Server.Search.RemoteSharepoint.RemoteSharepointEvaluator.RemoteSharepointProducer.RetrieveDataFromRemoteServer(Object unused) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at Microsoft.Office.Server.Search.RemoteSharepoint.RemoteSharepointEvaluator.RemoteSharepointProducer.ProcessRecordCore(IRecord record)

    Any thoughts?

    Reply
  • November 28, 2019 at 5:30 am
    dinotube

    Prior to Ignite, Microsoft referred to this thing as a Hybrid Search Crawl Appliance , so I was slightly surprised to learn that this new capability will be bundled in the Search Service Application. This means that you will still require an on-premises SharePoint Server 2013 or 2016 farm configured to crawl and parse on-premises content, and support hybrid authentication flows. The footprint of a farm designed to host a Cloud Search Service Application is likely to be a few shoe sizes smaller than a farm that might support today s hybrid search scenarios, as fewer search components are required. To be more specific, the only on-premises search component strictly required by the Cloud Search Service Application is the crawler, and you have the option of leveraging a query processing component if queries must flow outbound from an on-premises farm to SPO. Note: all Search Service Application components (including the admin, analytics processing, content processing, and index components) were present within the on-premises SharePoint 2016 search topology during the Ignite demo. However, I understand that only the crawl and query processing components are actually used when a Search Service Application is “cloud enabled”, meaning that only those components would require performance and capacity planning in this context.

    Reply

Leave a Reply