Image de la bannière : Alfresco : Test d'upgrade avec une grosse volumétrie - 2

Alfresco : Test d'upgrade avec une grosse volumétrie - 2

post thumb
Alfresco
by Jérémie Lesage/ on 07 May 2014

Alfresco : Test d'upgrade avec une grosse volumétrie - 2

Deuxième article sur le sujet des tests d’upgrade Alfresco avec une très grosse volumétrie sur disque. Dans le précédent article nous avons vu comment - avec un simple montage NFS - il était possible de monter un serveur de test contenant toutes les données de production, sans dupliquer les ressources matérielles.

Solution 2 : créer un “Content Store” fantôme

Aujourd’hui nous verrons une solution pour construire un serveur de test déconnecté, contenant uniquement la base de données, donc sans les fichiers du Content Store. Pour cela nous allons générer un Content Store contenant uniquement des fantômes, c’est-à-dire des fichiers vides.

Prérequis

Pour monter notre plateforme, nous avons besoin d’un serveur de test avec Alfresco. Vous pouvez utiliser une machine virtuelle pré-configurée pour gagner du temps.

Nous avons également besoin d’un backup de la base de données de production. Que nous allons charger sur notre serveur de test :

mysql -u alfresco -p alfresco < backup-alfresco-2014-04-01.sql

Manipulation

Préparation du Content Store

Dans un premier temps, on extrait la liste des fichiers du Content Store en se basant sur la base SQL.

SELECT substring(content_url, 9) AS content_url
FROM alf_content_url
INTO OUTFILE '/tmp/list_file_contentstore.csv' FIELDS TERMINATED BY  ','
ENCLOSED BY '"' LINES TERMINATED BY '\n';

Puis, on génère des fichiers vides en se basant sur ce listing.

cd /srv/alf_data/contentstore
for line in $( cat /tmp/list_file_contentstore.csv );
do
    file=${line//\"/}
    sudo -u tomcat6 mkdir -p $(dirname $file)
    sudo -u tomcat6 touch $file
done;

Configuration d’Alfresco

Avant de démarrer Alfresco, je précise dans le fichier alfresco-global.properties que je souhaite effectuer un réindexation complète mais sans m’arrêter en cas d’erreur, en ajoutant les deux lignes suivantes :

system.bootstrap.config_check.strict=false
index.recovery.mode=FULL

L’avantage de cette solution est qu’elle nécessite uniquement un backup de la base de données pour monter un environnement de test fonctionnel. Cependant l’application Share ne fonctionnera pas, ainsi que les règles de gestion et autres contenus stockés dans le Dictionnaire de données. Dans le prochain article, je présenterai une solution alternative pour corriger ce problème.

Alfresco : Test d’upgrade avec une grosse volumétrie | Partie 1/3
Alfresco : Test d’upgrade avec une grosse volumétrie | Partie 3/3