SIDO - OSXP 2021

Vous devez être inscrit et connecté pour accéder à cette fonctionnalité

Description

Aujourd’hui, quand on parle d’API, on pense en général aux API REST. Elles sont omniprésentes, utilisent des protocoles et des formats standard, reposent sur des bases solides... Pour l’administrateur système, une API REST de type Redfish permet, par exemple, de se constituer aisément une interface de gestion hors bande multi-constructeurs. Pour autant, dans certaines situations, des contraintes peuvent empêcher de recourir à une API REST. Notamment lorsque votre système n’est pas directement accessible via le protocole HTTP. Dans ce cas, vous pouvez bien sûr toujours utiliser une API, mais reposant sur d’autres standards, comme le vénérable protocole SMTP ! Dans notre cas pratique, un système d’atelier de formation à la demande, c’est un front-end Web qui gère l’enregistrement des utilisateurs afin d’exécuter les documents Jupyter Notebooks hébergés sur un back-end accueillant l’instance Jupyterhub ainsi que tous les systèmes d’accompagnement nécessaires à la réalisation des différents ateliers proposés (sur Redfish, Git, Rust comme affiché sur https://hackshack.hpedev.io/workshops et via le portail de démo HPE WW https://hpedemoportal.ext.hpe.com/) Pour que tout ceci fonctionne parfaitement, nous avons utilisé une API SMTP, le front-end générant le contenu SMTP et le back-end utilisant procmail, des scripts et des playbooks Ansible pour gérer la configuration de l’environnement utilisateur. Une fois connecté à la plateforme, l’utilisateur peut accéder au contenu d’atelier qui lui est propre, tous les liens vers les autres systèmes étant disponibles pour effectuer les actions. Pourquoi SMTP ? Nos besoins étaient suffisamment limités pour éviter le développement d’une API REST complète (même si nous en avons également une pour le front-end), nous bénéficions gratuitement de l’aspect asynchrone de l’e-mail pour la gestion des demandes et c’est sympa d’utiliser les bonnes vieilles méthodes pour montrer aux jeunes ingénieurs qu’il existe plusieurs de faire ;-) Ça vous tente ? Venez donc découvrir comment nous avons procédé et voir comment tout cela fonctionne, depuis le déploiement automatique de la plateforme jusqu’à l’exécution d’un atelier.

Sessions Recommandées