Nowadays, the consolidation of application servers is the most common use for current virtualization solutions. Each application server takes the form of a Virtual Machine (VM) that can be hosted into one physical machine. For this purpose, each physical node has to load a component called the Virtual Machine Monitor (VMM). This software is in charge of managing and allocating the physical resources across multiple virtual machines. M In a default implementation, the VMM scheduler is configured to handle equally all of the virtual machines that run on a single machine. As a consequence, the scheduler shares equally all of the available physical CPU resources among the running VMs. c However, when the applications that run in the virtual machines change dynamically their resource requirements, a different solution is needed.
Furthermore, if the resource usage is associated with service level agreements (SLA), a predefined equal share of the processor power is insufficient for the VMs. Therefore, if the virtualization layer is not aware of the application-level requirements, it can neither determine the amount of resources needed by each application, nor make dynamic adjustments according to demand. n Currently, virtualization solutions offer primitives to slice the CPU resources. However, this primitives are based on the VMM scheduler facilities. That is, the quantum of the CPU-time that a VM can consume is defined mostly by a weighting mechanism such as proportional share. Therefore, the performance of each application is highly dependent of the weights assigned to each VM, the number of VMs, and the current workloads. p In this thesis, we present an approach to efficiently manage the QoS (Quality of Service) of virtualized resources in multi-core machines. We evaluate different alternatives within Xen for building an enhanced management of virtual CPU resources. We compare these alternatives in terms of performance, flexibility, and ease of use. We devise an architecture to build a high-level service which combines inter- virtual-machines communication mechanisms with monitoring and control primitives for local resource management. We achieve this by our solution, a local resource manager (LRM) which adjusts the resources needed by each VM according to an agreed QoS. The LRM has been implemented as a prototype and deployed on Xen-virtualized machines. p The contributions of this research are described in the following three important aspects. T *Unattended administration: a delegation mechanism to help in the management of VM-based large-scale systems. *Fine-grain allocation: a proposal to improve the use of the physical resources.
*Intelligent management: a configurable self-adapting component (for the virtualization layer) aware of the application-level requirements. * We evaluated our research contributions through the experimental results obtained under different workload scenarios. To stress the physical nodes, we benchmark our VM-based resource providers with synthetic programs and web applications under different configurations. The algorithms, low-level virtualization functions, and the components of the LRM are developed and tested in a real networking environment. We measure and compare the running application's performance in the hosted OSs and the performance efficiency of the competing VMs. r By means of experiments we show that the implemented management component can meet the Service Level Objectives (SLOs) even under dynamic conditions by adapting the resources assigned to the virtualized machines according to demand. With the LRM we achieve therefore both fine-grain resource allocation and efficient assignment.
© 2001-2024 Fundación Dialnet · Todos los derechos reservados