Fase 1 pilootproject CollectiveAccess: de eerste bèta van CollectiveAccess op een cloud hosting is klaar

Eind 2008 kondigden we het Pilootproject CollectiveAccess & cloud hosting aan. Fase 1 van het project is al vergevorderd, in dit blogartikel geven we een stand van zaken over deze fase 1:

De eerste bètaversie is klaar, CollectiveAccess draait nu op een cloud hosting (Amazon EC2, EBS, S3). Met deze eerste fase willen we de drempel voor het opzetten en testen van CollectiveAccess verlagen en gebruik maken van de vele voordelen van Cloud Computing. Om dit te verduidelijken leg ik even uit hoe u CollectiveAccess traditioneel zou moeten opzetten (maar dit hebben we in Fase 1 dus reeds voor u gedaan).

CollectiveAccess maakt gebruik van een LAMP-installatie (webserver met Apache, Mysql, php), uitgebreid met extra modules voor het verwerken en tonen van video, foto's, mp3 en pdf. De meeste linux hostingpaketten (Windows of Mac-server is ook mogelijk maar linux lijkt me de beste keuze) hebben de LAMP-installatie standaard maar niet alle extra modules. Daarbij komt dat het opladen en converteren van video's erg belastend kan zijn voor een server. Vermoedelijk zal het hostingbedrijf u dan ook een VPS (Virtual Private Server) of dedicated server aanraden. U zal dus een inschatting moeten maken welk type server u nodig hebt, wat niet makkelijk is bij het begin van een project. In het geval van een VPS kan u klein starten en de VPS later uitbreiden met extra geheugen en CPU. Bij een dedicated server zal u vermoedelijk een iets te zware server kopen, huren of leasen omdat u denkt ooit deze capaciteit nodig te hebben. U betaalt uiteindelijk voor iets wat u eventueel later kan nodig hebben maar op het moment zelf niet gebruikt. Vergeet ook niet backups te nemen en de software te updaten (LAMP, extra modules en CollectiveAccess zelf).  In het geval van een aankoop of lease van een dedicated server hebt u ook een onderhoudcontract nodig voor wanneer er iets stuk zou gaan aan de hardware. Tot slot CollectiveAccess installeren en testen op de server: webserver configureren, extra modules installeren, testen, cronjob plaatsen...

Om de voordelen aan te tonen van cloud computing leg ik even uit hoe u in de toekomst kan gebruik maken van de CollectiveAccess image op de Amazon cloud. 

1) Registreer u voor Amazon EC2. Bij Amazon betaalt u enkel wat u gebruikt. Een server betaalt u per uur en volgens type server (small -> extra-large), het aantal data op de schijf, de datatrafiek en het aantal backup-data volgens volume. Wanneer u het project stopt en alles verwijdert, betaalt u niets meer, u bent dus niet gebonden aan langetermijncontracten. 

2) Start via de webinterface (Amazon console) of firefox plugin-in ElasticFox uw eigen CollectiveAccess server (bij amazon noemt dit 'instance'). De eerste keer zal u ook een EBS (Elastic Block Store) moeten aanmaken en deze koppelen aan de server. Een EBS is een soort van schijf waarop uw data zullen komen (database, foto's, video, mp3...). Wanneer de Amazon-server stuk zou gaan kan u onmiddellijk een nieuwe CollectiveAccess server starten en uw EBS hieraan koppelen. U verliest zo geen data. Het is zelf mogelijk om na het registeren van een collectie uw server te stoppen. U betaalt dan niet meer voor de server. Vanuit economisch of ecologisch oogpunt is dit alvast een groot pluspunt! Het is ook mogelijk om een zwaardere server (met meer geheugen en CPU) in te zetten voor het opladen van films en daarna terug een lichtere server te gebruiken voor het raadplegen van de collectie. Tot slot reserveert u een IP-adres en koppelt u dit aan uw server.

3) De basisconfiguratie van CollectiveAccess is reeds uitgevoerd, alle modules voor video, mp3 en foto's zijn reeds geïnstalleerd en gestest. U kan dus onmiddellijk starten met de configuratie van CollectiveAccess zelf. Het nemen van backups (snapshots) van de data-schijf (EBS) en het maken van een mysql-backup is standaard voorzien en moet u alleen nog eenvoudig activeren.

4) Wanneer er een upgrade is van de server software of de CollectiveAccess software zal u de huidige server kunnen afzetten en een nieuwe server met een recentere opstarten (eventueel met upgradescript voor aanpassing aan de database of mediadata). 

Samen met Seth Kaufman zijn we aan het bekijken hoe we de ondersteuning voor de Amazon cloud kunnen voorzien in de nieuwe versie van CollectiveAccess 0.6/1. Hoe beter beide (CollectiveAccess Amazon image & CollectiveAccess software) op elkaar afgestemd zijn, hoe eenvoudiger en kwalitatiever de installatie zal worden voor de eindgebruiker. Ik hou u via deze blog in de toekomst verder op de hoogte.

Hebt u vragen, opmerkingen, suggesties of wil u graag meewerken: bram.wiercx@faronet.be of +32 (0)2 213 10 67.

Bram Wiercx
open source
OpenCollection
CollectiveAccess
cloud computing