78 research outputs found
A Generic Deployment Framework for Grid Computing and Distributed Applications
Deployment of distributed applications on large systems, and especially on
grid infrastructures, becomes a more and more complex task. Grid users spend a
lot of time to prepare, install and configure middleware and application
binaries on nodes, and eventually start their applications. The problem is that
the deployment process is composed of many heterogeneous tasks that have to be
orchestrated in a specific correct order. As a consequence, the automatization
of the deployment process is currently very difficult to reach. To address this
problem, we propose in this paper a generic deployment framework allowing to
automatize the execution of heterogeneous tasks composing the whole deployment
process. Our approach is based on a reification as software components of all
required deployment mechanisms or existing tools. Grid users only have to
describe the configuration to deploy in a simple natural language instead of
programming or scripting how the deployment process is executed. As a toy
example, this framework is used to deploy CORBA component-based applications
and OpenCCM middleware on one thousand nodes of the French Grid5000
infrastructure.Comment: The original publication is available at http://www.springerlink.co
Vers un environnement multi personnalités pour la configuration et le déploiement d'applications à base de composants logiciels
La multiplication des langages de description d'architectures, des modèles et des plates-formes de composants pose un sérieux dilemme aux architectes d'applications à base de composants logiciels. D'un côté, ils doivent choisir un langage pour exprimer des configurations concrètes qui seront déployées automatiquement sur des plates-formes d'exécution. D'un autre côté, ils désirent capitaliser leurs architectures logicielles indépendamment des langages de description et des plates-formes d'exécution. Pour résoudre ce problème, nous proposons un environnement multi personnalités pour la configuration et le déploiement d'applications à base de composants logiciels. Celui-ci est constitué d'un noyau central capturant un modèle canonique de configuration et de déploiement et d'un ensemble de personnalités adaptées aux langages et aux plates-formes. Cet article décrit l'architecture de cet environnement et discute des personnalités pour les modèles de composants CORBA et Fractal. –––––The multiplication of architecture description languages, component models and platforms implies a serious dilemma for component based software architects. On the one hand, they have to choose a language to describe concrete configurations which will be automatically deployed on execution platforms. On the other hand, they wish to capitalize their software architectures independently of any description languages or platforms. To solve this problem, we propose a multi personalities environment for the configuration and the deployment of component based applications. This environment is composed of a core capturing a canonical model of configuration and deployment, and a set of personalities tailored to languages and platforms. This paper details the architecture of such an environment and describes the personalities for the CORBA and Fractal component models
Une Infrastructure Ă Composants pour des Applications Ubiquitaires
National audienceLa multiplication des terminaux mobiles et la généralisation des réseaux sans fil impliquent des changements dans la conception et l'exécution des applications logicielles. La problématique est maintenant clairement identifiée sous le terme informatique ubiquitaire. Nous présentons dans ce papier une infrastructure dédiée aux services contextuels ubiquitaires. Ceux-ci sont conçus sous la forme d'assemblages de composants logiciels distribués et découverts dynamiquement en fonction de la localisation du terminal utilisateur et de ses caractéristiques, puis automatiquement déployés sur ce dernier. Nous avons implanté cette infrastructure, ainsi qu'un exemple de service, au dessus du modèle de composants CORBA de l'OMG et de la plate-forme libre OpenCCM
CIAO: A Component Model and its OSGi Framework for Dynamically Adaptable Telephony Applications
International audienceIn recent years, thanks to new IP protocols like SIP, telephony applications and services have evolved to other and combine a variety of communication forms including presence status, instant messaging and videoconference. As a result, advanced telephony applications now consist of distributed entities that are involved into multiple heterogeneous, stateful and long-running interactions (sessions). This evolution complicated significantly applications development and calls for more effective solutions. In this paper, we explore the adoption of components for addressing this issue, focusing specifically on the management and coordination of the numerous and various sessions occurring in such applications. The paper presents CIAO, a domain-specific and hierarchical component model for SIP applications. CIAO combines three kinds of component that are Actor, SessionPart and Role and manage them dynamically in accordance with real SIP sessions. By using these features, we are able to break the complexity of SIP entities and provide flexibility for their development. CIAO is implemented above OSGi to experiment the building of concrete SIP applications and enable their dynamic adaptation
A service discovery and automatic deployment component-based software infrastructure for Ubiquitous Computing
International audienceSoftware applications running on mobile devices are more and more needed. These applications have strong requirements to address: device heterogeneity, limited resources, networked communications, and security. Moreover it is required to have appropriate application design, discovery, deployment, and execution paradigms. These requirements are similar to those of any ubiquitous computing application. In this paper, we present a component-based software infrastructure to design, discover, deploy, and execute ubiquitous computing contextual applications. Applications are designed as assemblies of distributed software components. These assemblies are dynamically discovered according to end-users' physical location and device capabilities. Then appropriate assemblies are automatically deployed on users' devices. Ubiquitous contextual services and our software infrastructure are built on top of the OMG's CORBA Component Model (CCM) and are implemented using the OpenCCM platform. As illustration, a service to get information about departure trains is described in detail
A Component-based Software Infrastructure for Ubiquitous Computing
(c) IEEE - The original publication is available at http://www.ieee.orgInternational audienceMultiplication of mobile devices and generalized use of wireless networks imply changes on the design and execution of distributed software applications targeting ubiquitous computing. Many strong requirements have to be addressed: heterogeneity and limited resources of wireless networks and mobile devices, networked communications between distributed applications, dynamic discovery and automatic deployment on mobile devices. In this paper, we present a component-based software infrastructure to design, discover, deploy, and execute ubiquitous contextual services, i.e. distributed applications providing services to mobile end-users but only available from a particular place. These ubiquitous contextual services are designed as assemblies of distributed software components. These assemblies are dynamically discovered according to end-users' physical location and device capabilities. Then, appropriate assemblies are automatically deployed on users' devices. We have implemented this approach (the software infrastructure and a ubiquitous application example) on top of the OMG CORBA Component Model and the OpenCCM open source platform
Deploying on the Grid with DeployWare
In Proceedings of the 8th IEEE International Symposium on Cluster Computing and the Grid (TO APPEAR)International audienceIn this paper, we present DeployWare to address the deployment of distributed and heterogeneous software systems on large scale infrastructures such as grids. Deployment of software systems on grids raises many challenges like 1) the complexity to take into account orchestration of all the deployment tasks and management of software dependencies, 2) the heterogeneity of both physical infrastructures and software composing the system to deploy, 3) the validation to early detect errors before concrete deployments and 4) scalability to tackle thousands of nodes. To address these challenges, DeployWare provides a metamodel that abstracts concepts of the deployment, a virtual machine that executes deployment processes on grids from DeployWare descriptions, and a graphical console that allows to manage deployed systems, at runtime. To validate our approach, we have experimented DeployWare with a lot of software technologies, such as CORBA and SOA-based systems, on one thousand of nodes of Grid'5000, the french experimental grid infrastructure
Une démarche orientée modèle pour déployer des systèmes logiciels répartis
Revues des Sciences et Technologies de l'Information - "L'Objet, logiciel, base de données, réseaux" (RSTI série)International audienceDeployment of distributed systems involves many heterogeneous technologies. The system administrator has to 1) master the deployment of each technology, 2) adapt it to machine properties and 3) execute it in respect with its order dependencies. These tasks are strongly prone to errors. In this article, we present DeployWare, a model-based approach for complex distributed systems deployment. This approach relies on a metamodel split in two parts. The first allows us to describe properties, dependencies, and actions to perform to deploy software. The second allows us to compose many software instances. This metamodel allows some behavioural deployment verifications to be performed. DeployWare models can be projected onto a component-based execution platform which manages automatically machine's heterogeneity and orchestration of dependencies.Le déploiement de systèmes distribués met en jeu de nombreuses technologies hétérogènes. L'administrateur système doit 1) maîtriser le déploiement de chaque logiciel, 2) l'adapter aux propriétés des machines et 3) l'exécuter en respectant l'ordre de ses dépendances. Ces tâches sont fortement propices aux erreurs. Dans cet article, nous présentons DeployWare, une approche à base de modèles pour le déploiement de systèmes distribués complexes. Cette approche repose sur un méta-modèle en deux parties. La première permet de décrire les propriétés, les dépendances et actions à effectuer pour déployer des logiciels. La seconde permet d'assembler des instances de logiciels. Ces deux parties sont réalisées de manière à rendre possible la vérification comportementale des procédures de déploiement et des systèmes. Les modèles DeployWare sont projetés vers une plate-forme d'exécution à base de composants qui gère automatiquement l'hétérogénéité des machines et l'orchestration des dépendances
- …