Retour aux événements

Hackathon DevOps & Monitoring ENSEEIHT 2019

Cette page présente une version détaillée des instructions pour le hackathon DevOps / Monitoring / Observabilité organisé par Bleemeo pour les étudiants de l'ENSEEIHT en Décembre 2019.

Introduction

Bleemeo propose aux étudiants de l'ENSEEIHT de venir découvrir les problématiques DevOps et du Monitoring/Observabilité à travers un hackathon organisé dans les locaux de l'ENSEEIHT.

Ce hackathon est gratuit et ouvert à toutes et à tous.

L'objectif est de sensibiliser à ces notions, qui sont peu abordées lors de la scolarité, mais sont aujourd'hui très prisées dans l'industrie. Ces notions vous serons expliquées et détaillées en préambule de ce hackathon. Aucune connaissance préalable n'est nécessaire, ni en DevOps, ni en monitoring. Les équipes de Bleemeo et de Toulouse DevOps vous accompagnerons pendant l'après-midi pour vous guider et répondre à vos questions techniques.

Déroulé de l'événement

  • 13h00-14h00: une courte intro sur les concepts + définition des objectifs du hackathon
  • 14h00-18h00: après-midi pour développer et déployer le développement en équipes de 3 à 5 personnes
  • 18h00-19h00: soutenance de 5min devant le jury et remise des prix 🏆
  • 19h00: buffet de clôture 🍕 🍻

Objectif du Hackathon

Lors de ce hackathon, vous aurez à développer dans le langage de votre choix et à déployer sur un serveur dans le cloud une application en respectant les bonnes pratiques de l'observabilité.

En cette période de Noël, vous aurez à mettre en place une application web qui permet de gérer un Secret Santa. Vous trouverez tous les détails du Secret Santa sur la page Wikipedia: https://fr.wikipedia.org/wiki/Secret_Santa. Lors d'un Secret Santa, les personnes d'un groupe s'offrent des cadeaux au hasard. Dans notre cas, notre application permettra:

  • saisir les noms des personnes participant au tirage au sort via un formulaire
  • permettre le tirage au sort entre les cadeaux représentés par un numéro et les noms précédemment rentrés
  • visualiser le résultat du tirage au sort
  • afin de simuler le pic de charge des résultats du tirage au sort (et d'éviter des graphes complètement plat), vous pourrez mettre en place un simulateur de charge pour la page de visualisation

L'application web peut-être développée dans le langage de votre choix. Les librairies Prometheus qui permettent d'instrumenter votre code sont disponibles ici: https://prometheus.io/docs/instrumenting/clientlibs/. Nous vous recommandons pour des raisons de rapidité de choisir un langage supporté par ces librairies. Mais nous ne l'imposons pas. Certains frameworks web (Django) proposent également des librairies de plus haut niveau. N'hésitez pas à nous demander ou à regarder sur votre moteur de recherche préféré.

Déroulement du Jury

Devant le jury, vous devrez en 5 min:

  • présenter votre application, faire une démonstration de son fonctionnement (saisie nom, tirage au sort, visualisation du résultat)
  • présenter le monitoring mis en place pour votre machine et pour l'application: checks, dashboards, métriques, ...

Aucun slide n'est demandé, une présentation orale avec projection de l'application suffit.

Les points suivants seront pris en compte par l'évaluation du jury:

  • Supervision système de la machine AWS EC2 fournie
  • Mise en place de métriques applicatives (nombre de requêtes, etc.)
  • Mise en place de dashboards pour grapher les métriques
  • Mise en place d'un check externe permettant de s'assurer de la disponibilité de l'application

Des points bonus seront accordés pour le déploiement propre de l'application (Docker, systemd, ...), pour la beauté de l'UI ou tout autre point que le jury jugerait pertinent de bonifier 🤩.

Outils mis à disposition

Les outils suivants sont mis à votre disposition:

  • Une instance EC2 avec un accès root (vous aurez accès après avoir fourni une clé SSH à l'un des organisateurs)
  • Un compte Bleemeo pour avoir les métriques Prometheus de votre application et le monitoring système. Faites un signup sur https://bleemeo.com/trial/
  • Un chat pour communiquer entre vous et avec les organisateurs à https://chackathon.bleemeo.com

Boite à astuces

Quelques astuces et commandes / liens utiles pour la réalisation de ce hackathon: