Storefront 3.12 - Cannot Join Server Group - Joining the Server Group failed. Joiner cleanup was unsuccessful. Please refer to the Windows Event Log for Details

Storefront 3.12 - Cannot Join Server Group - Joining the Server Group failed. Joiner cleanup was unsuccessful. Please refer to the Windows Event Log for Details

book

Article ID: CTX275280

calendar_today

Updated On:

Description

When attempting to add a Storefront Server to a Server group the following error is observed on Joiner Server:
Error: Cannot Join Server Group - Joining the Server Group failed. Joiner cleanup was unsuccessful. Please refer to the Windows Event Log for Details. See image below



Event logs:

Event 1 - Task Category 2850

Log Name:      Citrix Delivery Services
Source:        Citrix Cluster Join Service
Date:          
Event ID:      1
Task Category: (2850)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      ServerName - Joiner Server
Description:

An error occurred running the command: 'Remove-DSClusterEnvironment' 
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\ClusterConfigurationModule.psm1:1357 char:5
+     Set-DSAdminConsoleOperationMode -Mode "FirstUse"
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces.Exceptions.PowerShellExecutionException, Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces, Version=3.12.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856
An error occurred running the command: 'Remove-DSClusterEnvironment' 
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\ClusterConfigurationModule.psm1:1357 char:5
+     Set-DSAdminConsoleOperationMode -Mode "FirstUse"
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


System.Management.Automation.CommandNotFoundException, System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
System.Management.Automation.Interpreter.InterpretedFrameInfo: System.Management.Automation.Interpreter.InterpretedFrameInfo[]
   at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandTypes commandTypes, SearchResolutionOptions searchResolutionOptions, CommandOrigin commandOrigin, ExecutionContext context)
   at System.Management.Automation.CommandDiscovery.LookupCommandProcessor(String commandName, CommandOrigin commandOrigin, Nullable`1 useLocalScope)
   at System.Management.Automation.ExecutionContext.CreateCommand(String command, Boolean dotSource)
   at System.Management.Automation.PipelineOps.AddCommand(PipelineProcessor pipe, CommandParameterInternal[] commandElements, CommandBaseAst commandBaseAst, CommandRedirection[] redirections, ExecutionContext context)
   at System.Management.Automation.PipelineOps.InvokePipeline(Object input, Boolean ignoreInput, CommandParameterInternal[][] pipeElements, CommandBaseAst[] pipeElementAsts, CommandRedirection[][] commandRedirections, FunctionContext funcContext)
   at System.Management.Automation.Interpreter.ActionCallInstruction`6.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

Event 2 - task Category 2203
 
Log Name:      Citrix Delivery Services
Source:        Citrix Cluster Join Service
Date:          
Event ID:      2
Task Category: (2203)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      ServerName - Joiner Server
Description:

Exception during rollback of failed Server Group deployment.
Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces.Exceptions.PowerShellExecutionException, Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces, Version=3.12.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856
An error occurred running the command: 'Remove-DSClusterEnvironment' 
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\ClusterConfigurationModule.psm1:1357 char:5
+     Set-DSAdminConsoleOperationMode -Mode "FirstUse"
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   at Citrix.DeliveryServices.PowerShell.Command.Runner.PowerShellCommandRunner.RunCommand(IPowerShellCommand command)
   at Citrix.DeliveryServices.ClusterService.PowerShell.DeploymentSteps.DeploymentBase.Deploy()

System.Management.Automation.CommandNotFoundException, System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
The term 'Set-DSAdminConsoleOperationMode' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
System.Management.Automation.Interpreter.InterpretedFrameInfo: System.Management.Automation.Interpreter.InterpretedFrameInfo[]
   at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandTypes commandTypes, SearchResolutionOptions searchResolutionOptions, CommandOrigin commandOrigin, ExecutionContext context)
   at System.Management.Automation.CommandDiscovery.LookupCommandProcessor(String commandName, CommandOrigin commandOrigin, Nullable`1 useLocalScope)
   at System.Management.Automation.ExecutionContext.CreateCommand(String command, Boolean dotSource)
   at System.Management.Automation.PipelineOps.AddCommand(PipelineProcessor pipe, CommandParameterInternal[] commandElements, CommandBaseAst commandBaseAst, CommandRedirection[] redirections, ExecutionContext context)
   at System.Management.Automation.PipelineOps.InvokePipeline(Object input, Boolean ignoreInput, CommandParameterInternal[][] pipeElements, CommandBaseAst[] pipeElementAsts, CommandRedirection[][] commandRedirections, FunctionContext funcContext)
   at System.Management.Automation.Interpreter.ActionCallInstruction`6.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

Event 3 - Task Category 2201
 
Log Name:      Citrix Delivery Services
Source:        Citrix Cluster Join Service
Date:          
Event ID:      3
Task Category: (2201)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      ServerName - Joiner Server
Description:

Exception configuring the Joiner for the Server Group.
Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces.Exceptions.PowerShellExecutionException, Citrix.DeliveryServices.PowerShell.Command.RunnerInterfaces, Version=3.12.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856
An error occurred running the command: 'Set-DSJoinClusterEnvironment' 
Exception of type 'Citrix.DeliveryServices.Framework.Deployment.Utilities.Exceptions.ServiceAlreadyInstalledException' was thrown.
At C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\ClusterConfigurationModule.psm1:1664 char:15
+         $instance = Add-DSDomainService -Folder $domainFolder -StartService -TenantId  ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   at Citrix.DeliveryServices.PowerShell.Command.Runner.PowerShellCommandRunner.RunCommand(IPowerShellCommand command)
   at Citrix.DeliveryServices.ClusterService.PowerShell.DeploymentSteps.JoinClusterDeployment.SetUp()
   at Citrix.DeliveryServices.ClusterService.PowerShell.DeploymentSteps.DeploymentBase.Deploy()
   at Citrix.DeliveryServices.ClusterService.Service.ServiceController.ConfigureJoiner(IClusterJoin joinProxyWrapper, ClusterJoinRequest joinRequest, ClusterAuthorizationResponse authResponse, ClusterDetailsResponse detailsResponse)

System.Management.Automation.ActionPreferenceStopException, System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Exception of type 'Citrix.DeliveryServices.Framework.Deployment.Utilities.Exceptions.ServiceAlreadyInstalledException' was thrown.
System.Management.Automation.Interpreter.InterpretedFrameInfo: System.Management.Automation.Interpreter.InterpretedFrameInfo[]
   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input, Hashtable errorResults, Boolean enumerate)
   at System.Management.Automation.PipelineOps.InvokePipeline(Object input, Boolean ignoreInput, CommandParameterInternal[][] pipeElements, CommandBaseAst[] pipeElementAsts, CommandRedirection[][] commandRedirections, FunctionContext funcContext)
   at System.Management.Automation.Interpreter.ActionCallInstruction`6.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)

Analysis:
Event 3 shows the following exception:
This exception is thrown because joining process a problem when performing Steps related to the Citrix Default Domain Service.When the process was attempting to add the Service itself
 
Exception of type 'Citrix.DeliveryServices.Framework.Deployment.Utilities.Exceptions.ServiceAlreadyInstalledException' was thrown.
At C:\Program Files\Citrix\Receiver StoreFront\Management\Cmdlets\ClusterConfigurationModule.psm1:1664 char:15
+         $instance = Add-DSDomainService -Folder $domainFolder -StartService -TenantId  ...

looking further in that same event we can find reason why exception was thrown:
The exception was thrown due to joining process finding a Citrix Default Domain Service Present in Windows. "ServiceAlreadyInstalledException' was thrown."
In this scenario Storefront had been uninstalled, however; when accessing the Windows OS services we could see that Citrix Default Domain Services was present on Server in a STOPPED state.
In this particular it looked like the Citrix Default Domain Service was referencing an old Storefront version as seen below "Version=3.0.0.0"
System.Management.Automation.ActionPreferenceStopException, System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Exception of type 'Citrix.DeliveryServices.Framework.Deployment.Utilities.Exceptions.ServiceAlreadyInstalledException' was thrown.

 

Resolution

  • Check for the presence of any Storefront's Citrix services on the Server
  • At this point no Storefront Install should be present on the Server and Server must have been rebooted upon successful install
  • Once server is back online, check for any Storefront Services remaining on the Server
  • NONE should be encountered related to Storefront 
  • In the scenario discussed in this article the "Citrix Default Domain Services" service was present after uninstall
  • to remove this open Command Prompt as "An Administrator"
  • type "sc delete servicename" then press "ENTER"
  • ServiceName can be found when launching Windows Services and right clicking on the service in question. See example below, the service name has been highlighted
 
  • Once the command has been completed, the service is gone.
  • Now, go to the Storefront's Install Directory C:\Program Files\Citrix\Receiver Storefront
  • delete Receiver Storefront Folder
  • Proceed to install Storefront on Server
  • Once Storefront is installed, proceed to Join Server to Server Group

Problem Cause

In this scenario the "Citrix Default Domain Services" Service was still present on the server even after removal of Storefront had been completed. 
Removal of this service was needed.
 

Issue/Introduction

Storefront 3.12 - Cannot Join Server Group - Joining the Server Group failed. Joiner cleanup was unsuccessful. Please refer to the Windows Event Log for Details