Dynamic Resources Allocation in Grid Enviroments Marius Ion, Florin Pop, Ciprian Dobre, Valentin Cristea Faculty of Automatics and Computer Science, University “Politehnica” of Bucharest, Romania Emails: marius.ion85@gmail.com, florin.pop@cs.pub.ro, ciprian.dobre@cs.pub.ro, valentin.cristea@cs.pub.ro Abstract—This paper presents DyAG, an innovative solution for dynamic allocation of resources for services workflows in Grid enviroments. The proposed solution is responsible with the effi- cient mapping of the services which make up a Business Process Execution Language workflow onto resources, represented by Web Services, from the Grid enviroment. The presented solution is part of a framework that aims to allow the deployment of large scale workflow enabled scientific applications from a wide range of research fields onto the Grid. A series of allocation policies is considered, but the DyAG also allows the users to dynamically change the policy employed by the scheduler at runtime, through a class loading mechanism. This allows the employment of application profiling techniques in order to finely tune the scheduler in accordance with the characteristics of the environment it is running in, either by changing the various parameters of the policies proposed, or by loading completely new policies. Keywords Resources Allocation, Workflow Applications, Grid Environment, SOA, Monitoring I. I NTRODUCTION Grid Computing relies on a large number of individual computers interconnected through a private or public network such as the Internet. The loose coupling of the elements that form a computing grid make it highly scalable: computing grids range in dimension from only a few computers connected through a local area network (enterprise computing grids) to continental and intercontinental computing grids such as the EGEE Grid (Enabling Grids for E-SciencE Grid) [2] and the TeraGrid [15], which provide computing power in the range of hundreds of teraflops. Grid Computing facilitates the access to computing resources that are geographically dispersed, and allows users access to remote resources that are underutilized. Another important objective for Grid Computing is to allow users to easily share data between them, typically in the form of files that are being jointly produced and used by collaborators in disparate locations. To this day, the Globus Toolkit [5] remains the de facto standard for building grid solutions and it is based on OGSA (Open Grid Service Architecture). In 2007 the term cloud computing came into popularity, which is conceptually similar to the canonical Foster definition of grid computing (in terms of computing resources being consumed as electricity is from the power grid). In a distributed environment (e.g. Grids) discrete software agents must work together to perform some tasks. Further- more, the agents in a distributed system do not operate in the same processing environment, so they must communicate by hardware/software protocol stacks over a network. This means that communications with a distributed system are intrinsically less fast and reliable than those using direct code invocation and shared memory. This has important architectural impli- cations because distributed systems require that developers (of infrastructure and applications) consider the unpredictable latency of remote access, and take into account issues of concurrency and the possibility of partial failure [10]. A service oriented architecture (SOA) is a good solution to increas the abstraction level for communication, allowing applications to bind to services that evolve and improve over time without requiring modification to the applications that consume them. The advantages of SOA determined its adoption into Grid systems at a time when this concept was relatively new. This model was based on the existence of several layers, which were arranged in a way similar to an hourglass: the narrow part at the center corresponding to a small set of protocols and basic abstractions, on top of which a large number of components can be mapped, and underneath a large variety of low level technologies. Grid Services can be aggregated in order to fulfill the needs of the Virtual Organizations. This new model, known as OGSA, aimed to align the Grid technologies with the web services standards. The advantages of this technology are the possibility to automatically generate code from the WSDL description, the possibility to discover services through the use of public catalogs, the association between the description of the services and inter operable network protocols, etc. The OGSA model has been implemented in the Globus Toolkit. The widely spread gLite middleware (especialy Workload Management System) is also based on a Service Oriented Architecture [11]. In this context, the dynamic resourses allocation improve the execution of workflow applications and allow users to define the adecvate policies. The most challenging issue is to allow users to dynamically change the policy employed by the scheduler at runtime, through a class loading mechanism. This allows the employment of application profiling techniques in order to finely tune the scheduler in accordance with the characteristics of the environment it is running in, either by changing the various parameters of the policies proposed, or by loading completely new policies. The paper presents in Section 2 the Service Oriented Ar- chitecture paradigm and related work based on this paradigm for resource allocation. In the third section it is presented the