Accessing Multiple Clouds with Cloudmesh Gregor von Laszewski ˚ School of Informatics and Computing, Indiana University 919 E. 10th Street Bloomington IN 47408, U.S.A. laszewski@gmail.com Fugang Wang School of Informatics and Computing, Indiana University 919 E. 10th Street Bloomington IN 47408, U.S.A. Hyungro Lee School of Informatics and Computing, Indiana University 919 E. 10th Street Bloomington IN 47408, U.S.A. Heng Chen School of Informatics and Computing, Indiana University 919 E. 10th Street Bloomington IN 47408, U.S.A. Geoffrey C. Fox School of Informatics and Computing, Indiana University 919 E. 10th Street Bloomington IN 47408, U.S.A. ABSTRACT We present the design of a toolkit that can be employed by users and administrators to manage virtual machines on multi-cloud environments. It can be run by individual users or offered as a service to a shared user community. We have practically demonstrated its use as part of a Future- Grid service, allowing users of FutureGrid to utilize such a service. Furthermore, we discuss implications and solutions for a unified metrics system assisting the users to find and utilize resources appropriate for their applications. Lastly, we discuss how to move such a multi-cloud environment for- ward by integrating clouds managed by the community or are offered as public clouds. This includes the introduction of a mutual trust agreement on a user and project basis. We have developed a number of components that support the creation of such a multi-cloud environment. This sys- tem is known as Cloudmesh and has been used in practice to achieve virtual machine management in multiple clouds. An important distinguishing factor of Cloudmesh is that it also allows the use of bare metal provisioning for support- ing service providers and authorized users, offering services beyond those available by typical clouds. Categories and Subject Descriptors C.2.4 [Distributed Systems]: Cloud Computing General Terms Computer-Communication Networks ˚ Corresponding author. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full cita- tion on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re- publish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from permissions@acm.org. BigSystem 2014, June 23, 2014, Vancouver, BC, Canada. Copyright 2014 ACM 978-1-4503-2909-5/14/06 ...$15.00. http://dx.doi.org/10.1145/2609441.2609638. Keywords Cloud, multi-cloud, federated clouds, FutureGrid, Cloudmesh 1. INTRODUCTION Cloud computing has become an integral factor for man- aging infrastructure by research organizations and industry. Users and organizations are faced with a variety of solutions that may support their needs. Such offerings include a va- riety of Infrastructure as a Service (IaaS) frameworks. The choice between them provides a significant risk of investment and has to be conducted carefully. The community has the choice to either use public clouds or set up their own private clouds. Public clouds are offered by large providers such as Amazon, Microsoft, Google, Rackspace, HP, and others. Private clouds are set up by internal Information Technology (IT) departments and made available as part of the general IT infrastructure. Two aspects resulting from this availabil- ity bear consideration. First, which of the many Infrastruc- tures should be chosen? Second, can the multitude of IaaS service offerings be leveraged and instead of choosing one, can a service be offered that utilizes multiple services? Fur- thermore, we have to consider that the IaaS frameworks to deploy private clouds are evolving and that extensions may be needed that are not yet offered by the frameworks to adequately address the requirements posed by advanced IT service infrastructures of research organizations. In this paper, we will present the design and implemen- tation of a toolkit that addresses some of the points raised here. The paper is structured as follows. First, we discuss the important terminology used in this paper (Section 1.1). Next, we analyze the requirements in more detail (Section 3) and summarize some related work (Section 2). Then, we ex- plore the requirements that motivate our design (Section 4) and implementation (Section ??). We focus on two aspects of the Cloudmesh features, namely dynamic provisioning/ rain. Last, we present our conclusion (Section 6). 1.1 Terminology We will be using the following definitions throughout the paper: