TX Printemps 2018 : Backup, Docker et Sécurité

La TX Infra P18 a pour objectif premier d'améliorer les systèmes de sauvegarde mis en place sur l'infrastructure de Picasoft. Après une analyse de l'existant, elle part du constat que le système de sauvegarde des bases de données utilise beaucoup trop d'espace disque et n'est donc pas viable dans le temps vu la quantité croissante de données produites par les services hébergés par Picasoft. D'autre part, la fonctionnalité de snapshots des machines virtuelles intégrée de Proxmox permet de sauver rapidement l'état d'une VM mais n'est réellement efficace que si cette sauvegarde est externalisée. L'externalisation amène des problématiques concernant l'accès à l'infrastructure afin de récupérer les snapshots produits qui doit être sécurisé, ainsi que la confidentialité des données externalisées.

Dans un premier temps, nous avons réécrit complètement le système de rotation et mis en place une configuration effectuée à partir d'un fichier JSON. Afin de centraliser les informations uniquement dans ce fichier de configuration, nous avons adapté le système de sauvegarde des bases de données existant qui définissait auparavant les services à sauvegarder au sein du fichier docker-compose.yml. Le point de configuration est désormais unique et permet de définir à la fois la liste des services à sauvegarder et les fréquences de rotation de ces sauvegardes.

Dans un deuxième temps, nous avons écrit un hook script, appelé par Proxmox à chaque production de snapshots, qu'elle soit déclenchée de manière automatique ou manuelle. Ce hook script nous a permis de centraliser l'insertion de méta-datas dans le nom de l'archive produite (nom de l'hyperviseur, nom de la VM, etc…), le chiffrement du snapshot, la synchronisation sur l'autre hyperviseur, ainsi que la rotation des snapshots.

Cette TX a été réalisée par Samuel BARDIERE et Alexandre-Guillaume GILBERT.