Se tienen 2 servidores (servidor1, servidor2) en nuestra granja. El archivo WSP se implementa solo en 'Server2' y el estado se muestra como 'No implementado'.
El servicio de aplicación web de SharePoint, temporizador y el servicio de administración de SharePoint funciona bien.
La Administración Central se ejecuta en el 'Servidor1' donde nuestra solución no se implementa.
Los siguientes fueron los pasos ejecutados:
- Administrador central habilitado en ambos servidores.
- Servicio de temporizador y servicio de administración SP se reiniciaron.
- Se borró la memoria caché de SharePoint y se reiniciaron las máquinas.
Traté de usar "Install-SPSolution" con el parámetro '-local' en el servidor emitido (Server1). Esta solución de tiempo se implementó solo en Server1 y el estado se muestra como Implementado.
Cuando elimino el parámetro '-local' y hago "Install-SPSOlution", nuevamente se implementa en 'Server2'.
Finalmente, he solucionado el problema de implementación en mi entorno habilitando el estado del objeto SPTimerServiceInstace con el siguiente script:
SPTimerServiceInstance está en estado deshabilitado y está afectando todas las operaciones administrativas que dependen de los trabajos del temporizador para completarse (como la eliminación de la solución o el inicio del Servicio de sincronización del perfil de usuario).
$farm = Get-SPFarm
$disabledTimers = $farm.TimerService.Instances | where {$_.Status -ne "Online"}
if ($disabledTimers -ne $null)
{
foreach ($timer in $disabledTimers)
{
Write-Host "Timer service instance on server " $timer.Server.Name " is not Online. Current status:" $timer.Status
Write-Host "Attempting to set the status of the service instance to online"
$timer.Status = [Microsoft.SharePoint.Administration.SPObjectStatus]::Online
$timer.Update()
}
}
else
{
Write-Host "All Timer Service Instances in the farm are online! No problems found"
}
$disabledTimers = $farm.TimerService.Instances | where {$_.Status -ne "Online"}
if ($disabledTimers -ne $null)
{
foreach ($timer in $disabledTimers)
{
Write-Host "Timer service instance on server " $timer.Server.Name " is not Online. Current status:" $timer.Status
Write-Host "Attempting to set the status of the service instance to online"
$timer.Status = [Microsoft.SharePoint.Administration.SPObjectStatus]::Online
$timer.Update()
}
}
else
{
Write-Host "All Timer Service Instances in the farm are online! No problems found"
}
Comentarios