domingo, 27 de octubre de 2013

Es fundamental para la planificación de la instalación de la granja de SharePoint para la búsqueda del contenido del portal antes de instalar SharePoint (2007,2010,2031)

Esto es difícil de encontrar dentro de la documentación debido al volumen del contenido y aspectos a tomar en cuenta pero es fundamental para un exitosa configuración del servicio de búsqueda.

Supongamos el siguiente escenario:

Instalamos SharePoint, creamos la granja y luego creamos la primera o principal aplicación Web normalmente con el nombre del servidor y no con el espacio de nombre definitivo. Eso será un problema más adelante, y le cuento porqué.  Cuando definimos las fuentes de contenido o content sources de SharePoint, lo debemos de hacer con el nombre de la aplicación Web predeterminado o default, es decir no el nombre del servidor, pero luego si agregamos un nuevo espacio de nombre que lo debemos de hacer extendiendo la aplicación Web. Cuando realizamos una consulta en una lista, o sitio no funcionará, sino solamente a nivel de todos los sitios.  Aunque asignemos un dirección URL en la opción Assign server results, no funcionará.  Si ya tenemos este escenario no todo esta perdido, podemos corregirlo de la siguiente forma:

1) Haga clic sobre Configuración

2) Luego sobre Configuración del Sitio

3) Configuración de la búsqueda

4) Reemplace el valor de /_layouts/OSSSearchResults.aspx. por SearchCenter/Pages/results.aspx

5) Reinicie el indice y vuelva a realizar la indagación o crawling y listo.

 

Ahora como debimos planearlo desde el principio.

Primordialmente debemos de planear que tipo de contenido vamos utilizar en el portal y organizarlo de tal forma que nos permita definir reglas que eviten el crecimiento desmedido de la indagación el espacio de nombre que utilizaremos para acceder el portal y que esta sea configurado como host header y como la zona predeterminada de la aplicación Web el cual será el mismo nombre para la indagación para evitar el problema mencionado arriba.

Las reglas de indagación son necesarias para incluir o excluir el contenido de las fuentes de contenido, pero estas reglas pueden afectar el tamaño de la base de datos.  (También el detener y reiniciar la indagación incrementa el volumen de las bases de datos, lo mejor siempre es reiniciar el índice, y realizar una indagación desde cero).

La siguiente regla es importante a considerar:

  • Crawl complex URLs (URLs that contain a question mark (?)).

Ya que si tenemos un url de un sitio público, esta intentará indagar todos las posibles opciones que tenga el sitio web.  Además también puede ser que estemos indagando un contenido de reportes que maneja por cada reporte una cantidad de posibles parámetros con lo que incrementaría el contenido de la base de datos.  Por ello es importante tomar en cuenta el contenido que estamos indagando y las reglas que especifiquemos.

Entonces el procedimiento para crear la aplicación Web de nuestro portal que evite el problema de arriba mencionado es como sigue:

1) Registrar en el servicio de DNS el espacio de nombre para el portal, por ejemplo portal.contoso.com

2) Probar en el servidor de SharePoint que este nombre se resuelva haciendo un ping a portal.contoso.com

3) Crear la aplicación Web sobre el puerto 80 y colocar como host header el nombre portal.contoso.com

4) Ir al Servicio de aplicaciones y seleccionar el servicio de búsqueda y configurar una regla de indagación o Crawl Rules, que incluya el nombre registrado en el host header.  http://portal.contoso.com/* y con la opción incluir con la única opción Crawl SharePoint content as HTTP pages habilitada, con ello será suficiente para incluir el contenido de las páginas y los documentos. 

5) Ejecutar la indagación del contenido y realizar las pruebas necesarias para validar que esta incluido.  En el caso de las listas hay que indicarle que debe de incluirse en la indagación para que lo haga, así que deberá tomar en cuenta eso.

Bueno eso es todo por ahora.  Espero que tenga éxito en la indagación del contenido de los sitios de SharePoint.

Search4Fun!,

Juan Manuel Herrera

 

Otras referencias útiles para este problema pueden consultarse en:

http://olenicksharepoint.wordpress.com/2012/03/01/the-problem-with-contextual-search-scopes/

http://sharepoint.stackexchange.com/questions/53288/how-to-remove-contextual-search-this-site-from-dropdown-box-of-target-result

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

Estrategia de migración de SharePoint 2010 a 2013 “On Prem” o local

La primera gran noticia sobre la migración de SharePoint 2010 a 2013 es que no hay otro método de migración “nativo” que el de adjuntar las bases de datos o “attach content database” así que no hay como confundirse ya que hay una sola opción para realizarlo.  También es importante mencionar que la migración nativa de Microsoft es la más veloz especialmente cuando hablamos de grandes volúmenes de contenido.  Ya que se migra las bases de datos contenido completas y no objeto por objeto como lo hace los productos de terceros.   Por ejemplo una base de datos de contenido de 1.3 GB que pequeña en realidad con el proceso nativo demora máximo una hora entre cada paso del proceso y la escritura manual de los comandos de PowerShell y unas dos horas más entre copia y respaldo de bases de datos.  Pero con una herramienta de terceros esto demora alrededor de 36 horas, podrá imaginarse una base de datos de 200 GB o 400 o de un 1tb cuanto demoraría este proceso con herramientas de terceros.

No estoy desaprobando estas herramientas yo mismo he adquirido una para otros procesos como migrar de una instalación local a la nube o migrar de 2007 a 2013 poco contenido esto es eficiente, pero para grandes volúmenes de contenido es impráctico. 

La segunda noticia sobre la migración es la conversión del método de autenticación de SharePoint obligatoria, ya que en SharePoint 2010 Claims Authentication era e opcional y en 2013 es obligatoria.  Pero ejecutar este proceso en la granja de producción puede ser algo arriesgado y no deseado.  Por lo que por ello debemos de plantear una estrategia.

La estrategia para el escenario en que ya esta funcionando el portal en SharePoint 2013 y todavía utilizan o consultan la versión 2010 es contar con un servidor de pruebas para realizar los cambios de método de autenticación es decir en SharePoint 2010 y luego migrar el contenido al servidor en Producción SharePoint 2013 a una aplicación Web creada solo para validar el éxito o fracaso de la migración para luego incorporar el contenido migrado a su ubicación definitiva dentro de la aplicación Web desea.

En este servidor de Pruebas tendremos que crear una aplicación Web para adjuntar la base de datos a migrar, hacerle el cambio del modo de autenticación y luego mover la base de datos al servidor de base de datos donde están depositadas las bases de datos de SharePoint 2013.  El procedimiento es el siguiente:

1) Realice una copia de respaldo de la base de datos de contenido a migrar.  (Ojo debe de ser la base de datos de contenido primaria, sino es así primero debe migrarse esta ya que no puede ser restaurada una base de datos de migración secundaria si no esta migrada la primaria).

1.1.) Cómo realizar una copia de respaldo en SQL Server. http://technet.microsoft.com/es-es/library/ms187510.aspx

2) Restaurar la base de datos de contenido primaria en el servidor de Pruebas. 

2.1) Cómo realizar una restauración de una copia de respaldo en SQL Server. http://technet.microsoft.com/es-es/library/ms177429(v=sql.105).aspx

3) Crear una aplicación Web en el servidor de SharePoint 2010.

3.1.) Cómo crear una aplicación Web en SharePoint 2010 de autenticación clásica. http://technet.microsoft.com/es-es/library/gg276321(v=office.14).aspx

4) Montar la base de datos de contenido en la aplicación Web del servidor de Pruebas.

4.1.) Ejecute la siguiente línea de comando en PowerShell para SharePoint.  mount-SPContentDatabase –Name WSS_Content_[el nombre de su base de datos] –WebApplication http://[nombre del servidor]:[Puerto]. Para más información:http://technet.microsoft.com/en-us/library/ff607581.aspx

5) Ejecutar el procedimiento para cambiar el modo de autenticación para la base de datos de contenido.

5.1.) Ver procedimiento completo en http://technet.microsoft.com/en-us/library/gg251985.aspx

6) Realizar la copia de respaldo de la base de datos con el nuevo modo de autenticación.

7) Restaurar la copia de respaldo en el servidor de SQL Server de la granja de SharePoint 2013.

8) Crear una aplicación Web en la granja de SharePoint 2013.

9) Desmontar la base de datos creada http://technet.microsoft.com/es-es/library/ff628582.aspx

10) Realizar la prueba de montaje de base de datos y migración antes de realizarla ejecutando la línea de comando: test-SPContentDatabase –Name WSS_content[nombre de la base de datos de contenido] –WebApplication http://[nombre del servidor]:[Puerto] .   Validar las dependencias e instalar las disponibles.

11) Realizar el montaje de la base de datos con la línea de comando: mount-SPContentDatabase –Name WSS_Content[Nombre de la base de datos de contenido] –WebApplication http://[nombre del servidor]:[puerto]

Nota: aunque le de el mensaje del modo de autenticación clásico la migración pasará por el procedimiento que se realizó con anterioridad.

12) Como paso final deberá realizar la migración de la interfaz gráfica a 2013 o conocida como la actualización de colección de sitios. http://technet.microsoft.com/en-us/library/jj219650

Listo con ello habrá realizado la migración del contenido de SharePoint 2010 a 2013.  Pero esto no es la migración completa, de hecho el proceso prevee la migración de los servicios primero y por ultimo la migración del contenido.  vea la siguiente imagen.

image

Bueno para el alcance de este artículo hemos visto suficiente.  Si quiere saber más sobre ello puede consultar:  http://technet.microsoft.com/en-us/sharepoint/fp142375.aspx

SharePoint4Fun!,

Juan Manuel Herrera Ocheita