Difference between revisions of "Proj-2014-2015-Mini datacenter portail"

From air
Jump to navigation Jump to search
Line 2: Line 2:
 
== Objectif ==
 
== Objectif ==
   
Développer un portail pour une plate-forme d'expérimentation à base notamment de carte [https://developer.nvidia.com/jetson-tk1 Jetson TK1] en s'inspirant de la plate-forme [https://www.grid5000.fr Grid'5000].
+
Développer un portail pour une plate-forme d'expérimentation (oar-docker) en s'inspirant de la plate-forme [https://www.grid5000.fr Grid'5000].
   
 
Plus globalement cette action s'inscrit dans la partie DataCentre du projet d'éboration '''d'une plateforme pédagogique pour l'expérimentation sur des systèmes massivement distribués'''.
 
Plus globalement cette action s'inscrit dans la partie DataCentre du projet d'éboration '''d'une plateforme pédagogique pour l'expérimentation sur des systèmes massivement distribués'''.

Revision as of 21:47, 2 March 2015

Objectif

Développer un portail pour une plate-forme d'expérimentation (oar-docker) en s'inspirant de la plate-forme Grid'5000.

Plus globalement cette action s'inscrit dans la partie DataCentre du projet d'éboration d'une plateforme pédagogique pour l'expérimentation sur des systèmes massivement distribués.


Fiche SRS

Equipe

  • Tuteur : Olivier Richard
  • Membres: Robin EUDES , Ombeline ROSSI

Outils

Outils et technologies utilisés :

Avancement du projet

Semaine 1 [13/01 - 18/01]

  • Nous avons immédiatement décidé d'utiliser OAR-Docker, qui nous permet de générer directement un nombre donné de noeuds interconnectés.

Il nous a de ce fait fallu apprendre les bases nécessaires pour maîtriser OAR et OAR-Docker.

Nous avons contacté le développeur de ce dernier afin qu'il nous éclaire sur une ambiguïté pour l'installation de ce dernier.

Note : Il est nécessaire d'avoir un OS 64bits pour faire fonctionner OAR-docker.

Semaine 2 [19/01 - 25/01]

  • Nous avons exécuté quelques premières modifications des fichiers fournis dans OAR-docker pour apprendre à maîtriser le logiciel.
  • Une première version de la fiche SRS a également été écrite.

Semaine 3 [26/01 - 01/02]

  • Complétion de la fiche SRS et de celle du projet.
  • Un premier script minimal d'initialisation a été conçu et ajouté dans le git, afin de faciliter l'utilisation de OAR-Docker par des personnes non-initiées.
  • `A ce niveau : l'utilisateur connait au démarrage de la simulation le nombre maximal de noeud qui lui faudra. ( voir semaine 6 )
  • TODO : rechercher des sources compilées de node.js car cela prend énormément de temps lors du lancement de la simulation. [DONE]

Semaine 4 [02/02 - 08/02]

  • Mise à jour de la fiche SRS
  • Recherche d'informations sur l'utilisation de l'APIs d'OAR
  • Suite à un souci avec (principalement) l'initialisation des noeuds et de la récupération de l'état des ressources, nous avons à nouveau contacté le développeur qui nous a indiqué avir effectué une mise à jour il y a quelques semaines. Depuis, nous avons ajouté une alerte sur ce dépot, pour ne pas manquer une mise à jour, et perdre du temps en debug.
  • Update oar-docker vers la version 0.4.0 :
  Python3 support
  Prefixed all container outputs with the container hostname (like oardocker logs subcommand)
  Added --force-rm and --pull options to oardocker build subcommand
  Allowed user to build custom images with custom_setup.sh script located in .oardocker/images/<image_name>/
  Added a proper way to shutdown container
  Updated /etc/hosts when reseting containers
  Removed dockerpty package from dependencies
  Removed oardocker ssh/ssh-config subcommand
  Added --verbose option
  Fixed oardocker logs subcommand

Semaine 5 [09/02 - 15/02]

  • Découverte des fonctions de bootstrap.
  • Mise en forme de la page d'accueil du portail.
  • Test des premières requêtes json vers l'API.

Semaine 6 [23/02 - 01/03]

  • Update vers la version 0.4.3 d'oar-docker, apportant divers bug fixes :
   Added --debug option
   Set default docker API to 1.15 (#25)
   Workaround phpphadmin apache install
   Removed drawgantt-svg permissions errors (#23) [Salem Harrache]
   Fixed oardocker init subcommand (#22)
   Upload workdir to containers during the build
   Updated Dockerfiles to execute custom_setup.sh script


  • Rajout d'informations sur les noeuds sur la page d'accueil et de pages séparées pour chaque noeud en particulier.
  • Ajout d'identification nécessaire pour les utilisateurs.
  • Première approche pour la création de ressources à la volée ( après l'initialisation ) concluante : problème soulevé en Semaine 3 "résolu", de même pour la soumission d'un "job" à un noeud. Ces fonctionnalités seront ajoutées à la webui par la suite.
  • Diverses réorganisations autour de la webui (contenu & mise en forme).
  • L'initialisation de la webui (installation des composants nécessaires, clonage du git, etc) est désormais intégrée lors du build initial. Le script initialement développé (et exécuté à chaque instanciation du frontend ) est maintenant inclu dans le build, et donc exécuté une unique fois. Les composants n'ont plus besoin d'être réinstallé à chaque fois. Cette option est permise par l'éxécution d'un script "custom_setup.sh" lors du build.

Semaine 7 [02/03 - 09/03]

  • Accélération de l'éxecution du custom_setup.sh pour le frontend, boostrap n'est plus installé à partir des sources. Les fichiers minimaux requis sont présents sur le git.
  • De multiples corrections de bug dans info_node.php, qui donne une première vue générale des noeuds.
  • Création de info_rsc.php, qui nous permet une vue détaillé d'un host particulier. Un host ( par exemple "node1" ) regroupe plusieurs ressources, chacune d'entre elle pouvant effectuer des calculs. Ainsi, connaitre les paramètres précis d'une ressources avant de lui soumettre un job est important.