After hearing and reading a whole lot about the new MinRole in SharePoint 2016, I had to see what it’s all about by building my own VM.
For this post, I installed SQL Server 2014 and SharePoint 2016 Beta on the same VM server. I ran the SharePoint Configuration Wizard to get all services and Central Admin provisioned.
I selected the ‘Single-Server Farm’ in the Server Role wizard.
I checked ‘Servers in this farm’, so far so good.
I then tried to convert from ‘Single-Server Farm’ to ‘Application’ using Central Administration. I got this lovely ‘Sorry, something went wrong’ message.
So, I searched the ULS and found these two entries.
12/29/2015 09:21:35.41 OWSTIMER.EXE (0x109C) 0x316C SharePoint Foundation Topology a72id Exception Failed converting server ‘VMSP2016T’ from ‘Application’ to ‘Application’ role. System.InvalidOperationException: Invalid search service unprovisioning: application ‘Search Service Application’ still has a ready component ‘in search service instance’ on server ‘VMSP2016T’. at Microsoft.Office.Server.Search.Administration.SearchServiceInstance.ThrowIfComponentsRunning() at Microsoft.Office.Server.Search.Administration.SearchServiceInstance.Unprovision() at Microsoft.SharePoint.Administration.SPServerRoleManager.<>c__DisplayClass4.<UnprovisionServiceInstance>b__3() at Microsoft.SharePoint.Administration.SPServerRoleManager.ConfigureServiceInstanceInternal(SPServiceInstance serviceInstance, Action configureAction) at Microsoft.SharePoint.Administration.SPServerRoleManager.C… 9b04509d-281a-f0ea-9175-4a569f8e73cf
12/29/2015 09:21:35.41* OWSTIMER.EXE (0x109C) 0x316C SharePoint Foundation Topology a72id Exception …onfigureServiceInstance(SPServiceInstance serviceInstance) at Microsoft.SharePoint.Administration.SPServerRoleManager.ConfigureServer(Boolean throwOnFailure) at Microsoft.SharePoint.Administration.SPServerRoleConversionJobDefinition.Execute(Guid targetInstanceId) StackTrace: at onetnative.dll: (sig=55ee5f49-67a4-4a49-9862-19eec61e14d2|2|onetnative.pdb, offset=3712D) at onetnative.dll: (offset=1E35E) 9b04509d-281a-f0ea-9175-4a569f8e73cf
I tried unprovisioning, re-provisioning Search and all of its components, and tried and tried without success to convert to the ‘Application’ role.
I ended up disconnecting and reconnecting the server from its configuration database via PowerShell. Credit for this solution goes to Nik Charlebois.
Connect-SPConfigurationDatabase -DatabaseServer SharePointDB -DatabaseName SharePoint_Config -Passphrase (ConvertTo-SecureString “P@ssw0rd1” -AsPlainText -Force) -LocalServerRole “Application”
As you can see from the Get-SPServer command that the server is now running as an ‘Application’ role.
Just to re-validate, I launched Central Admin and voila! My server is now configured as ‘Application’.