Software consolidation as an efficient energy and cost saving solution

https://doi.org/10.1016/j.future.2015.11.027Get rights and content

Highlights

  • We investigate resource management strategies in virtualized cloud.

  • We propose a software consolidation system atop of virtual machines.

  • We evaluate the benefits of our solution in terms of energy saving in our private cloud.

  • We evaluate the benefits of our solution in terms of money saving in Amazon EC2.

Abstract

Virtual machines (VM) are used in cloud computing environments to isolate different software. They also support live migration, and thus dynamic VM consolidation. This possibility can be used to reduce power consumption in the cloud. However, consolidation in cloud environments is limited due to reliance on VMs, mainly due to their memory overhead. For instance, over a 4-month period in a real cloud located in Grenoble (France), we observed that 805 VMs used less than 12% of the CPU (of the active physical machines). This paper presents a solution introducing dynamic software consolidation. Software consolidation makes it possible to dynamically collocate several software applications on the same VM to reduce the number of VMs used. This approach can be combined with VM consolidation which collocates multiple VMs on a reduced number of physical machines. Software consolidation can be used in a private cloud to reduce power consumption, or by a client of a public cloud to reduce the number of VMs used, thus reducing costs. The solution was tested with a cloud hosting JMS messaging and Internet servers. The evaluations were performed using both the SPECjms2007 benchmark and an enterprise LAMP benchmark on both a VMware private cloud and Amazon EC2 public cloud. The results show that our approach can reduce the energy consumed in our private cloud by about 40% and the charge for VMs on Amazon EC2 by about 40.5%.

Introduction

In recent years, cloud computing has emerged as one of the best solutions to host applications for companies or individual users. For these cloud customers (hereafter called clients), its pay-per-use model reduces the cost compared to using internal IT resources. For cloud providers (hereafter called providers) one of the main challenges is limiting energy consumption in their data centers. In 2010, for example, data centers consumed approximately 1.1%–1.5% of the world’s energy  [1]. Energy consumption can be minimized by limiting the number of active physical machines (PM) through sharing the same PM between several software applications and providing dynamic software consolidation (filling unused resources by grouping software). This helps to balance the variable workload (Fig. 1 top presents an example of workload variation at Facebook) due to the departure of some software.

In this paper, we considered an SaaS-based cloud model, such as RightScale  [4]. This type of cloud provides a fully customizable environment, allowing clients, e.g. companies, to focus on applications. The SaaS provider offers a software catalog. Clients can select an application and request its start in a virtualized data center. The data center may belong either to the SaaS provider (private cloud), or be part of a public cloud; alternatively it can be a mixture of the two (hybrid cloud). The SaaS provider is responsible for managing the clients’ software (scalability, highly-available, failover, etc.) while efficiently managing resources to reduce data center costs: power consumption when relying on its own private cloud, or resource charged for when using a public cloud.

Advances in virtualization make transparent dynamic consolidation possible in the cloud. Based on this technology, the cloud runs each software application on a separate virtual machine (VM). Many studies  [5], [6], [7], [8] have described algorithms providing software consolidation through the consolidation of VMs. However, this approach is not sufficient since an infinite number of VMs cannot be packed into a single PM, even when the VMs are underused and the PM has sufficient computation power. Indeed, as argued by  [9], VM packing is limited by memory. In this paper, we therefore propose a solution consolidating software onto VMs. This solution is complementary to VM consolidation. Rather than dedicating one VM to each software, we propose that the same VM be shared between several software applications. This will fill the gaps remaining inside the VM, as mentioned earlier. Fig. 2 illustrates the benefits of this solution for VMs which are already at the minimum size allowed by the cloud. Using our strategy frees 2 PMs, while VMs consolidation alone only frees 1 PM. This strategy also reduces the total number of VMs (from 4 to 2 in the illustration). This is very important in a commercial cloud to reduce the charge for VMs. Fig. 1 bottom shows the average CPU usage by 805 VMs running on 66 PMs in a real virtualized cloud located in Grenoble (France) over 4 months. Each peak on the curve represents a significant variation in workload. For each VM, less than 12% of the CPU is used, but by applying our approach a single VM can host the workload of 8 VMs. This reduces the number of VMs running from 805 to about 101, and the number of active PMs from 66 to 9.

Software consolidation raises two main challenges that need to be addressed:

  • Software isolation. Isolation ensures that if a software application fails it does not compromise the execution of another software application, it also stops software from “stealing” the resources allocated to another application.

  • Software migration. Migration involves moving software from its current node to another node without interrupting the service offered by the software, and while avoiding Service Level Agreement (SLA) violations on the migrated software.

In this paper we focus only on the live migration and consolidation mechanisms. For software isolation, we rely on Docker  [10]. Docker can package an application in a virtual container, that runs processes in isolation. We present a solution to consolidate software on VMs (Section  2) based on a Constraints Programming (CP) solver. The gain of our approach is modeled in terms of power and cost savings, while limiting the consolidation-related risk to performance. The genericity of the solution allows the integration of a range of live software migration mechanisms since this operation is specific to software. We present a sample migration for JMS messaging servers and LAMP servers (Section  3) which are commonly and widely deployed in the cloud. We evaluated our approach using the SPECjms2007 benchmark  [11] and an enterprise Internet application benchmark (Section  4) in the context of an SaaS offering messaging and Internet software on a private VMware cloud in our laboratory and on the Amazon EC2 cloud. These evaluations showed that: (1) our approach results in reduced power consumption and costs; and (2) the efficient live migration algorithms implemented for JMS messaging and Internet web servers are viable. For the specific workload assessed, our solution reduces the electricity consumption in our private cloud by about 40% when software consolidation is combined with VM consolidation. Running the same workload on Amazon EC2 leads to a reduction in VMs charged of about 40.5%. The paper ends by presenting related work in Section  5; a discussion about the usability of the solution is provided in Section  6; and a conclusion is provided in Section  7.

Section snippets

Software consolidation

Like VMs, software consolidation is an NP-hard  [12] problem. This section presents a solution that allows software consolidation in the context of an SaaS platform.

Use cases

This work was conducted conjointly with two industrial groups: Scale Agent and Eolas. The former provides an implementation of the JMS specification, while the latter is an SaaS provider offering Internet services. We used our solution to manage an SaaS offering both a messaging service (such as IronMQ  [16] and AmazonSQS  [17]) provided by Joram  [18] software, and an Internet service based on a LAMP architecture. This section presents the two use cases and the migration algorithms

Evaluations

We evaluated our solution to show the benefits of software consolidation on top of VM consolidation. These benefits are shown in terms of energy and cost savings. The efficiency and scalability of CSP-based consolidation methods were evaluated in  [6], [19]. As mentioned in the previous section, the SaaS we considered offers two applications: a JMS messaging application (with Joram) and a web application (with LAMP). Before assessing the energy and cost savings, we first evaluated the migration

Related work

Memory footprint improvements. Significant research has been devoted to improving workload consolidation in data centers. Some studies have investigated reducing the VM memory footprint to increase the VMs’ consolidation, when a VM is dedicated to a single software. Among these, memory compression and memory over commitment  [23], [24], [25], [26] are very promising. In the same vein,  [27] extends the VM ballooning technique to software to increase the density of software collocation on the

Discussion

The work presented in this paper does not re-invent the wheel. We propose an effective transposition of VM consolidation (a widely and commonly approved solution for energy saving in a IaaS) into software consolidation. In addition to energy saving, we show how this solution can be benefited (in terms of cost saving) for public cloud customers (clients). As we argued in the Introduction, a software collocation solution must provide isolation mechanisms, which are the main advantages of VMs. We

Conclusion

In this paper we proposed a solution to consolidate software onto VMs to reduce power consumption in a private cloud and the number of VMs charged for in a public cloud. We focused on the algorithms for live migration and consolidation. Although the proposed solution can integrate other live software migration algorithms, we demonstrated that the algorithms were efficient for JMS messaging and web servers. The consolidation algorithm was inspired by Entropy, which treats VM consolidation based

Acknowledgments

This work is supported by the French Fonds National pour la Societe Numerique (FSN) and Poles Minalogic, Systematic and SCS, through the FSN Open Cloudware project.

Alain Tchana received his Ph.D. in Computer Science in 2011, at the IRIT laboratory, Institute National Polytechnique de Toulouse, France. Since November 2011 he is a Postdoctor at University of Grenoble (UJF/LIG). He is a member of the SARDES research group at LIG laboratory (UJF/CNRS/Grenoble INP/INRIA). His main research interests are in autonomic computing, Cloud Computing, and Green Computing.

References (51)

  • Jonathan Koomey, Growth in data center electricity use 2005 to 2010, A report by Analytics Press, completed at the...
  • Ozlem Bilgir, Margaret Martonosi, Qiang Wu, Exploring the potential of CMP core count management on data center energy...
  • Inkwon Hwang, Massoud Pedram, othy Kam, A study of the effectiveness of CPU consolidation in a virtualized multi-core...
  • RightScale Cloud Management, in www.rightscale.com/  (visited on April...
  • Alain Tchana, Giang Son Tran, Laurent Broto, N. De Palma, Daniel Hagimont, Two levels autonomic resource management in...
  • Fabien Hermenier, Xavier Lorca, Jean-Marc Menaud, Gilles Muller, Julia Lawall, Entropy: a consolidation manager for...
  • Zhenhuan Gong, Xiaohui Gu, PAC: Pattern-driven application consolidation for efficient cloud computing, in: MASCOT...
  • Hui Lv, Yaozu Dong, Jiangang Duan, Kevin Tian, Virtualization challenges: a view from server consolidation perspective,...
  • C. Norris, H. M. Cohen, B. Cohen, Leveraging ibm ex5 systems for breakthrough cost and density improvements in...
  • Docker: www.docker.com  (visited on September...
  • SPECjms2007: industry-standard benchmark for evaluating the performance of enterprise message-oriented middleware...
  • A. Karve, T. Kimbrel, G. Pacifici, M. Spreitzer, M. Steinder, M. Sviridenko, A. Tantawi, Dynamic placement for...
  • N. Jussien, G. Rochart, X. Lorca, The CHOCO constraint programming solver, in: OSSICP...
  • Frédéric Benhamou, Narendra Jussien, Barry O’Sullivan, Trends in constraint programming, in: ISTE...
  • CLIF: http://clif.ow2.org/  (visited on September...
  • IronMQ: The Message Queue for the Cloud, in http://www.iron.io/mq  (visited on April...
  • Amazon Simple Queue Service (Amazon SQS), in http://aws.amazon.com/sqs/  (visited on April...
  • JORAM: Java (TM) Open Reliable Asynchronous Messaging, in http://joram.ow2.org/  (visited on April...
  • Carlo Curino, Evan P.C. Jones, Samuel Madden, Hari Balakrishnan, Workload-aware database monitoring and consolidation,...
  • VMWare Distributed Power Management (DPM), Technical White Paper, 2010 in...
  • Neotys, NeoLoad: load test all web and mobile applications, 2012, October in...
  • Anton Beloglazov et al.

    Energy-aware resource allocation heuristics for efficient management of data centers for Cloud computing

    Future Gener. Comput. Syst.

    (2012)
  • Prateek Sharma, Purushottam Kulkarni, Singleton: System-wide page deduplication in virtual environments, in: HPDC...
  • Diwaker Gupta et al.

    Difference engine: harnessing memory redundancy in virtual machines

    Commun. ACM Mag.

    (2010)
  • Sean Barker, Timothy Wood, Prashant Shenoy, Ramesh Sitaraman, An empirical study of memory sharing in virtual machines,...
  • Cited by (32)

    • Application of virtual machine consolidation in cloud computing systems

      2021, Sustainable Computing: Informatics and Systems
    • Energy, performance and cost efficient cloud datacentres: A survey

      2021, Computer Science Review
      Citation Excerpt :

      However, scheduling in a hybrid platform and consolidation of workloads in terms of energy consumption are not investigated. Tchana et al. [113,114] observed that VMs are, largely, underutilized in certain cloud datacentres; and proposed a solution called software consolidation. Software consolidation accommodate several applications, dynamically, on the same VM to minimize the number of used VMs.

    • A survey of data center consolidation in cloud computing systems

      2021, Computer Science Review
      Citation Excerpt :

      Moreover, memory overhead of VMs limits the consolidation possibilities. For example, in a real cloud located in France, Tchana et al. observed, over a four month period, that 805 VMs used less than 12% of the active PMs CPU [11]. Although the focus was initially on VM consolidation, literature work did not exclude any service level.

    View all citing articles on Scopus

    Alain Tchana received his Ph.D. in Computer Science in 2011, at the IRIT laboratory, Institute National Polytechnique de Toulouse, France. Since November 2011 he is a Postdoctor at University of Grenoble (UJF/LIG). He is a member of the SARDES research group at LIG laboratory (UJF/CNRS/Grenoble INP/INRIA). His main research interests are in autonomic computing, Cloud Computing, and Green Computing.

    Noel De Palma received his Ph.D. in Computer Science in 2001. Since 2002 he was Associate Professor in computer science at University of Grenoble (ENSIMAG/INP). Since 2010 he is professor at Joseph Fourier University. He is a member of the ERODS research group at LIG laboratory (UJF/CNRS/Grenoble INP/INRIA), where he leads researches on Autonomic Computing, Cloud Computing and Green Computing.

    Ibrahim Safieddine is a Ph.D. student in ERODS team within the LIG (Laboratoire d’Informatique de Grenoble). His research interests are cloud computing, autonomic management systems and green computing.

    Daniel Hagimont is a Professor at Polytechnic National Institute of Toulouse, France and a member of the IRIT laboratory, where he leads a group working on operating systems, distributed systems and middleware. He received a Ph.D. from Polytechnic National Institute of Grenoble, France in 1993. After a postdoctorate at the University of British Columbia, Vancouver, Canada in 1994, he joined INRIA Grenoble in 1995. He took his position of Professor in Toulouse in 2005.

    View full text