The Architecture of the XtreemOS Grid Checkpointing Service [chapter]

John Mehnert-Spahn, Thomas Ropars, Michael Schoettner, Christine Morin
2009 Lecture Notes in Computer Science  
The EU-funded XtreemOS project implements a grid operating system (OS) transparently exploiting distributed resources through the SAGA and POSIX interfaces. XtreemOS uses an integrated grid checkpointing service (XtreemGCP) for implementing migration and fault tolerance. Checkpointing and restarting applications in a grid requires saving and restoring applications in a distributed heterogeneous environment. The latter may spawn millions of grid nodes using different system-specific
more » ... saving and restoring application and kernel data structures on a grid node. In this paper we present the architecture of the XtreemGCP service integrating existing checkpointing solutions. Our architecture is open to support different checkpointing strategies that can be adapted according to evolving failure situations or changing application requirements. We propose to bridge the gap between grid semantics and system-specific checkpointers by introducing a common kernel checkpointer API that allows using different checkpointers in a uniform way. Furthermore, we discuss other grid related checkpointing issues including resource conflicts during restart, security, and checkpoint file management. Although this paper presents a solution within the XtreemOS context it can be applied to any other grid middleware or distributed OS, too. Architecture du service de sauvegarde de points de reprises dans XtreemOS Résumé : Le projet européen XtreemOS a pour objectif de fournir un système d'exploitation de grille offrant un accès transparent aux ressources de la grille au travers des interfaces SAGA et POSIX. Au sein d'une grille XtreemOS, la migration d'applications et la tolérance aux fautes sont fondées sur un service de sauvegarde de points de reprise appelé XtreemGCP. Dans une grille composée d'un grand nombre de noeuds, les mécanismes disponibles pour sauvegarder l'état des applications diffèrent selon les noeuds. Dans cet article nous présentons l'architecture du service XtreemGCP. Cette architecture permet d'intégrer différentes solutions de sauvegarde de points de reprise disponibles sur un noeud et fournit différents protocoles de sauvegarde de points de reprises pouvantêtre adaptés en fonction de l'état du système. Pour faire le lien entre les concepts utilisésá l'échelle de la grille et ceux utilisés par les systèmes d'exploitation classiques, nous proposons une API générique pour les systèmes de sauvegarde de point de reprise au niveau noyau. Cette API permet d'utiliser ces systèmes de manière uniforme. Dans cet article nous traitons aussi d'autres difficultés relativesà la sauvegarde de points de reprise dans les grilles comme les problèmes de conflits d'identifiants au redémarrage des applications, les problèmes liésà la sécurité ou encore la gestion des fichiers de points de reprise. Les solutions décrites dans cet article sont présentées dans le cadre d'XtreemOS, mais sont suffisamment génériques pour pouvoirêtre appliquées dans d'autres systèmes de grille.
doi:10.1007/978-3-642-03869-3_42 fatcat:n3ciu7huwrhzjok43mudcxvjky