Reproducibility and repeatability dramatically increase the value of scientific experiments, but remain two challenging goals for the experimenters. Similar to the LAMP stack that considerably eased the web developers life, in this paper, we advocate the need of an analogous software stack to help the experimenters making reproducible research. We propose the EnosStack, an open source software stack especially designed for reproducible scientific experiments. EnosStack enables to easily describe experimental workflows meant to be re-used, while abstracting the underlying infrastructure running them. Being able to switch experiments from a local to a real testbed deployment greatly lower code development and validation time. We describe the abstractions that have driven its design, before presenting a real experiment we deployed on Grid'5000 to illustrate its usefulness. We also provide all the experiment code, data and results to the community. Key-words: Repeatability, Reproducibility, Application deployment, Performance, Grid5000, Chameleon EnosStack: une pile logicielle pour l'expérimentateur basée sur le modèle de la pile LAMP Résumé :La reproducibilité et la répétabilité améliorent considérablement la valeur d'une expérience scientifique, mais s'avèrent néanmoins être des propriétés compliquées à garantir. Suivant le modèle de la pile logicielle LAMP, qui a grandement facilité la vie des dévelopeurs web, nous avançons dans ce rapport qu'une pile logicielle similaire pourrait de même venir en aide aux expérimentateurs afin de favoriser la recherche reproductible. Nous proposons la EnosStack, une pile logicielle libre, spécialement conçue pour mener des expériences scientifiques reproductibles. La EnosStack permet de facilement décrire des flux de travaux (workflows) expérimentaux voués à être exécutés de multiples fois, tout en s'abstrayant de l'infrastructure sous-jacente. Le fait de pouvoir passer, de manière transparente, d'un environnement de développement local à une réelle plateforme de test permet de fortement raccourcir le temps de développement et de validation. Dans ce rapport, nous décrivons les abstractions qui ont motivé le design de la EnosStack, avant de présenter une réelle expérience déployée sur Grid'5000 afin d'illustrer ses bénéfices. Nous fournissons de plus à la communauté tout le code qui a servi aux expériences, les données brutes ainsi que les résultats.
Abstract-By massively adopting OpenStack for operating small to large private and public clouds, the industry has made it one of the largest running software project, overgrowing the Linux kernel. However, with success comes increased complexity; facing technical and scientific challenges, developers are in great difficulty when testing the impact of individual changes on the performance of such a large codebase, which will likely slow down the evolution of OpenStack. Thus, we claim it is now time for the scientific community to join the effort and get involved in the development of OpenStack, like it has been once done for Linux.In this spirit, we developed Enos, an integrated framework that relies on container technologies for deploying and evaluating OpenStack on any testbed. Enos allows researchers to easily express different configurations, enabling fine-grained investigations of OpenStack services. Enos collects performance metrics at runtime and stores them for post-mortem analysis and sharing. The relevance of the Enos approach to reproducible research is illustrated by evaluating different OpenStack scenarios on the Grid'5000 testbed.
International audienceToday's large-scale computations, e.g., in the Cloud, are subject to a multitude of risks concerning the divulging and ownership of private data. Privacy risks are mainly addressed using a large variety of encryption-based techniques. However, these are costly to operate, lead to large aggregates of data that are highly valuable attack targets and do not allow to flexibly handle subsets of such aggregates. Furthermore, today's computations have to ensure privacy properties in the context over highly variable and complex software compositions; however, no general support for the declarative definition and implementation of privacy-preserving applications has been put forward. In this article, we present a compositional approach to the declarative and correct composition of privacy-preserving applications in the Cloud. Our approach provides language support for the compositional definition of encryption- and fragmentation-based privacy-preserving algorithms. This language comes equipped with a set of laws that allows us to verify privacy properties. Finally, we introduce implementation support in Scala that ensures certain privacy properties by construction using advanced features of Scala's type system
With the arrival of the edge computing a new challenge arise for cloud applications: How to benefit from geo-distribution (locality) while dealing with inherent constraints of wide-area network links? The admitted approach consists in modifying cloud applications by entangling geo-distribution aspects in the business logic using distributed data stores. However, this makes the code intricate and contradicts the software engineering principle of externalizing concerns. We propose a different approach that relies on the modularity property of microservices applications: (i) one instance of an application is deployed at each edge location, making the system more robust to network partitions (local requests can still be satisfied), and (ii) collaboration between instances can be programmed outside of the application in a generic manner thanks to a service mesh. We validate the relevance of our proposal on a real use-case: geo-distributing OpenStack, a modular application composed of 13 million of lines of code and more than 150 services.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.