Скачиваний:
50
Добавлен:
20.06.2019
Размер:
50.48 Mб
Скачать

Computer Communications and Networks

For other titles published in this series, go to www.springer.com/series/4198

The Computer Communications and Networks series is a range of textbooks, monographs and handbooks. It sets out to provide students, researchers and nonspecialists alike with a sure grounding in current knowledge, together with comprehensible access to the latest developments in computer communications and networking.

Emphasis is placed on clear and explanatory styles that support a tutorial approach, so that even the most complex of topics is presented in a lucid and intelligible manner.

Nick Antonopoulos • Lee Gillam

Editors

Cloud Computing

Principles, Systems and Applications

Editors

Lee Gillam

Nick Antonopoulos

University of Derby

University of Surrey

School of Computing and Mathematics

Department of Computing

Kedleston Road, DE22 1GB

Guildford, Surrey, GU2 7XH

Derby

UK

UK

L.Gillam@surrey.ac.uk

N.Antonopoulos@derby.ac.uk

 

Series Editor

Professor A.J. Sammes, BSc, MPhil, PhD, FBCS, CEng

Centre for Forensic Computing

Cranfield University

DCMT, Shrivenham

Swindon SN6 8LA

UK

ISBN 978-1-84996-240-7 e-ISBN 978-1-84996-241-4

DOI 10.1007/978-1-84996-241-4

Springer London Dordrecht New York Heidelberg

Library of Congress Control Number: 2010930920

© Springer-Verlag London Limited 2010

Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licenses issued by the Copyright Licensing

Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers.

The use of registered names, trademarks, etc., in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use.

The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made.

Cover design: SPi, Puducherry, India

Printed on acid-free paper

Springer is part of Springer Science+Business Media (www.springer.com)

Foreword

Cloud computing is increasingly being used for what was known as ‘on-demand’ and ‘utility computing’. The services provided, the APIs and the applications that can be hosted by these Cloud providers have superseded the use of the Grid, and are increasingly becoming popular with users. There are obviously two sides to the services that are provided by Cloud providers: those that are supplied by commer- cial entities, such as Amazon and Google, and those that are open-source systems, such as Open Cirrus1 and Eucalyptus.2

There are currently three cloud-based delivery models. Software as a Service (SaaS), where the consumer uses an application, but does not control the operating system, hardware or network infrastructure. In this situation, the user steers applications over the network. Next is Platform as a Service (PaaS), where the users host an environment for their applications. The users control the applications, but do not control the operating system, hardware or network infrastructure, which they are using. Finally, there is Infrastructure as a Service (IaaS), where the user accesses ‘fundamental computing resources’ such as CPU, memory, middleware and storage. The consumer controls the resources, but not the cloud infrastructure beneath them.

Service providers try to provide simplified software installation, maintenance and a centralised control over the software used. The end-users can access the cloud-based services ‘anytime’ and from ‘anywhere’. Naturally, this type of access is based on the bandwidth that a user has over the Internet and therefore poor interconnections mean that the use of cloud-based resources is not viable. Unfortunately, most current cloud-based systems use different APIs and protocols, which means that collaboration and sharing of data is difficult at this point in time. It is interest- ing that the Open Grid Forum is looking at Cloud-based API and protocols, so that systems can share and work together in the future.

Many users and organisations are uncomfortable with the idea of storing their data and applications on system infrastructure and services they do not control. In addition, migrating workloads to a shared infrastructure increases the potential for unauthorised access and exposure of sensitive data. Cloud-based systems need to

1 Open Cirrus, http://opencirrus.org/

2 Eucalyptus, http://open.eucalyptus.com/

v

vi

Foreword

be consistent around authentication, identity management, compliance and ­access-related technologies, which are becoming increasingly important. Within the cloud-security model, the user needs to trust the vendor’s security model, consider a customer’s inability to respond to audit findings, potentially obtain support for investigations, deem indirect administrator accountability, ensure that proprietary implementations cannot be examined, and cope with the loss of physical control on the remote clouds being used. In addition, it may be a case that a user wants to use sensitive data on a cloud-based system, in which case it would be useful to be able to encrypt the data so that it is safe and cannot be stolen by other users.

There is also a need on cloud-based systems for Quality of Service (QoS) and

Service-Level Agreements (SLAs). The contract between customers and service providers needs to be negotiated and agreed. Various performance metrics (e.g., uptime, throughput, and response time) need to be guaranteed to the users. Also, certain management details need to be exposed to the users of the system. This aspect of the service will require logging and efficient monitoring of the resources used by the users, so that they can see that they are potentially accessing the resources that were originally negotiated. There also needs to be well-documented security capabilities provided to the users, and the providers must recompense users where there are penalties for non-performance.

Cloud computing relies on separating user applications from the underlying infrastructure using virtualisation. The host operating system provides an abstraction layer for executing a virtual guest operating system. A key aspect of virtualisation is the ‘hypervisor’ and potentially the ‘virtual machine monitor’. Cloud-based systems use para-virtualisation, which includes a binary bus between the various virtual machines that are being executed. Para-virtualisation provides a much faster and more efficient virtualisation system than other virtual systems. Virtualisation enables the guest operating systems to execute in isolation of the other operating systems, and it also enables a range of legacy applications to be run. In addition, on a Cloud-based system, it is possible to run multiple types of operating systems across the system, which potentially also helps to increase the utilisation of physical servers. Virtualisation also allows the portability of virtual servers between physical servers and it can increase the overall security of the physical host server.

It is well known for example that many HPC applications are only 15–20% effi- cient, and it is possible when executing these applications on Cloud-based services that overall there is better program efficiency. In addition, for HPC applications, the system will also need to be able to schedule the virtual machines (VMs) efficiently, as it will be important that the constituting parts of the application are placed closely together to reduce communication latencies and give high inter-VM bandwidth as well. Another aspect is that the Cloud-based systems have the possibility to optimise the use of resources, reduce the amount of electrical power used as well as the capability to provide efficient Green IT computing.

An unfortunate aspect of current Cloud-based systems is the hyperbolae and publicity broadcast about them, without detailed information about the services, protocols and applications that can be executed on these systems. Just like previous distributed systems (e.g. CORBA, Jini and the Grid), it is very important for the

Foreword

vii

potential end-user to know about the architecture, services, protocols, inter-opera- bility, security, scalability and performance, reliability, user interfaces and potentially payment for services in the context of Cloud computing.

This book provides a thorough and timely examination and exploration of the services, interfaces and the types of applications that can be executed on Cloudbased systems. In addition, the book discusses the interfaces used to access the underlying services, the pros/cons of using virtualisation, the range and scope of applications that can be executed, the security used by these services, the user interfaces and aspects such as service-level agreements and the quality of service provided. The applications that execute on a Cloud-based system need a computational model, storage capabilities and potentially inter-process/thread communication. In addition, it is important to understand the scalability and performance capability of the systems being used. This book covers a wide range of topics related to Clouds and it includes chapters about tools and technologies for building Clouds, taxonomies of cloud-based systems and analysis of security and data confidentiality issues. There are discussions about the interoperability challenges related to the numerous protocols and APIs, methods for mixing Grids and Clouds together, resource management tools, potential Peer-to-Peer cloud-based provisioning, the policies, economics and costs-based benefits of Clouds, as well as Service-Level Agreements in Grids and Cloud-based systems. Therefore, it will be a useful tool for researchers and professionals aiming to understand and use Cloud systems for scientific and commercial purposes.

University of Reading, UK

M. Baker

Winter 2010

 

r

Соседние файлы в папке CLOUD COMPUTING