Cómo migrar de Alfresco Community 5 a Alfresco Community 6

por / viernes, 18 mayo 2018 / Publicado enBlog
keensoft UST Global en el evento final de Technovation Challenge
Qué hacer con tus datos en la Era Post ECM

Alfresco ha estado liberando versiones EA (Early Access) de Alfresco 6 desde Noviembre de 2017. Sin embargo, parece que la primera Alfresco 6 GA (Generally Available) está ya muy cerca. De hecho será liberada, casi con total seguridad, antes de verano de 2018.

Alfresco 6 es un paso adelante hacia las Native Cloud Platforms, denominada “Digital Business Platform” por la compañía unos meses atrás. Por este motivo, el producto ha sido dividido en servicios más pequeños (aún no tienen el tamaño de microservicios) y por este motivo la nueva versión será liberada de modo casi exclusivo para su despliegue en un cluster Kubernetes. El framework ADF, diseñado para desarrollar aplicaciones low-code en Alfresco, ha ido incrementando su madurez y estabilidad durante este tiempo. A pesar de que ADF funciona sobre Alfresco 5.2, el framework proveerá mejor soporte y funcionalidades añadidas para Alfresco 6. Adicionalmente, el core de Alfresco ha sido actualizado a las últimas versiones de los diferentes frameworks Java sobre los que está construido, lo que incrementa su desempeño y las capacidades de integración con componentes externos.

UST Global ha colaborado en varios despliegues de Alfresco 5.X sobre Docker Compose en los últimos meses, lo que nos ha servido para verificar que el producto encaja perfectamente en este tipo de escenarios.

En este artículo se describe una breve guía de migración de Alfresco 5 a Alfresco 6. Bien es cierto que cada escenario requiere un análisis previo antes de proceder con la migración, pero los siguientes pasos os pueden ayudar a planificar el proceso.

Se espera que la propia compañía publique una guía para la migración de Arquitecturas Enterprise, por lo que solo nos estamos ocupando ahora de la versión Community.

Infraestructura

La mayoría de compañías que utilizan Alfresco Community no requieren un despliegue en K8s, por lo que para la mayoría lo recomendado es optar por utilizar Docker Compose o la instalación por componentes clásica.

La instalación de Alfresco 6 por componentes será similar al proceso para Alfresco 5, así que la documentación existente podrá seguir siendo aplicada sin mayores modificaciones.

Para instalar Alfresco 6 con Docker Compose, además de disponer de un servidor con el software de Docker funcionando, será requerido tener en cuenta los elementos que son descritos en los siguientes apartados.

Software base

Las aplicaciones web Alfresco y Share se construyen sobre imágenes Docker con Java y Tomcat. Alfresco proveerá una configuración básica para esta imagen (actualmente Apache Tomcat 8 and Oracle Java 8 running in CentOS 7) pero puede ser creada una imagen Docker alternativa que se ajuste mejor a los requisitos de la compañía o que se construya con un tamaño menor (actualmente esta imagen pesa más de 2 GB). Esto significa que si, por ejemplo, estás usando Ubuntu con Alfresco 5, puedes seguir usándolo con Alfresco 6 sin problemas.

Aplicaciones

El repositorio y la aplicación web Share serán provistas mediante imágenes Docker. La configuración y las personalizaciones de Alfresco 5 podrán ser aplicadas a Alfresco 6 creando un Dokerfile local que extienda de estas imágenes oficiales, de manera que para futuras actualizaciones quede claro cuál es la parte de producto y cuál es la parte de implantación.

Las aplicaciones web ADF, quién sabe si un día Alfresco reconocerá públicamente Alfresco Content App como un reemplazo de Share, serán también liberadas como imágenes Docker. Si ya estás desarrollando aplicaciones ADF sobre Alfresco 5, no se espera que deba realizarse ninguna acción para que funcionen con Alfresco 6.

Software de Terceros
LibreOffice, ImageMagick y Alfresco PDF Renderer serán liberados como parte de la imagen Docker de repositorio.

Parece que para clientes Enterprise, Alfresco está preparando imágenes Docker propias para cada uno de estos componentes:

Sin embargo esta característica no estará disponible para la versión Community.

En cualquier caso, si instalaste un servidor LibreOffice independiente con Alfresco 5, un sencillo Dockerfile personalizado puede proveer una configuración análoga para Alfresco 6 Community.

Base de datos

Alfresco provee por defecto PostgreSQL database, pero MySQLMariaDB pueden ser usadas modificando el Docker Compose base e incluyendo una referencia a sus imágenes oficiales. Asimismo, será necesario extender la imagen de repositorio para añadir el driver JDBC a la carpeta de librerías compartidas de Tomcat.

Servidor web

Alfresco no incluye ninguna configuración por defecto en su Docker Composition, ya que ellos están resolviendo este punto en la orquestación de Kubernetes. Sin embargo, tanto Apache HTTPd como NGINX cuenta con imágenes Docker oficiales que pueden ser añadidas al Docker Compose para proveer los servicios de Alfresco por protocolos (http/https) y puertos estándares (80/443).

Protocolos

A excepción de CIFS, todos los protocolos de Alfresco 5.2 siguen estando presentes en Alfresco 6.0. Windows ha deprecado SAMBAv1, por lo que se espera que este protocolo deje de funcionar tanto en Alfresco 5 como en Alfresco 6 en el futuro. Alfresco decidió no implementar SMBv2 o SMBv3 en Alfresco 6 para seguir dando este servicio a sus usuarios.

Subsistemas

Cada subsistema de Alfresco 5.2 funcionará en Alfresco 6.0. Sin embargo, en casos como Kerberos o Active Directory, será necesario contar con un servidor externo basado en Windows, ya que Docker tiene poco soporte para la construcción de imágenes de este tipo. Alfresco está desarrollando una integración con Keycloak para resolver estos escenarios pero todavía no está claro si esta funcionalidad estará también disponible para la versión Community.

Addons

La aplicación web Share fue discontinuada con Alfresco 5, así que todos los addons para Share que funcionaban sobre Alfresco 5 funcionarán sobre Alfresco 6, dado que el software es básicamente el mismo.

El repositorio de Alfresco no incluye nuevas funcionalidades reseñables, sin embargo se ha realizado una actualización masiva de las Bibliotecas Java sobre las que está construido. Debido a esto, probablemente todos los addons para Repositorio deban ser recompilados para Alfresco 6, ya que requerirán pequeñas adaptaciones para resolver las nuevas dependencias. Alfresco ha confirmado que no liberará una versión de Alfresco SDK compatible con Alfresco 6 en los próximos meses, lo que dificultará bastante esta adaptación.

Almacenamiento

El almacenamiento de ficheros, base de datos e índices de búsqueda de Alfresco 5 puede ser re-utilizado en Alfresco 6, mediante el soporte para volúmenes externos de los contenedores Docker. Si se usaba SOLR 4 con Alfresco 5, será requerida una re-indexación para utilizar el SOLR 6 de la nueva versión.

Activiti

Alfresco ha anunciado que Activiti Engine será eliminada del core de Alfresco durante el ciclo de vida de la versión 6, así que no deben diseñarse nuevos flujos de trabajo en Alfresco 6. Asimismo, si se utilizaba Alfresco 5 para diseñar flujos de trabajo, ha llegado el momento de pensar en cómo exportar esas definiciones y datos a otro software de BPM como APS o Activiti Community. Algunos elementos de los workflows diseñados en Alfresco 5 (modelo de contenido, formularios e integración con servicios de repositorio de Alfresco) deberán ser re-codificados en su adaptación al nuevo software.

¿Merece la pena actualizar?

Cada escenario requiere un estudio previo, pero las siguientes afirmaciones gruesas pueden ayudarte a decidir si en tu caso una actualización a Alfresco 6 merece le pena.

SEGURAMENTE SÍ

  • Estás usando Alfresco básicamente con un repositorio de documentos
  • Estás planeando mover tu infraestructura a Docker o ya la estás moviendo
  • Estás desarrollando o planeas desarrollar aplicaciones ADF

SEGURAMENTE NO

  • Estás usando Alfresco básicamente para colaborar mediante la aplicación web Share
  • Has diseñado decenas o cientos de flujos de datos con Activiti dentro de Alfresco
  • Estás corriendo Alfresco 5 con Docker Compose

Cuéntanos si estás planeando migrar a Alfresco 6, ¡te ayudaremos a que el proceso se más sencillo!

Responsable tecnológico para soluciones de gestión documental en keensoft. Especialista en Alfresco y en implantaciones de Administración Electrónica.

Etiquetado bajo:

One Response to “Cómo migrar de Alfresco Community 5 a Alfresco Community 6”

  1. Gerson Plannerer dice: Responder

    Muy buen artículo, útil y objetivo, agradecido por haber compartido.

Deja un comentario

SUBIR