domingo, 18 de noviembre de 2012

Migrando y Reubicando Bases de Contenido desde SharePoint 2007 a 2010

Solo migrar el contenido de SharePoint de 2007 a 2010 puede ser un desafío, que depende de factores como volumen de contenido a migrar , a personalizaciones instaladas, número de servidores a migrar.   En este artículo voy a describir un método rápido de migración y luego de reubicación de contenido dejando a un lado la parte de personalizaciones y configuración de servicios.  Ya que en algunos casos existen instalaciones que no cuentan con personalizaciones instaladas y no usan más de una o dos cajas para instalar el SharePoint.

Escenario:

Un Servidor ejecutando SharePoint 2007 Enterprise sobre Windows Server 2003 R2 32 bits con SQL Server 2005 Standard con 4 GB de RAM 200 GB HD, Procesador de 2.5 GHZ.

Un Nuevo Servidor Windows 2008 R2 con SQL Server 2008 R2 standard, con SharePoint Server 2010 Enterprise con 12 GB de RAM con 300 GB HD, Procesador 3.0  GHZ Quad Core.

El servidor de 2007 ya esta listo con el SP3 Instalado.  Pasado el preupgradecheck, y ya ha sido depurado todos los errores reportados del preupgracheck.  Estamos listos para hacer un backup de dos bases de datos de contenido, de la base de datos de la colección de sitios principal y de la base de datos de contenido que nos interesa migrar, ejemplo bases de datos de documentación de gestión.   Necesitamos ambas ya que para poder migrar la segunda base de datos necesitamos primero migrar la colección primaria de la Web Application.  Supongamos que el portal de 2007 se accede a través de la url http://miportal2007 y la que nos interesa se accesa a través de la url http://miportal2007/sitios/Gestion.  Cada colección de sitios tiene su propia base de datos, por ejemplo WSS_Content_MiPortal2007 para http://miportal2007  y WSS_Content_Gestion para http://miportal2007/sitios/Gestion.

En el servidor 2010 tenemos instalado los bits de SharePoint Server 2010 Enterprise con SP1, configurada la granja de SharePoint e instaldo el Central Administration V 4.0.  Creado una Nueva Web Application en el puerto 4040 la migración preliminar ejemplo http://INFOWARE-WFE-01:4040.  Cuando creamos la Web Application nos crea una base de datos de contenido que no vamos a utilizar, por lo que se procede a desmontar.  Esto lo podemos hacer desde Central Administration, Application Management, Manage Content Database, Luego de seleccionar la Aplicación Web y la base de datos de Contenido, la opción Remove Database.

image

La base de datos de 2007 se deben de restaurar en el nuevo servidor en SQL Server 2008 R2, a través del management Studio si así lo prefiere.  No se tiene que preocupar por que el SQL 2008 R2 esta en 64 bits y SQL 2005 estaba en 32 bits (es una duda común), ya que solo esta pasando data.  No se tiene que preocupar inclusive si la base de datos esta en versión 2005 y no en 2008, solo restaurela.

Ahora vamos a montar la base de datos de contenido WSS_Content_MiPortal2007 en 2010 en la Aplicación Web http://INFOWARE-WFE-01:4040 para montar y migrar el contenido a 2010 ejeucte la siguiente línea de comando en “SharePoint 2010 Management Shell”:

mount-SPContentDatabase –Name WSS_Content_MiPortal2007 –WebApplication http://INFOWARE-WFE-01:4040 

* Esto reportará un porcentaje de avance y si finaliza con éxito llegará al 100% reportando algunos errores o advertencias o bien ninguno.  En el Central Administration en la sección Upgrade and Migration, Check upgrade status.

image

Luego vamos a migrar la base de datos que nos interesa WSS_Content_Gestion, si quisieramos advertir algún problema antes de realizar la migración podemos ejecutar la siguiente línea de comando en “SharePoint 2010 Management Shell”

test-SPContentDatabase –Name WSS_Content_gestion –WebApplication http://INFOWARE-WFE-01:4040 

y cuando estemos listos ejecutamos:

mount-SPContentDatabase –Name WSS_Content_gestion –WebApplication http://INFOWARE-WFE-01:4040 

Si fue éxito podemos realizar la actualización visual a través de la siguiente línea de comando:

$site = Get-SPSite(“http://INFOWARE-WFE-01:4040/sitios/Gestion“)

foreach ($web in $site.AllWebs) { $web.UIVersion = 4; $web.Update() }

Ahora vamos a migrar el contenido a otra Web Application es decir a otra dirección url.  Para ello vamos a realizar los siguientes pasos:

1) Registrar en el DNS el nombre gestion.midominio.com apuntando al nuevo servidor. 

2) Crear una nueva aplicación Web desde el Central Administration en el puerto 80 con el host header gestion.midominio.com.  Esto creará una base de datos de contenido que nombraremos SharePoint_Content_Gestion.

3) Ahora desde el 14 hive vamos a ejecutar la siguiente línea de comando para crear un backup de la colección de sitios:

stsadm –o backup –url http://INFOWARE-WFE-01:4040/sitios/Gestion –filename c:\gestion.bak

4) Y ahora vamos a ejecutar la restauración en la ubicación desea:

stsadm –o restore –url http://gestion.midominio.com –filename c:\gestion.bak

Y eso es todo!.  SharePoint provee de las herramientas necesarias para migrar el contenido de un lado a otro.  Esto incluye contenido, permisos, flujos de trabajo, historial de los mismos.

SharePoint4Fun!,

Juan Manuel Herrera Ocheita

sábado, 10 de noviembre de 2012

SharePoint demora entre 2 y 5 minutos pero no reporta consumo de procesador y memoria

Este problema se ha reportado en versiones 2007 y 2010 y sucede de repente.  Muchos clientes empiezan a preocuparse por el desempeño del portal, su intención es aplicar las mejores prácticas para el desempeño del portal y no me mal interprete eso esta bien, pero para nada resolverá el problema, es como un callejón sin salida, revisan y habilitan el cache, optimizan la base de datos, revisan espacio libre de los discos, revisan las personalizaciones instaladas buscando un culpable pero nada es efectivo porque el problema no es nada de lo mencionado con anterioridad.

Lo más desconsertante para el encargado de IT es que revisa el consumo del procesador y de la memoria RAM y al contrario esta debajo de lo normal el consumo.

En resumen si el problema sucede de repente y es exageradamente lento sobre pasando el minuto para cualquier página del portal y no reporta consumo en procesador y en memoria RAM, entonces la probabilidad es de 99.99% de que el problema sea que al compilar la página el IIS va a validar los certificados de ensamblados de SharePoint los cuales ya se vencieron por ello es de repente y muy probablemente el servidor no tiene acceso a internet, entonces no construye la página de SharePoint porque esta intentando conectarse al sitio de Microsoft para validar el ensamblado.

La buena noticia es que así como apareció el problema así desaparece.  Hay varios formas de resolverlo lo cual incluyó los enlaces más adelantero pero uno muy sencillo de hacerlo es editar el registro de Windows y ubicar la siguiente llave:

[HKEY_USERS\CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing]

[HKEY_USERS\.DEFAULT \Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing]

El valor de activación el cual encontrará en hexadecimal es:  23c00 y el valor para desactivar (quode es lo que tenemos que hacer) es: 23e00

Re-iniciar el servidor y todo regresa a como estaban acostumbrados antes del problema.

Espero les seriva.

Llave de registo primer enlace que encontré.

http://blog.muhimbi.com/2009/04/new-approach-to-solve-sharepoints.html

Vía Script Power Shell para versiones en Windows 2008 Server

http://joelblogs.co.uk/2011/09/20/certificate-revocation-list-check-and-sharepoint-2010-without-an-internet-connection/

LLave de registo, siito oficial de Microsoft

http://support.microsoft.com/kb/2715304

Vía Web.Config

http://blogs.technet.com/b/markrussinovich/archive/2009/05/26/3244913.aspx

Vía GOP (No muy recomendado)

http://blogs.technet.com/b/mkleef/archive/2009/06/18/agpm-3-0-takes-30-seconds-to-start-in-gpmc.aspx

SharePoint4Fun,

Juan Manuel Herrera Ocheita