Cómo calcular el espacio en disco requerido para una instalación de Alfresco

/ / Blog, Document Management
Primera beta de Alfresco SDK 3 disponible
Nuestro camino desde Alfresco CE 5.0.c hasta Alfresco CE 5.1.g

Ocurre que el único dato inicial con el que cuentan las organizaciones antes de implantar Alfresco es el volumen que ocupan sus documentos. Por este motivo es importante contar con un mecanismo de previsión que nos permita dimensionar adecuadamente nuestros servidores.

Habitualmente trabajo con la siguiente estimación, propuesta en mi charla What to think about when you’re planning to install Alfresco:

  • 2x contenidos
  • 0,2x índices de búsqueda

Esto es, el espacio inicial de almacenamiento debería ser aproximadamente 2,2 veces el espacio de los documentos que van a ser migrados a Alfresco.

Sin embargo, nunca he comprobado estas cifras con instalaciones reales, así que a continuación voy a examinar uno de nuestros servidores de prueba (configurado con el instalador por defecto) para verificar si la recomendación es acertada.

Datos iniciales

  • 29 GB
  • 25.377 documents
  • Sin tipos ni aspectos personalizados (lo que disminuye la previsión para el tamaño de índices y base de datos)

Directorio de software

$ sudo du /opt/alfresco --max-depth=1 -h
3.4G    ./tomcat
205M    ./java
103M    ./common
603M    ./libreoffice
43G     ./alf_data
47G     .
  • Alrededor de 1 GB está dedicado a software base (Java, GhostScript, ImageMagick and LibreOffice) aunque es un espacio que no va a crecer con el uso de Alfresco
  • El directorio Tomcat ocupa 3,4 GB
  • El directorio de datos, que incluye ficheros, base de datos e índices SOLR, ocupa 43 GB

Directorio de Tomcat

$ sudo du /opt/alfresco/tomcat --max-depth=1 -h
1.1G    ./logs
1.3G    ./webapps
1006M   ./temp
3.4G    .
  • La carpeta de logs contiene más de 1 GB. Si no se aplica ninguna medida adicional, los contenidos de este directorio crecerán sin límite
  • La carpeta webapps ocupa también más de 1 GB, ya que va creciendo confirme se despliegan módulos AMP con los backups de alfresco.war (143 MB) y share.war (60 MB)
  • La carpeta temp también ocupa 1 GB, pero Alfresco se ocupa de controlar sus contenidos mediante un proceso nocturno que es ejecutado por defecto a las 4 de la mañana

El siguiente script, que utiliza la herramienta logrotate, puede ayudarnos a controlar el tamaño de la carpeta de logs, limitando el histórico a únicamente los últimos 7 días.

$ cat /etc/logrotate.d/alfresco
/opt/alfresco/tomcat/log/catalina.out {
  copytruncate
  daily
  rotate 7
  compress
  missingok
  dateext
}

Otros tipos de fichero de log pueden ser incluidos en esta política de rotación.

Por otra parte, los contenidos de la carpeta temp pueden ser eliminados manualmente cuando Alfresco está parado y los backups de webapps (alfresco.war-111111111111.bak y share.war-111111111111.bak) pueden ser movidos fuera del directorio de Tomcat.

Directorio de datos

$ sudo du /opt/alf_data --max-depth=1 -h
2.5G    ./solr4Backup
482M    ./postgresql
32G     ./contentstore
1.3G    ./solr4
6.3G    ./contentstore.deleted
  • Alfresco realiza un backup de SOLR que ocupa 2,5 GB. Esta característica puede ser deshabilitada o bien puede moverse el directorio a un sistema de ficheros alternativo.
  • Los datos de PostgreSQL ocupan 0,5 GB. Cuantos más metadatos son almacenados por cada documento, más sube esta cifra
  • El content store ocupa 32 GB, lo que comparado con los 29 GB originales indica que no se realizan muchas versiones por documento. Cuantas más versiones por documento existan, mayor será esta cifra
  • Los índices de SOLR4 ocupan 1,3 GB, que es algo menor de lo esperado (0,2 x 29 GB = 5,8 GB) aunque resulta lógico debido al bajo uso de metadatos en esta instalación
  • El content store deleted ocupa 6,3 GB y depende directamente de cuantas operaciones de eliminación son realizadas en el sistema

Comparando la teoría y la práctica

De acuerdo a la regla inicial, los volúmenes esperados serían de:

  • 2 x 29 GB = 58 GB para contenidos
  • 0,2 x 29 GB = 5,8 GB para índices SOLR

En nuestro sistema de prueba, hemos encontrado lo siguiente:

  • 32 GB + 6,3 GB = 38,3 GB para contenidos
  • 1,3 GB para índices SOLR

Como hemos comentado antes, los valores reales pueden diferir en función del uso de metadatos y de las políticas de versionado. Sin embargo, parece que nuestra fórmula inicial funciona adecuadamente para esta instalación.

Aunque el tamaño de datos para la base de datos varía en función del fabricante del software, en nuestro sistema con PostgreSQL hemos observado:

  • 0,5 GB para datos de la base de datos

Parece que podría ajustarse a una nueva regla de tipo 0,1x.

Asimismo, hay otros recursos que deben ser provistos aunque no vayan a crecer en el futuro:

  • 1 GB para software base
  • 3,5 GB para Tomcat

Conclusión

Una vez analizado un sistema real, podemos ajustar nuestra fórmula inicial con datos adicionales:

  • 2x contenido
  • 0,2x índices de búsqueda
  • 0,1x base de datos (PostgreSQL)
  • 5 GB software base

Y recuerda proveer también espacio remoto para las operaciones de backup.

Unidad de negocio, keensoft

1 Comment to “ Cómo calcular el espacio en disco requerido para una instalación de Alfresco”

  1. Camilo Pedraza dice:

    muy buen post y muy util