TX Printemps 2017 : "Qualification et extension de l'architecture Picasoft"

Au cours de la TX n° 5552 (Qualification et extension de l'architecture Picasoft), nous avons dû prendre en main le travail effectué au semestre précédent. En effet, l'association Picasoft est née au semestre d'automne 2016, semestre durant lequel l'infrastructure a été mise en place au travers, notamment, d'une autre TX. N'ayant jamais été amenés à gérer une infrastructure, nous avons, dans un premier temps, concentré nos efforts sur la prise en main des outils utilisés sur l'infrastructure. Allant de la configuration réseau des machines, à l'utilisation de Proxmox, les premières semaines ont été riches en découvertes et en apprentissages divers.

Après s'être familiarisés avec l'infrastructure et les quelques notions de “jargon” fréquemment rencontrées, nous avons mis à l'épreuve le travail qui avait été effectué lors de la TX précédente. Aussi bien sur le plan de la documentation que sur le plan architectural, notre but était de savoir si :

  • La documentation existante suffisait à la prise en main de l'infrastructure
  • L'infrastructure était stable en l'état, ou si des changements étaient à introduire

Mise à l'épreuve du travail existant

Afin de mettre à l'épreuve la documentation nous avons, tout d'abord, commencé par monter une infrastructure de test. Cette infrastructure est un “terrain de jeu” sur lequel, les membres de l'association de Picasoft peuvent tenter des manipulations en tout genre, et sur laquelle seront testés les déploiements de nouveaux services. Ainsi, en cas de problèmes lors du déploiement de nouveaux services, l'infrastructure de “production” ne s'en verra pas pénalisée, et continuera de fonctionner parfaitement sans être altérée. Durant la mise en place de cette infrastructure de test (au départ deux VMs montées en cluster), nous avons tenté de suivre à la lettre la documentation de la TX précédente. A chaque fois que nous tombions face a des manipulations manquantes ou mal documentées, nous complétions la documentation de façon adéquate.

Une fois ces deux VMs (pica01-test et pica02-test, en référence aux VMs pica01 et pica02 constituant l'infrastructure de production) fonctionnelles, nos efforts se sont concentrés autours du challenge de la robustesse de l'infrastructure. Cette partie fût assez théorique. En effet, nous n'avons pas eu l'occasion de faire des tests de robustesse sur l'infrastructure. Toutefois, nous avons fait beaucoup de recherches sur Proxmox, Corosync et les problématiques de clustering, et en sommes venus à la conclusion que la configuration de cluster à deux nœuds dans laquelle était l'infrastructure jusqu'à présent n'était pas robuste.

Après des défaillances rencontrées par l'équipe de l'association de Picasoft, et après leur concertation, les clusters (Proxmox et Swarm) ont été détruits (par l'équipe de Picasoft) au profit de deux machines virtuelles indépendantes hébergeant chacune des services bien définis.

Toutes nos recherches menées durant cette phase ont étés pérennisées dans la documentation de Picasoft.

La mise en place de l'infrastructure de monitoring

Par la suite, nous avons, dans la deuxième moitié du semestre, travaillé sur la mise en place d'une infrastructure de monitoring permettant d'agglomérer les messages de log renvoyés par chaque service hébergé sur l'infrastructure, et de les traiter. Pour ce faire, nous avons décidé d'utiliser les outils Elasticsearch, Kibana et Logstash (constitutifs de la stack ELK). Étant fréquemment utilisés pour monitorer des ensembles de conteneurs, utiliser de tels outils nous a semblé approprié. De plus le fait de pouvoir les déployer dans avec Docker est très pratique, puisqu'on peut les déplacer d'une machine à une autre en quelques instants.

Organisation

Afin de mener à bien la mission qui nous était confiée, nous nous sommes organisés de la manière suivante

  • Réunion hebdomadaire : Chaque vendredi (à 13 h) se déroulait une réunion sur l'avancement de la TX. Ce créneau était l'occasion de faire un compte-rendu à Stéphane Crozat et Kyâne Pichou (les deux responsables de notre TX) sur le travail effectué au cours de la semaine, ainsi que sur les difficultés rencontrées. De ce fait, nous étions en capacité de connaître la direction à prendre pour la semaine suivante. Ces réunions étaient très efficaces et très appréciables pour nous.
  • Groupe de discussion : Afin de pouvoir échanger ensemble sans pour autant avoir à attendre la réunion suivante, un channel de discussion Mattermost (nommé Suivi TX) a été créée.

Travail effectué lors de la TX

Vous trouverez ci-dessous un lien menant à la page récapitulative du travail effectué lors de la TX Picasoft P17

Organisation et travail effectué

Bilan

Cette TX aura été pour nous l'occasion d'apprendre énormément. En effet, nous avons, au cours de ces cinq mois été confrontés à un large panel de notions qui nous étaient inconnues. Cela a été pour nous l'occasion de mener un travail de recherche important, et, par la même occasion de développer des connaissances. Pouvoir utiliser des technologies qui ne sont normalement pas enseignées à l'UTC a été très appréciable. Ces outils que sont Docker, Elasticsearch ou encore Proxmox sont utilisés par de nombreuses entreprises de nos jours. De ce fait, avoir pu nous former sur de tels outils a été pour nous une vraie opportunité.

Enfin, en plus du travail “pratique” effectué, nous avons adopté une démarche de recherche tout au long de la TX. En effet, aussi bien dans les premières semaines ou nous avons porté un regard critique sur l'infrastructure, que lors de la mise en place de l'infrastructure de monitoring, nous avons été confronté à plusieurs problèmes que nous avons dû résoudre. Mener une telle démarche a été très appréciable. De plus, dans le but de pérenniser toutes nos connaissances, nous avons documenté notre travail à mesure de notre avancée, pour permettre aux futurs étudiants de TX et/ou membres de Picasoft d'avoir accès au fruit de notre réflexion. Cette TX aura donc fait appel à de nombreuses compétences, aussi bien du point de vue technique, que du point de vu expérimental, en passant par des compétences de rédaction et de synthèse.

Remerciements

Nous souhaitons remercier Kyâne Pichou et Stéphane Crozat, tous deux responsables de notre TX, pour leur aide précieuse tout au long du semestre

Contact

Pour toute question relative au travail que nous avons effectué dans la TX n'hésitez pas à nous contacter :
Antoine Rondelet
Tobias Ollive