Implementing and Developing Cloud Application(1).pdf

(7150 KB) Pobierz
Implementing and
Developing
Cloud Computing
Applications
DAVID E.Y. SARNA
Auerbach Publications
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742
© 2011 by Taylor and Francis Group, LLC
Auerbach Publications is an imprint of Taylor & Francis Group, an Informa business
No claim to original U.S. Government works
Printed in the United States of America on acid-free paper
10 9 8 7 6 5 4 3 2 1
International Standard Book Number: 978-1-4398-3082-6 (Hardback)
This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made
to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all
materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all
material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not
been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any
future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in
any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, micro-
filming, and recording, or in any information storage or retrieval system, without written permission from the publishers.
For permission to photocopy or use material electronically from this work, please access
www.copyright.com (http://www.
copyright.com/)
or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-
8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that
have been granted a photocopy license by the CCC, a separate system of payment has been arranged.
Trademark Notice:
Product or corporate names may be trademarks or registered trademarks, and are used only for identi-
fication and explanation without intent to infringe.
Library of Congress Cataloging‑in‑Publication Data
Sarna, David E. Y.
Implementing and developing cloud computing applications / by David E.Y. Sarna.
p. cm.
Summary: “Major enterprises and small start-ups are beginning to embrace cloud computing
for the scalability and reliability that cloud vendors can provide. This book demonstrates how to
implement robust and highly scalable cloud computing applications. Filled with comparative charts
and decision trees to help navigate the many implementation alternatives, the author describes
the major available commercial offerings and guides readers in choosing the best combination of
platform, tools, and services for a small, growing start-up or an established enterprise. Aimed at
software developers and their managers, the text details cloud development environments, lifecycles,
and project management”-- Provided by publisher.
Includes bibliographical references and index.
ISBN 978-1-4398-3082-6 (hardback)
1. Cloud computing. 2. Business--Data processing. I. Title.
QA76.585.S37 2010
006.7’8--dc22
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
and the Auerbach Web site at
http://www.auerbach‑publications.com
2010037120
Contents
About the Author
Preface
Author’s Acknowledgements
Executive Summary
Cloud Computing is a True Paradigm Shift
From Do It Yourself to Public Cloud—A Continuum
Cloud Computing: Is It Old Mainframe Bess in a
New Dress?
Moving Into and Around the Clouds and Efforts
at Standardization
Cloud Economics and Capacity Management
Demystifying the Cloud: A Case Study Using
Amazon’s Cloud Services (AWS)
Virtualization: Open Source and VMware
Securing the Cloud: Reliability, Availability,
and Security
Scale and Reuse: Standing on the Shoulders of Giants
Windows Azure
Google in the Cloud
Enterprise Cloud Vendors
Cloud Service Providers
Practice Fusion Case Study
Support and Reference Materials
Chapter 1
Cloud Computing is a True Paradigm Shift
Chapter Overview
1.1 Introduction
1.2 What is Cloud Computing?
1.3 We’re Using Cloud Computing Already
xix
xxi
xxiii
xxv
xxv
xxv
xxv
xxvi
xxvii
xxvii
xxvii
xxviii
xxviii
xxix
xxix
xxx
xxxi
xxxi
xxxi
1
1
1
2
4
vii
viii
Contents
Electronic Faxing
Voice in the Cloud
Commerce in the Cloud
Distributed Hosting in the Cloud
Accounting and Online Banking in
the Cloud
1.4 New in the Cloud
1.5 Other Cloud Applications
1.6 What about the Enterprise?
1.7 More to Come
Summary
Chapter 2
From Do It Yourself to Public Cloud—A Continuum
Chapter Objectives
2.1 A Brief History
2.2 Virtualization
2.3 Remote Hosting
2.4 Hosting Services
2.5 Cloud Computing Defined
2.5.1 Essential Characteristics
2.5.2 Cloud Service Models
2.5.3 Deployment Models
2.5.4 Cloud Software
2.5.5 Advantages of Cloud Computing
2.6 The Divisive Issue of Multitenancy
2.7 Advantages of Cloud Hosting Over Remote Hosting
2.8 The Battle Over Public and Private Clouds
2.9 Then Came the Internet
2.10 The Argument for Private Clouds
2.11 Hybrid Solutions
2.11.1 Hybrid Cloud—Not Really
2.11.2 The Hybrid Cloud Model
2.12 Cloud Computing for Development
2.13 Eucalyptus—Open Source Software Supporting
Hybrid Solutions
Eucalyptus Features and Benefits
2.14 Microsoft Also Endorses the Hybrid Model
Summary
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
4
4
5
5
5
6
8
8
9
9
11
11
11
11
13
14
15
15
16
17
17
17
18
19
20
22
25
25
25
26
26
27
28
30
30
Contents
ix
Chapter 3
Cloud Computing: Is It Old Mainframe Bess in
a New Dress?
Chapter Overview
3.1 Déjà Vu?
3.2 Not Remote Hosting
3.3 Cloud Computing is Maturing Quickly
Cloud Computing is Not a New Concept
3.4 Vision of Computer Utility
3.5 Desktop Virtualization
3.6 PaaS: Platform as a Service
3.7 SaaS Applications
3.8 Force.com and Standing on Tall Shoulders
3.9 Other Popular SaaS Applications
3.10 The Holy Grail of Computing
3.11 SaaS 2.0
Summary
33
33
33
34
34
35
36
40
41
42
43
45
46
46
47
Chapter 4
Moving Into and Around the Clouds and Efforts
at Standardization
4.1
4.2
4.3
4.4
4.5
Portable Software
Openness, Linux, and Apache
Closed Architectures
Legacy Applications and Migration to the Cloud
Preventing Vendor Lock-In as You Migrate to
the Cloud
4.5.1 What to do?
4.5.2 More Questions
4.5.3 Comparing Costs
Narrowing the Choices
Scripting Languages
Microsoft Visual Studio and Other
Development Environments
Cloud Software
Eucalyptus Enterprise Edition
Cloud-Optimized Linux
4.9.1 CloudLinux
4.9.2 Peppermint
4.9.3 Ubuntu’s Cloud Strategy
CohesiveFT
4.10.1 Elastic Server
49
49
50
51
51
52
52
53
55
55
55
56
57
57
58
58
60
61
63
63
4.6
4.7
4.8
4.9
4.10
Zgłoś jeśli naruszono regulamin