Vous êtes sur la page 1sur 36

Ijlal EL HAZITI

Rapport de stage : SAKAI

Universit Ibn-Tofail

CMCF-TICE
Rabat

Facult des Sciences de Kenitra

Sciences Mathmatiques et Informatiques

Rapport de stage

Installation de SAKAI et intgration


du BigBlueButton

Ralis par :

Encadr par :

Ijlal EL HAZITI

Mr.Aziz EL HAJIR

Ijlal EL HAZITI

Rapport de stage : SAKAI

Sommaire
Page de garde
Sommaire
Rmerciemnets
Introduction
Prsentation du CMCF-TICE Rabat
Une plateforme de formaation distance
Formation distance: points phare
Centre du dispositif : plateforme de formation
Auteurs du dispositif
Contenu
Mthodes & objets pdagogiques
Mise en place de la plateforme

Choix de la plateforme

Mthodologie de selection
Moodle
Sakai
Spiral Connect

Dcision finale
Architechture de la plateforme choisie
Base de donnes supportes
Valeur ajoute Sakai

Etapes de la mise en place de la plateforme


Fiche technique d'installation
Caractristiques techniques de la machine-serveur

Ijlal EL HAZITI

Rapport de stage : SAKAI

Etapes d'installaion
1. Installer Java 1.6
2. Installer MySQL 5.1
3. Installer Maven 2.2.1
4. Installer Subversion 1.6.11
5. Installer Tomcat 7.0.29
6. Installer Mysql Connector/Java
7. Checkout de Sakai avec Subversion
8. Modifier le fichier sakai.properties
9. Crer le fichier setting.xml requis par Maven
10. Deployer Sakai avec Maven
11. Integrer BigBlueButton 0.8
12. Arborescence
Les diffrentes composantes requises pour l'installaion de SAKAI
1. Java SDK
2. MySQL
3. Maven
4. Subversion
5. Tomcat
Synthse de ralisation : chronologie & timing
Schma gnral rcapitulatif
Bugs & solutions
Bibliographie

Ijlal EL HAZITI

Rapport de stage : SAKAI

Introduction :

Bien qu'autoformation ne soit pas synonyme de formation distance, cette dernire emprunte la
premire son aspect d'autonomie permettant l'apprenant d'tre indpendant dans ses tudes, bien que
supervis, sans toutefois s'isoler, bnficiant la fois d'un espace de travail personnel virtuel et d'une
forte interaction avec les autres internautes-tudiants. Sans oublier le rapprochement de distances et le
gain considrable de temps : toutes les ressources sont rassembles dans une seule Base de Donnes.
Les services du CMCF-TICE Rabat sont destins aux enseignants marocains ; l'emplois du temps
de ces derniers tant rigidement rgi par le calendrier scolaire en plus de leurs engagements
personnels, la mise en place d'une plateforme de formation distance au sein du centre est devenu
incontournable.
De part sa natre, le CMCF-TICE Rabat se veut un tablissement phare par a qualit de ses
formations aussi bien que de son personnel, mais aussi, par le choix de sa gamme logicielle ; c'es de
manire spontanne qu'il opta pour SAKAI, plateforme jeune, prometteuse et encore non-implmente au
Maroc : 1 seul site pilote l'IIHEM, d'o, SAKAI-CMCF sera le 1er site production de SAKAI au

royaume.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Remerciments

Je tiens remercier Mr EL HAJIR Aziz, mon encadrant-tuteur au sein du Centre Maroco-Coren


de Formation en TICE Rabat pour m'avoir accorde l'opportunit de travailler sur un projet aussi
ambicieux qu'est SAKAI, ainsi qu' son acceuil, sa confiance et ses conseils, sans oublier sa participation
dynamique au cheminement du stage. Aussi je tiens remercier l'ensemble du personnel du CMCFTICE pour leur acceuil sympathique et leur coopration professionnelle tout au long de la dure de mon
stage.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Prsentation du CMCF:
CMCF: Centre Maroco-Coren de Formation en TICE, est le rsutat d une coordination entre
l'Agence Corenne de Coopration internationale (KOICA) et le Dpartement de lEnseignement
Scolaire (DES) du Ministre de lEducation Nationale, de lEnseignement Suprieur, de la Formation des
cadres et de la Recherche Scientifique (MENESFCRS). En effet, le 17 jiullet 2008, le procs-verbal des
discussions entre le Ministre de l'Education Nationale, de l'Enseignement Suprieur, de la Formation des
Cadres et de la Recherche Scientifique et l'Agence Corenne de Coopration Internationale (KOICA) a
t sign par M. le secrtaire gnral du DES et le reprsentant rsident de la KOICA au Maroc, faisant
natre, par convention entre les deux partis, le CMCF-TICE Rabat.
Le CMCF, visant principalement le corps professoral, a pour but de dvelopper les comptences
professionnelles de ses bnficiares, savoir, l'intgration des TICE dans leurs pratiques pdagogiques.
De manire plus globale, la mission du CMCF-TICE est le soutien du programme national GENIE dont
le but est la gnralisation des TICE ainsi que le developpement des comptences des enseignants.

Former des bnficiaires la


conception,
intgration et usage des TICE
dans leurs scnarios pdagogiques

2 objectifs

Initier le public la production


Des contenus & multimdias
usage pdagogique

MISSION DU
CMCF

Dsign & usage


d'un
Scnario
pdagogique
instrument
Par les TICE

Domaines de comptences

Conception &
production d'une
Ressource
d'enseignement
Et d'apprentissage

Ijlal EL HAZITI

Rapport de stage : SAKAI

Une plateforme d'apprentissage distance:


La mission du CMCF concistant en l'intgration des TICE au sein des scnarios pdagogiques ne
peut tre russie sans une gnralisation de ses dmarches: restreindre la formation seulement aux
candidats pouvant tre prsents dans les locaux du centre ainsi que sur une dure bien prcise seraient un
frein au developpement des TICE et leur dployment, sur ce, le CMCF-TICE opta pour l'installation
d'une plateforme d'e-learning( LMS: Learning Management System), qui permetterait une volution de la
formation, auparavant borne aux classes du centre, vers une formation distance regroupant un nombre
bien suprieur d'utilisateurs ainsi que la possibilit d'taler les dures de formations mme lors des
priodes de vacances, chose qui faciliterait la gnralisation d'usage des TICE.

Formation distance: points phares:


Au commencement, l'e-learning a connu une priode d'enthousiasme majeur et a t considr
comme l'ultime rforme ducative promettant une rsolution optimale aux problmes de la formation,
logistique et budgtaire, en remplaant les traditionnels cours en prsentiel. A prsent, ile ne serait
nullement exagr de dire que l-e-learning a atteint l'ge de la raison.
Le schma qui suit, tir de l'article Qu'est ce que le e-learning? synthtise l'ensemble des
lments d'un dispositif de formation distance:

Ijlal EL HAZITI

Rapport de stage : SAKAI

Le centre du dispositif: Plateforme de formation:


Une LMS: learning Management System: met la disposition des apprenants tout une base de
ressources numriques accessibles via un rseau local/internet.
Afin de permettre le dialogue et la commuication entre les diffrents acteurs, enseignants et
enseigns, les differentes LMS disposent de multiples outils synchrones: chat, partage d'application ou
visio-confrence, ou asynchrones: messagerie, blogs ou forums, ces derniers favorisant un echange plus
personnel.
En parallle, ces plateformes de formation distance offrent des outils de gestion et
d'administration: gestion des cours, des apprenants, suivi de ces derniers (tracking), aussi, des modules
complmentaires peuvent tre ajouts ces plateformes afin d'enrichir leurs fonctionnalits.

Les acteurs du dispositif:


La platefome permet de se librer des contraintes de temps et d'espace: l'apprenant suit depuis
son local une formation dont le contenu est organis selon un parcours pdagogique par le formateur. Le
parcours peut tre dit individualis du fait que la formation est structur selon les objectifs pdagogiqes
et les comptences pr-formation ainsi que les rsultats prliminaires des aprenants.
Aujourd'hui, le rle de tuteur prend de plus en plus d'importance de part sa mission
d'accompagner les apprenants dans leurs acquisition, lui faire acqurir de l'autonomie ainsi que de suivre
de prs et valuer leur dveloppement, sans oublier son devoir de combattre la sensation d'isolement,
pouvant tre dvastatrice pour la volont et le l'avancement de tout apprenant, par des encouragements,
des questionnements et des suggestions d'approfondissement.
Finalement, le concepteur des sites de cours suivant les dirctives donnes par l'enseignant. Sa
mission est la prise en charge et l'intgration des ressources pdagogiques numriques dans la plateforme.

Le contenu:
Il y a quelques annes de cela, le partage des ressources tait handicap par la vitesse de
transmission des donnes, d'o leur limitation a de simples supports textuels. A prsent, avec la
gigantesque volution informatique, cette vitesse de transmission est suffisemment amliore pour ne
reprsenter aucune entrave pouvant supporter des modules sonores, des images de trs haute rsolution
ou encore des vidos.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Afin de faciliter l'echange entre concepteurs et minimiser les cots de dveloppement, les
plateformes font usage des standards. L'integration de contenu respectant les standards, pouvant se faire
sur toute plateforme qui les respecte, est tres rentable du point de vue budgtaire lors d'une migration de
plateforme.

Mthodes et objectifs pdagogiques:


Toutes les mthodes pdagogiques sont envisageables lors de l'utilisation d'une plateforme de
formation distance: transmissive, interrogative, dmonstrative, pdagogie de projet, mthode
cooprative....Elles peuvent tre utilises alternativement.
Actuellement, l'galit entre auto-formation et formation distance n'est plus jour, l'e-learning
aujourd'hui vise plutt l'acqusition de comptences que de savoir, concept traduit par l'expression:
apprendre apprendre. Dsormais, la persistance est mise sur la qualit de l'accompagnement:
l'apprenant construit son savoir, le tuteur est le facilitateur.
En raison de la multitude des facteurs dont la russite d'une formation distance dpend
(l'autonomie et la motivation de l'apprenant, la qualit du dispositif, la disponibilit & la performance du
tuteur....), aucune des mthodes cites ci-desus ne peut tre la meilleure pour tous. Elle peut tout fait
opter pour une mthodologie hybride (utilisant plusieurs mthodes).

Mise en place de la plateforme:


Choix de la plateforme
Mthodologie de slction:
Le CMCF s'interesse de plus en plus au Systme d'exploitation Linux, avec une intention de
migration totale de Windows vers l'une des distributions Linux, d'o il tait obvious de slctionner
une des plateforme open-source, suivant les critres suivants:
1) Importante communaut, dynamique et d'envergure internationnale, d'utilisateurs et de
developpeurs.
2) Plateforme ayant la capacit de gestion d'un nombre important d'utilisateures
3) Installation et gestion de laplateforme faisant usage d outils & technologies web courantes
4) Multi-systmes dexploitations: ct client (quel navigateur? ) cot serveurs (quels systems
supports?)
5) Ergonomie et possibilit de personalisation.
6) Adaptabilit & modularit de la plateforme.
7) Echo et temoignages d'hommes et de femmes ayant deja t confront la ralit d'installation et
d'utilisation des produits au dela du dicrours institutionnel.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Aussi, de par sa nature, le CMCF-TICE aura besoin d'une plateforme qui permet une forte
interaction entre les apprenants d'un cot, et les apprenants et leurs tuteurs d'un autre cot, ce qui allege et
compense la soliture ressentie par l'apprenant distance, favorise la cooperationau sein d'une
communaut dutilisateurs. cette interaction aide aussi d'entretenir et grer la motivation dont
l'apprenant a besoin pour mener bien son apprentissage. Ce sont des sources d'change, d'apprentissage
collectif; la construction dun savoir, bien que personnel, s'effectue dansun cadre social.
Les informations proviennent la fois de ce que l'on pense et de ce que les autres apportent lors
de l'change, et donc sont en lien avec le lieu. Cette constatation drive de la thorie socioconstructivisme qui repose sur le fait que l'acquisition de connaissances favorables est faorise par la
prise en compte du champs social dans laquelle elle est situe.
Les plateformes candidates taient:
SAKAI

latest vrsion:2.10

Spiral Connect

----

Toutefois, afin d'valuer leur forces, points forts/faibles, une prsentation de la trs clbre
Moodle sera cite aussi, ce qui nous permettera d'y comparer nos deux candidates.
Les 3 plateforms sont libres et gratuites.
Commenons par notre plateforme phare:

Moodle:
Moodle: accronyme de Modular Object-Oriented dynamic learning Environment, (aussi, veut dire
flner en anglais) est une plateforme dapprentissage en ligne servant crer des communauts
d'apprenants autour de contenus et dactivits pdagogiques.
L'un des plus forts points de Moodle est son systme de gestion de contenu (SGC). les fonctions
pdagogiques/communicatives dont il est dot lui permettent de crer tout un environnement
d'apprentissage en ligne, do la naissance d'un rseau , ou encore, toute une communaut autour d'un
thme choisi par les membres de la plateforme (pdagogues, apprenants & ressources pdagogiques).
Moodle est un systme de e-formation (e-learning) favorisant un cadre de formation socioconstructiviste (courant de pense affirmant que les gens peuvent construire activement leurs nouvelles
connaissances en interagissant avec leur voisinage. Le patrimoine de connaissance de tout un chacun est
enrichi par tout ce qu'il lit, voit, entend, touche et ressent, ce qui met l'accent sur le fait que le transfert de
l'information ne se fait pas uniquement d'un cerveau un autre, mais est conditionn par l'interprtation
et l'interaction avec un groupe social.).

Ijlal EL HAZITI

Rapport de stage : SAKAI

L'interface Moodle est constitue de plusieurs blocs:


Le bloc central: prsente les activits en cours qui peuvent tre classs suivant plusieurs critres:
1. Thmatique: en fct de thmes/sujets.
2. Hebdoadaire: en fct dun agenda/calendrier.
3. Informel: en fct de sujets de discussions de forums.
Les blocs latreaux: donnent accs aux diffrents liens et outils du cours.
La plateforme Moodle permet ses utilisateurs davoir accs plusieurs activits, accs conditionn par
les droit donns par lenseignant ses tudiants.
De ces activits on peut citer:
forum
devoir
messagerie instantane
Leon
Test
Wiki
atelier
Journal personel
Il faut noter que toutes les activits ainsi que leurs accs sont parametrables par
l'enseignant.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Page d'acceuil d'un cours Moodle (vision utilisateur)


A nos jours, le developpement de Moodle est fortement influenc par les demandes de la
communaut d'administrateurs et utilisateurs, et ce l'chelle mondiale. La plateforme dispose aussi de
plus e 200 modules additionnels dvelopps depuis des annes pr la communaut. la richesses des forums
de discussions de Moodle apportent cette dernire une critique positive lui permettant une volution
permanente.
L'enseignant a la possibilit de faire une sauvegarde de ses cours avec ou non les donnes et les
productions tudiantes. Il peut aussi rinitialiser le cours afin de garder sa structure sans les ressources,
les utilisateurs et les changes d'informations, ce qui permet l'enseignant d utiliser la mme base pour
tous ses cours.
Une fonctionalit phare de Moodle est la possibilit de dfinition de mta-cours d'un cours
principal: chaque tudiant qui s'inscrit dans un cours principal, est automatiquement inscrit dans
l'ensemble des mta-cours connexes prdfinis.
Les points faibles de la plateforme:
Agenda du cours (visualisation ds nouveauts, travaux rendre apparaissent automatiquement ds
l'agenda) mais pas d'agenda personnel.
Pas de mode visio-confrence sauf si l'on ajoute un module.
Etant riche en fonctionnalits, la prise en main de Moodle par les apprenants peut necessit un
temps dadaptation vu que les pages sont gnralement trs charges en informations.

Ijlal EL HAZITI

Rapport de stage : SAKAI

La diversit et la spcifit de tous les parametrages des outils peuvent paratre trop complexes aux
yeux d'enseignants novices en FOAD.
Passons prsent nos deux candidates :

Sakai:
Le projet Sakai a t lanc en 2004 par quatre universits amricaines avec, pour objectif, de
consolider leurs developpements en matire de plateforme dapprentissage. Chacune de ces universits,
savoir: Indiana University, Massachusetts Institute of Technology (MIT), Stanford University et
University of Michigan utilisait des systmes de gestion de cours diffrents, souvent developps en
interne.
Sakai est un projet, auquel sont rattachs une fondation, un comit de direction et des partenaires
institutionnels et commerciaux; une communaut qui regroupe plusieurs institutions qui cooprent et
maintienent cette plateforme. Elle regroupe au dels de 80 universits dans le monde.
Sakai est une solution de formation en ligne, utilisable dans un contexte d'ducation et de
formation base sur une structure ouverte et extensible, incluant une suite d'outils pour le support de
l'apprentissage, de la collboration et de la recherche. Son objectif est de produire une plateforme
complte de gestion de cours libre de qualit quivalente ou suprieure aux autres produits du march. En
premier lieu, le produit d'adresse aux tablissements universitaires.
Sakai utilise toute une collection d'outils, dont:
Messagerie avec archivage
Fils de discussion

Centre de message et message du jour.

Gestion des profils.


Emplois du temps
Wiki
L'interface de Sakai tant lgre facilite lutilisation de cette plateforme et de ses outils, dont la
plupart propose une approche matre/lve: lenseignant a le contrl sur les ressources de chacun de ses
cours, et offrent des volets de gestion permettant lenseignant de les configurer en fonction de ses
besoins.

Ijlal EL HAZITI

Rapport de stage : SAKAI

L'un des plus grands points forts de Sakai est la possibilit dadaptation de ses outils une vaste
gamme de besoins en matire denseignement et dapprentissage. Trs branche aux nouvelles tendances
pdagogiques & technologiques, la communaut de Sakai s'interesse aussi au Portfolio (portefeuille de
comptences), au standard RSS, au Podcasting/balladododiffusion (diffusion pour baladeur).
Bien que le produit ne soit encore jeune (apparition en 2004), et qu'une bonne part de ses outils et
fonctionnalits ne sont apparus que rcemment, il est concidr comme produit mature. Cela explique
qu lheure actuelle, le nombre de sites en production exploitant Sakai est peu lev comparativement
dautres plateformes de formation Open-Sources, toutefois, son rythme de croissance beaucoup plus
lev que la majorit des autres platefores dapprentissages lui permetterai de prendre une place de plus
en plus importante durant les annes venir grce son excellente dmarche qualit.
Les points faibles de la plateforme:

Sa
documentation:
Sakaipedia:
https://confluence.sakaiproject.org/display/CONF/Welcome+to+the+Sakai+wiki est aujourdhui
exclusivement en anglais, ce qui peut nuire aux users non-parlant cette langue. Une association
but non-lucratif a dj t cre au Quebec : http://www.sakaiquebec.org, tentant de franciser
SAKAI ainsi que de fournir une tradction arabe.

La platforme, tant developpe en Java, demande un administrateur comptent dans ce


langage.
Une installation complexe (mais trs documente) et un outils d'administration non encore traduit.

Spiral Connect:
Spiral Connect est la version volue de Spiral Classic, plateforme pdagogique dveloppe et
dite par l'Universit Claude Bernard Lyon1.
Spiral Connect se veut oriente vers le travail collaboratif et le web social, elle vise centrer
l'activit d'apprentissage autour de l'apprenant, et l'aider promouvoir sa formation en developpant de
nouveaux outils, toutefois, la tche ne s'avre pas facile vu le trs jeune ge de la plateforme: La
premire version de Spiral n'a que 7annes.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Spiral Connect dispose d'une multitude d'outils pdagogiques, dont:


Cours
Liens web
Questionnaire
Blog
Wiki
Forum
L'tudiant ne voit que les outils/objets qui ont t au pralable publis pour son profil, ces outils
sont crs par les enseignants.
Spiral Connect dispose de deux sortes de messagerie:

une messagerie interne

une messagerie instantanne


Les points faibles de la plateforme:
Spiral Connect souffre, cause de son jeune ge, d'une documentation restreinte et d'une
communaut trs limite aux utilisateurs de l'Universit Claude Bernard Lyon1. De ce fait, en cas
de panne, le developpeur responsable du maintien se trouvera, d'une part, heurt au beug de
question, et d'une autre, un isolement et un immense manque de soutien.
Aussi, la plateforme reposant sur le flash, gnre un tas de bugs, surtout lors de son utilisation
sous Firefox, ainsi que son incompatibilit avec les appareils Apple.

Dcision finale et choix de la plateforme:


Spiral Connect a t carte pour son manque alarmant de documentation, ses multiples bugs sous
firefox rsultant du fait que la plateforme reposant presque totalement sur flash, ainsi que son
incompatibilit avec les machines apple, aussi, la simplicicit dutilisation et la rapidit de prise en main
de Sakai lui font dfaut.
Cette dernire, par contre, peut se prendre en main seule, de manire intuitive; cela reprsente un
gain colossale de temps et dnrgie.

Ijlal EL HAZITI

Rapport de stage : SAKAI

SAKAI permet un change complet entre humains grce ses fils de discussions, forums, chat...,
ceci dit, cette plateforme dispose dun dynamisme de groupe chez les apprenants comme chez les
enseignants, point fondamental et essentiel dans toute formation distance, car, les changes sur le web
se limitant au ct humain-machine cause la lassitude, le dcouragement qui dbouche l'echec. SAKAI
s'appuyant sur le socio-constructivisme place l'humain au centre de l'apprentissage, et non la platefome,
d'o son succs et sa rapide volution. C'est pourquoi SAKAI a retenu notre attention, de plus, sa
puissante et nombreuse communaut trs active dans les changes de savoirs comme de comptences
dans ses forums ddis, rflchit toutes les facettes de la formation en ligne.
La plateforme SAKAI nous semble idale pour implmenter le premier dispositif de formation
distance au CMCF. SAKAI privilgie les changes humains, batt des communauts de pratiques,
favorise l'entraide et le soutien entre apprenants comme entre enseignants & tuteurs, et est aussi en
parfaite adquature avec la philosophie des logiciels libres et leur dynamique communaut.
Architechture de la plateforme choisie :
SAKAI CLE est une web application d'architechture 3-tiers: modle logique d'architecture
logique visant modliser l'application comme un empilement de 3 couches:

couche prsentation des donnes: (ou encore, interface homme machine) l'affichage, la restitution
sur le poste de travail & le dialogue avec l'utilisateur.

Couche Traitement des donnes : correspond la partie fonctionnelle de l'application, mise en


oeuvre de l'ensemble des rgles de gestion et de la logique applicative.

Couche Database pour l'accs la BD : dontient les donnes destines la conservation.

Les couches, tant indpendantes, communiquent entre elles via un modle d'change .
Chacune de ces couches propose un ensemble de services rendus, et le benefice de ces services de la part
des autres couches suit une rgle : Les services d'une couches sont mis la disposition uniquement de
la couche suprieure immdiate.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Schma explicatif:
3-tiers architechture

External

Presentation

Business logic :
traitement

Data Access

User

Applications

Data access

Bases de donnes supportes :


HSQLBD :
-Trs legre, pure-Java, Utilise pour les tests et le developpement.
MySQL :
-Open-source, bonne performance, trs rpandue en production.
Oracle :
-Coteuse, Trs haute performance, trs scurise
DB2 :
-Coteuse, usage exculisif pour les trunks: les branches (versions) anonymes d'une arborescence
de fichiers sous contrle de rvision, similaire Oracle.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Valeure ajoute SAKAI:


La plateforme met la disposition de ses utilisateurs, enseignants commes apprenants, une grande
gamme d'outils d'change synchrones et asynchrones, toutefois, la communication visuelle fait dfaut
SAKAI. Ce dficit est remdiable avec l'intgration de Sakai BigBueButton dans une instance de Sakai
via un seveur BigBlueButton; cela permet aux utilisateurs de la plateforme de crer, grer et rejoindre
des runions depuis leurs worksites, grce BigBlueButton.
N.B:
SAKAI est une plateforme en plein volution et dveloppement, ce qui implique que certains
outils et fonctions ont encore besoin d'tre intgrs aprs son deployment, comme c'est le cas de l'outil de
visio-confrence.

Etapes de la mise en place de la plateforme


Fiche technique d'installation de SAKAI:
Caractristiques techniques requis:
Serveur IBM Xenon
Intel(R) Xeon(R) CPU X5450 3.00GHz, 8 cores
HDD 140 Go x 2
OS: CentOs 6.2
Etapes d'installation:
Notes:

SAKAI et toutes ses composantes doivent tre installes dan un dossier opt, auquel

l'adiministarteur

devra avoir un access complet et sans ausune restriction. Dans mon rapport, ce dossier est dans la
racine: /opt

Bien que les composantes requises par SAKAI peuvent d'or et dj tre installes sur la machine
serveur hte, mais il est conseill et prfrable d'en avoir une installation frache, par consquent,
j'ai vu juste d'oprer un formatage de la machine serveur avant d'entamer toute manipulation.

Ijlal EL HAZITI

Rapport de stage : SAKAI

1) Installer Java 1.6:


Tlcharger l'install du JDK et non du JRE depuis :
http://www.oracle.com/technetwork/java/javase/downloads/jdk6-downloads-1637591.html
L'installer sur /opt :
cd /root/Tlchargements
mv jdk-6u33-linux-i586-rpm.bin /opt
cd /opt
chmod +x jdk-6u33-linux-i586-rpm.bin
./jdk-6u33-linux-i586-rpm.bin
cd /usr/java
mv jdk1.6.0_33 /opt/java

Fixer les variables d'environnement :


export JAVA_HOME=/opt/java
export JAVA_PATH=$JAVA_HOME
export PATH=$PATH:/opt/java/bin

Pour vrifier, lancer la commande :

java -version

l'output devrait tre de la forme :


java version "1.7.0_05-icedtea"
OpenJDK Runtime Environment (rhel-2.2.1.el6_3-i386)
OpenJDK Server VM (build 23.0-b21, mixed mode)

2) Installer MySQL 5.1:


Remarque:Afin d'optimiser l'usage de la plateforme, il est conseill d'installer la version 5.1 de
MySQL, il en existe une dernire mise jour qui est la version 5.5 mais elle est instable,son utilisation
gnre des bugs avec SAKAI.
cd /opt
yum install mysql mysql-server

Dmarrer le service MySQL:


/etc/init.d/mysqld start

Ijlal EL HAZITI

Rapport de stage : SAKAI

Mettre jour la configuration de MySQL:


Aller dans /etc/my.cnf, et ajouter ce qui suit la section mysqld :
<<
default-storage-engine=InnoDB
innodb_file_per_table
character-set-server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1
>>

Puis, afin de scuriser l'accs la base de donnes, il faudrait supprimer les utilisateurs anonymes
et crer un mot de passe:
/usr/bin/mysql_secure_installation

Enfin, il faut crer la base donnes sakai qui sera utilise par la plateforme SAKAI:
mysql root -u password -p

puis saisir:
mysql> create database sakai default character set utf8;
mysql> grant all privileges on sakai.* to 'sakai'@localhost' identified by 'password';
mysql> flush privileges;
mysql> quit

Les lignes de codes ci-dessus permettent de crer une base de donnes nommme
sakai , et d'accorder l'utilisateur SAKAI toutes les permissions et privileges.
Afin de vrifier, lancer la commande suivante :
mysql --version

L'output devrait tre :


mysql

Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1

Ijlal EL HAZITI

Rapport de stage : SAKAI

3) Installer MAVEN 2.2.1 :


Tlcharger l'install depuis :
http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-2.2.1-bin.tar.gz
L'installer /opt toujours :
cd /root/Tlchargements
tar vfx apache-maven-2.2.1-bin.tar.gz
mv apache-maven-2.2.1 /opt/maven

Fixer les variables d'environnement :


export MAVEN2_HOME=/opt/maven
export M2=$MAVEN2_HOME/bin
export MAVEN_OPTS="-Xms256m -Xmx512m"
export PATH=$M2:$PATH
export MAVEN_OPTS='-Xms128m -Xmx796m -XX:PermSize=64m -XX:MaxPermSize=172m'

Pour vrifier, lancer la commande suivante :


mvn --version

L'output devrait tre:


Apache Maven 2.2.1 (r801777; 2009-08-06 20:16:01+0100)
Java version: 1.6.0_33
Java home: /opt/java/jre
Default locale: fr_FR, platform encoding: UTF-8
OS name: "linux" version: "2.6.32-279.5.1.el6.x86_64" arch: "amd64" Family: "unix"

Ijlal EL HAZITI

Rapport de stage : SAKAI

4) Installer Subversion 1.6.11:


cd /opt
yum install subversion
yum install mod_dav_svn

Fixer les variables d'environnement:


export SUBVERSION_HOME=/opt/subversion
export PATH=$PATH:/opt/subversion/bin

Pour vrifier, lancer la commande :


svn --version

L'output devrait tre :


svn, version 1.6.11 (r934486)
compil Jun 23 2012, 00:44:03

5) Installer Tomcat 7.0.29 :


wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-7/v7.0.29/bin/apache-tomcat-7.0.29.tar.gz
tar vfx apache-tomcat-7.0.29.tar.gz
mv apache-tomcat-7.0.29 /opt/
ln -s apache-tomcat-7.0.29 tomcat

Fixer les variables d'environnement :


export CATALINA_HOME=/opt/tomcat
export PATH=$PATH:/opt/tomcat/bin

Mettre jour la configuration de Tomcat :


Aller /opt/apache-tomcat-7.0.29/conf/server.xml, et ajouterURIEncoding="UTF-8"
connexion :
<connector port="8080" URIEncoding="utf-8"....>

l'lment de

Ijlal EL HAZITI

Rapport de stage : SAKAI

Crer le fichier setenv.sh dans le dossier : /opt/tomcat/bin et y inclure :


export JAVA_OPTS="-server -Xmx1028m -XX:MaxPermSize=320m
-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false
-Djava.awt.headless=true -Dcom.sun.management.jmxremote
-Dsun.lang.ClassLoader.allowArraySyntax=true"

Le rendre xacutable :
chmod +x /opt/tomcat/bin/setenv.sh

Configurer Tomcat7 afin d'utiliser les anciens chargeurs (classloaders) de Tomcat5 en ajoutant ce
qui suit au fichier /opt/apache-tomcat-7.0.29/conf/catalina.properties, aux lignes commenant
par :
1. "common.loader=..."
,${catalina.base}/common/classes/,${catalina.base}/common/lib/*.jar
2."shared.loader=..."
${catalina.base}/shared/classes/,${catalina.base}/shared/lib/*.jar
3."server.loader=..."
${catalina.base}/server/classes/,${catalina.base}/server/lib/*.jar

Crer les dossiers suivants :


cd /opt/apache-tomcat-7.0.29
mkdir -p shared/classes shared/lib common/classes common/lib server/classes server/lib

Afin de vrifier, lancer puis frmer le service tomctat :


cd /opt/apache-tomcat-7.0.29/bin
./startup.sh
./shutdown.sh

Ijlal EL HAZITI

Rapport de stage : SAKAI

6) Installer MySQL Connector/Java :


Tlcharger l'install depuis :
http://www.mysql.com/downloads/connector/j/
Puis l'installer dans /opt :
tar -xzf mysql-connector-java-5.1.21.tar.gz
mv mysql-connector-java-5.1.21 /opt
cd /opt/mysql-connector-java-5.1.21
cp mysql-connector-java-5.1.21-bin.jar

/opt/tomcat/lib

cd /opt
rm -rf mysql-connector-java-5.1.21

7) checkout de SAKAI avec Subversion:


cd /opt
svn co https://source.sakaiproject.org/svn/sakai/trunk/ sakai

Un dossier nomm SAKAI sera cr dans le dossier /opt, il contiendra la source de SAKAI dont
on fera le deployment par la suite.
8) Modifier le fichier sakai.properties:
Crer un dossier SAKAI dans l'emplacement: /opt/tomcat
Y copier le fichier sakai.properties:
cp /opt/sakai/config/configuration/bundles/src/bundle
/org/sakaiproject/config/bundle/default.sakai.properties
/opt/tomcat/sakai/sakai.properties

Ijlal EL HAZITI

Rapport de stage : SAKAI

Oprer les modifications suivantes sur le fichier sakai.properties dans la rubrique


DATABASE:
username@javax.sql.BaseDataSource=sakai, et enlever le # au dbut.
password@javax.sql.BaseDataSource=password, et enlever le # au dbut.
Enlever les # des 6 premires lignes de la section # MySQL settings.
Fixer la valeur de auto.dll true:

auto.dll=true

9) Crer le fichier settings.xml de maven:


Tlcharger
le
fichier
depuis :
https://confluence.sakaiproject.org/display/BOOT/Development+Environment+Setup+Walkthrough
et le mettre dans le dossier /root/.m2.
10) Deployer sakai avec Maven:
cd /opt/sakai
mvn clean install sakai:deploy -Dmaven.test.skip=true -Dmaven.tomcat.home=/opt/apache-tomcat-7.0.29/

Lancer le service Tomacat :


cd /opt/apache-tomcat-7.0.29/bin
./startup.sh && tail -f /opt/apache-tomcat7.0.29/logs/catalina.out

Vrifier que SAKAI est bien installe en allant sur :


https://localhost:8080/portal

Ijlal EL HAZITI

Rapport de stage : SAKAI

11) Intgrer BigBlueButton 0.8 :


Pour un premier essai, j'ai opt pour l 'utilisation du serveur de test BBB mis au profit du grand
public http://demo.bigbluebutton.org/ , avant de passer l'installation du BigBlueButton sur un serveur
ddi.
Installer l'outil bbb qui servira de connecteur entre la plateforme SAKAI et le serveur
BigBlueButton.
Tlcharger l'install, soit en faisant un clone git ou un checkout de la source :
Version 1.0.7 & up :
gitclonegit://github.com/blindsidenetworks/bigbluebuttonsakai.git
Version 1.0.6 :
svn

co
https://source.sakaiproject.org/contrib/bigbluebutton/tags/b
bb-1.0.6

Ijlal EL HAZITI

Rapport de stage : SAKAI

Compiler & dployer SAKAI :


Note Importante :

Ce 2nd dployment vise intgrer BigBlueButton dans Sakai, donc, il devra s'excuter dans le dossier
source du BigBlueButton tool , savoir:/opt/sakai/bigbluebutton-sakai/bbb-tool , et non, comme
prcdemment, dans le dossier source de SAKAI.

cd /opt/sakai/bigbluebutton-sakai/bbb-tool
git clone git://github.com/blindsidenetworks/bigbluebutton-sakai.git
mvn -e clean install sakai:deploy -Dmaven.test.skip=true -Dmaven.tomcat.home=/opt/apache-tomcat-7.0.29/

Ajouter les valeurs suivantes la fin du document: sakai.properties:


bbb.url=http://<server>/bigbluebutton
bbb.salt=<salt>

==> Afin de dterminer ces valeurs, entrer la commander suivante:

bbb-conf salt

N.B:
>>Vu que je n'utilise que le serveur bbb test, les valeurs sont d'or-et-dj dfinies et sont:
bbb.url=http://test-install.blindsidenetworks.com/bigbluebutton
bbb.salt=8cd8ef52e8e101574e400365b55e11a6

>>Par abus de langage, on peut dire que la bbb.url est le nom du serveur BigBlueButton, alors
que la bbb.salt est son adresse effective.
Voici des captures d'cran :

Ijlal EL HAZITI

Rapport de stage : SAKAI

De la page 'acceuil du serveur bbb d'essai

Aprs m'tre connecte au serveur bbb public d'essai


12) Arborescence :
Drnier point, afin de vrifier que tout est en ordre, une copie de l'arborescence du dossier opt
contenant la webapp SAKAI avec le BigBluebutton intgr sera incluse avec ce rapport.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Prsentations des diffrentes composantes requises pour la mise en place de


SAKAI :

JavaJDK:
SAKAI est code en JAVA, d'o la necessit d'avoir le Java Developpement Kit (JDK) qui est une
bibliothque logicielle de base du langage de programmation Java, ainsi que l'environnement dans lequel
le code Java est compil pour tre transform en bytecode (code intrmdiaire plus concret que le code
source ; il n'est pas directement excutable) afin que la machine virtuelle (JVM) puisse l'interpreter.

MySQL:
MySQL est un systme de gestion de base de donnes (SGBD), distribu sous une double licence
GPL et propritaire. Il fait partie des logiciels de gestion de base de donnes les plus utiliss au monde,
autant par le grand public (applications web principalement) que par les professionnels.
Ce SBGD est un serveur de bases de donnes relationnelles SQL developp avec but d'assurer une
performance eleve en lecture, consquence : ce logiciel libre est plutt orient vers le service de donnes
dj en place que celui de mises jours frquentes et fortement scurises, d'o l'utilit de cette base de
donnes pour le stockage des cours, les comptes utilisateurs, les squences de vido-confrences.....qui
ne necessitent aucunement des mises jours frquentes.

ApacheMaven:
Apache-Maven est un outil logiciel libre pour la gestion de l'automatisation de production des
projets logiciels Java en gnral et Java EE en particulier. Son objectif est : produire un logiciel
partir de ses sources.
Un lment cl et relativement spcifique de Maven est sa capacit travailler en rseau, ainsi
que sa capacit tlcharger dynamiquement du matriel sur des dpots logiciels connus
===> Il propose un synchronisation transparente de modules necessaires.
Maven sert faire un build et un deploy de SAKAI dans Tomcat.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Subversion:
Subversion (SVN) est un logiciel de gestion de sourcess et de contrle de versions, distribu sous
licence Apache et BSD.
Grce cet outil, j'ai fait un checkout (l'opration consistant rcuprer pour la premire fois les
fichiers dj prsents au sein d'un projet du dpt) de la source SAKAI.

ApacheTomcat:
Apache Tomcat est un conteneur web libre, et non un serveur web part entire. Il comporte
galement un serveur HTTP. Tomcat sert comme interface graphique SAKAI.

Synthse de ralisation:chronologie et timing:

03/07

13/07 18/07

Stage en Prsentiel

27/07 30/07

20/08

Stage Distance

Premier
Correction des bugs gnrs
contaPremire approche Docu- Premires
ct et renouvellement de multiples
menta- tentatives
avec le projet :
avec
tentatives d'installation
tion d'installation le
tatnnement
jusqu'au succs
serveur

Serveur HS
Thorie

30/08 0509

Pratique

Vacances

Installation
du
BBB

Ijlal EL HAZITI

Rapport de stage : SAKAI

Schma gnral rcapitulatif:

Serveur CentOs 6.2


Tomcat

Serveur
BigBlueButto
n 0.8

Serveur Ubuntu
10.04

SAKAI

Java
JDK

User

Int MySQL
gre
dan r BBB
s SA -to
KA o l
I

Webmin : gestion
du serveur

Applications

SVN

MySQL
Database

Maven

In
pt scr
i i
d on us es
er
s

Users

Ijlal EL HAZITI

Rapport de stage : SAKAI

Bugs & solution:

Afin d'installer SAKAI et de la mettre en ligne, j'ai suivi la lettre les indications du guide
d'installation :
https://confluence.sakaiproject.org/display/BOOT/Development+Environment+Setup+Walkthrough
toutefois, pas mal de bugs ont t gnrs, et leur rsolution n'tait pas trs facile. Cela ne relve
aucunement de leur complexit, mais de leur non-existence sur Sakaipedia, ni sur le reste des tutoriaux
parlant de SAKAI, ni encore dans les forums. Ce n'taient pas de grosses difficults techniques, mais de
simples dtails impratifs mais non-nots, bien que SAKAi soit trs bien documente.
Lors de ma premire manipulation de la lateforme, j'avais tent l'installation de la version 2.8, qui
requiert Tomcat5, or le soutien de ce dernier se terminera le 30 Septembre 2012. Par consquent,
la majorit des liens de tlchargements taient dj morts, et toutes mes tentatives de
l'installation se rvlrent vaines.
Solution :
J'ai opt pour la version 2.10 (trunk) de SAKAI qui requiert Tomcat7 toujours
jour.
En arrivant l'tape de deployment de SAKAI, un message d'erreur ne cessa d'apparatre au bout
de chaque tentative : Le deployment plantait.

[INFO] Scanning for projects...


[WARNING]
Profile with id: 'cafe' has not been activated.
[INFO] Searching repository for plugin with prefix: 'sakai'.
[INFO] ------------------------------------------------------------------------

[ERROR] BUILD ERROR


[INFO] -----------------------------------------------------------------------[INFO] The plugin 'org.apache.maven.plugins:maven-sakai-plugin' does not exist or no valid version could be found
[INFO] -----------------------------------------------------------------------[INFO] For more information, run Maven with the -e switch
[INFO] -----------------------------------------------------------------------[INFO] Total time: 1 second
[INFO] Finished at: Thu Jul 19 22:18:02 WEST 2012
[INFO] Final Memory: 2M/247M
[INFO] ------------------------------------------------------------------------

Ijlal EL HAZITI

Rapport de stage : SAKAI

Le problme se trouvait au niveau de la commande utilise pour deployer SAKAI, toujours selon
le site de confluence:
qui tait, tout simplement, incomplte :
mvn clean install sakai:deploy
====>Il faut mentionnner l'emplacement de deployment de la plateforme, qui est le
dossier home de Tomcat . Il fallait aussi sauter les tests et, avant tout, se positionner dans le dossier
source de SAKAI, l'aide de la commande cd.
Au final, la commande oprationnelle tait :
Cd /opt/sakai
mvn clean install sakai:deploy -Dmaven.test.skip=true -Dmaven.tomcat.home=/opt/apache-tomcat-7.0.29/

Aprs dployment russi, en essayant d'accder la plateforme via le navigateur firefox, une
autre erreur inattendue a t gnre :
Etat HTTP 404 - /portal
type Rapport d''tat
message /portal
description The requested resource (/portal) isn't available.

Apache Tomcat/7.0.29

Ce qui voudrait, au pralable dire que Tomcat et Sakai taient non connects.
Mon premier pas tait un redemarrage du service Tomcat ; lors de son arrt, les avertissements
suivants apparurent :

[sakai@localhost ~]$ /opt/apache-tomcat-7.0.29/bin/shutdown.sh


Using CATALINA_BASE:

/opt/apache-tomcat-7.0.29

Using CATALINA_HOME:

/opt/apache-tomcat-7.0.29

Using CATALINA_TMPDIR: /opt/apache-tomcat-7.0.29/temp


Using JRE_HOME:

/opt/java

Using CLASSPATH:

/opt/apache-tomcat-7.0.29/bin/bootstrap.jar:/opt/apache-tomcat-7.0.29/bin/tomcat-juli.jar

25 juil. 2012 12:49:51 org.apache.catalina.startup.ClassLoaderFactory validateFile


ATTENTION: Problem with directory [/opt/apache-tomcat-7.0.29/common/classes],
exists: [false], isDirectory: [false], canRead: [false]
25 juil. 2012 12:49:52 org.apache.catalina.startup.ClassLoaderFactory validateFile
ATTENTION: Problem with directory [/opt/apache-tomcat-7.0.29/common/ lib],
exists: [false], isDirectory: [false], canRead: [false]
25 juil. 2012 12:49:52 org.apache.catalina.startup.ClassLoaderFactory validateFile
ATTENTION: Problem with directory [/opt/apache-tomcat-7.0.29/server/classes],
exists: [false], isDirectory: [false], canRead: [false]
25 juil. 2012 12:49:52 org.apache.catalina.startup.ClassLoaderFactory validateFile
ATTENTION: Problem with directory [/opt/apache-tomcat-7.0.29/server/lib],
exists: [false], isDirectory: [false], canRead: [false]
25 juil. 2012 12:49:52 org.apache.catalina.startup.Catalina stopServer

Ijlal EL HAZITI

Rapport de stage : SAKAI

Suite:
.
.
.
GRAVE: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:490)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:371)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:453)

Afin d'y remdier, il a fallu toute une gamme de rctifications :

Les deux premires taient relies au dployment de la source SAKAI :


SAKAI ne doit pas tre deploye si Tomcat est en marche. La plateforme devrait
avoir un contrle absolu du conteneur web, d'o la nacessit d'arter ce service
avant tout dployment.
SAKAI ne doit pas tre deploye par le super-user root : premire vue, cela
pourrait paratre trage, mais, bien que le root dispose de toutes permissions et
peut tout faire , il a fallu que je cre un autre simple utilisateur , nomm
SAKAI , et que je l'utilise pour lancer la commande de deployment.
Naumoins, tous les autres logiciels devront tre installs par le root.

L'utilisateur SAKAI doit disposer de toutes les permissions sur l'ensemble du dossier /opt
et ses sous-dossiers ; il dit aussi tre le propritaire du dossier /opt/tomcat.

Dans le fichier catalina.out , il tait marqu :

Too many open files

En d'autres termes, il y a eu une sorte de fork-bomb : il y a eu cration de plus de


processus simultans que le systme ne peut grer, tant donn que ce nombre est limit ;
rsultat : saturation de l'espace disponible dans la liste des processus garde par le systme
d'exploitation, et par consquent, aucun nouveau programme ne peut dmarrer tant qu'un
autre ne termine. Cela est tout fait normal avec une webapplication de la taille de
SAKAI.

Ijlal EL HAZITI

Rapport de stage : SAKAI

Solution:
Lancer la commande: ulimit -n 100000 qui augmente le nombre de
processus pouvant tre excuts simultanment 100000 (ce nombre n'est
qu'un exemple).
Cette modification de la configuration systme requiert un redemarrage du
serveur.
Toutes les variables d'environnements devront tre incluses dans le fichier cach: /root/.bashrc,
afin de ne pas avoir les retaper dans le terminal aprs chaque redmarrage du systme.

Quand le bout du tunnel fut proche, que toutes les erreurs prcdentent furent fixes et rgles, et
en tapant: 196.217.245.101:8080/portal, tomcat aurait d mettre peu prs d'une minute
dmarrer, mais le dit service resta en loading beaucoup plus que prvu, en essayant de le
redemarrer, aucuns autre bug ne fut gnr.
Une longue recherche me mena au fait que : le parfeu, tant activ, bloque les ports de
connexion, savoir, le port 8080 utilis par Tomcat.
Solution:
Dsactiver le parfeu l'aide de la commande :

service iptables stop

Ijlal EL HAZITI

Rapport de stage : SAKAI

Bibliographie
Wikipedia
Sakaipedia
https://confluence.sakaiproject.org/pages/viewpage.actionpageId=69273500#InstallationUpgr
adeinstructions-2InstallBigBlueButtonSakaiMeetingTool
https://confluence.sakaiproject.org/display/BOOT/Development+Environment+Setup+Walkth
rough
PPT : SakaiAppStructure, depuis le site : http://fr.slideshare.net
La fiche Plume de Sakai : https://www.projet-plume.org/fr/fiche/sakai
http://spiral.univ-lyon1.fr/Files_m/M10018/WEB/index_SPIRALCONNECT.htm
Le site officiel du CMCF-TICE : cmcf.men.gov.ma
Le site officiel de BigBlueButton 0.8: http://www.bigbluebutton.org