Error y solución al restaurar una colección de sitios en Sharepoint Online

Sharepoint_Online_logoCon el permiso de los gurús de Sharepoint, voy a documentar una incidencia y su resolución que me ha surgido hoy, más que nada para ahorrar tiempo de “upload” a la nube en casos de error y reintento.

Para migrar un portal Sharepoint onpremise a Sharepoint Online, en el mercado hay un amplio abanico de soluciones para acometer esta tarea, muy completas, pero nada baratas.

Si lo que estás intentando subir es un sitio basado en WSS 2.0 o WSS 3.0, se puede usar Sharepoint Designer 2007 (para la versión actual de BPOS, con la de Office 365 hay que usar Sharepoint Designer 2010) para realizar el proceso de restauración.

NOTA: Para el que aún no lo sepa, SharePoint Designer 2007 es gratuito. Se puede descargar desde el enlace siguiente:

Los pasos para realizar el proceso de importación en Sharepoint Online están muy bien explicados en este post de Loryan Stant por lo que no voy a repetirme aquí. Pero sí voy a apuntar algunas consideraciones, ya que si no te puedes encontrar que después de 7 horas de upload, al restaurar los archivos te encuentras con el mensaje de error Error ocurred while importing the web XXX. The file cannot be imported because its parent web XXX does not exist

ErrorSP

Algunos bri-consejos

  1. Asegúrate de que la exportación del sitio la realizas con un usuario que sea “Administrador de la colección de sitios”, para que pueda exportar todo el contenido
  2. Una vez realizada la exportación, revisa el archivo de log generado. Lo primero, ve al final y comprueba que las dos últimas líneas rezan algo como “Completado con 0 advertencias, Completada con 0 errores”. Si no es así, busca por la palabra “Error” en el archivo y te dará la pista que te ahorrará realizar un upload de varias horas
    Bueno
    En mi caso, la exportación la realicé con un usuario que no era administrador de la colección de sitios y tenía estos mensajes:
    Malo
  3. Asegúrate de que en Sharepoint Online, la colección de sitios la creas con la plantilla “Sitio en blanco”. La predeterminada es “Sitio de grupo” y la restauración no es posible si no es sobre una en blanco.
    Blanco
  4. Asegúrate que el proceso de importación, al iniciarlo desde Sharepoint Designer lo haces con un usuario “Administrador de la colección de sitios” de Sharepoint Online

Espero que estos cuatro consejos os evite unas cuantas horas de upload.

Un saludo.

Redgate’s SQL Azure Backup Beta

Repasando tareas pendientes, acabo de meterle mano al correo que me llegó anunciando esta interesante herramienta de la mano de RedGate, ahora mismo en Beta.

Se trata de una utilidad para realizar copias de seguridad de nuestras bases de datos de SQL Azure a un SQL Server local, cosa harto útil en gran variedad de escenarios que requieran sincronizar nuestro esquema y datos a local mediante un interfaz realmente simple.

Para comenzar, os podéis descargar la beta gratuitamente desde este enlace (la beta caducará el 1 de septiembre de 2011):

Descargar RedGate’s Azure Backup Beta

Realizando un Backup de la nube a mi servidor local

Una vez descargada la herramienta, simplemente iniciamos el asistente en el que se solicitan los datos del servidor en la nube y los datos de acceso a nuestro servidor local:

SQL Azure Backup

Lo primero que podemos observar, es que la base de datos local será una base de datos nueva que creará el asistente. No se han complicado mucho la vida con esto, pero de eso se trata. Si quieres algo muchíiiisimo más potente, échale un vistazo a sus hermanos SQL Compare 9 y SQL Data Compare 9.

Al pulsar siguiente, estamos justo en el paso previo de comenzar el backup. Se ve que han metido en plantilla a algún diseñador de UI o por lo menos lo parece Sonrisa.

SQL Azure Backup2

Mientras se ejecuta el proceso de backup y restore, podemos gozar de publicidad gratuita en la parte inferior de las barras de progreso –nota para el futuro, poner publicidad en todos las progressbars de mis aplicaciones, nunca se sabe hasta donde puede llegar un mensaje subliminal.

SQL Azure Backup3

Una vez que el asistente realiza su trabajo (aquí obviamente dependerá del tamaño del esquema y del volumen de datos sobre la línea de datos que utilicemos) ya podemos acceder a nuestra base de datos local.

SQL Azure Backup 5

Conclusión

He comprobado que sobre una base de datos DotNetNuke con todos los módulos instalados (190 tablas, 1114 procedimientos almacenados, etc.) no ha dado ni un sólo problema y la base de datos es 100% funcional. Parece ser una solución ideal si queremos trabajar en local sobre la última copia de los datos que tenemos publicados en Azure…con sólo 2 clicks!!!!!

Un saludo.

DotNetNuke Azure Accelerator con soporte Multi-instance

Esta semana voy a estar trabajando en la documentación del nuevo paquete de instalación del DNN Azure Accelerator que está recién salido del horno. Hace un ratillo eliminé el despliegue que había hecho, sin darme cuenta que el anuncio de la nueva solución estaba en el mismo foro del despliegue (en http://dnnaccelerator.cloudapp.net).

Voy a poner el contenido del post aquí que ya actualizaré cuando tenga la documentación completa, para que las instancias desplegadas no consuman recursos de mi VISA.

Un saludo.

DNN Azure Accelerator with multi-instance support

This week I’ll prepare a new package with the DNN Azure Accelrator with new important updates. This new idea is inspired on the post of Dinesh Haridas using a SMB server and a SMB client.

Summary of changes:

  • Support for SDK 1.4 (April refresh)
  • Support for .NET Framework 4.0 (Razor will also be supported)
  • Remote Desktop to the instances
  • Possibility to use Azure Connect
  • Web.config modification supported (the files are in a shared read/write cloud drive)
  • Multiple portal alias are also supported
  • DNN configured as a WebFarm (see DotNetNuke white papers for more info)
  • DNN 5.6.2 preconfigured

The new accelerator is using a SMB Server worker role instance, that mounts a cloud drive and share it across the internal network. Then the webrole instances maps the network drive and use it for the creation of a new site that is created dynamically on the role Start() event.

I need to sleep something 🙂 Meanwhile, some captures. Below the menu, you can see which computer is actually serving you this page (there are 2 webroles instances).

Accelerator Roles

AcceleratorRoles

SMBServer worker role

SMBServer

DNN WebRoles

DNNAzureWebRole