Richard Hill Laurie Hirsch Peter Lake Siavash Moshiri. Guide to Cloud Computing. Principles and Practice. ^ Springer

Size: px
Start display at page:

Download "Richard Hill Laurie Hirsch Peter Lake Siavash Moshiri. Guide to Cloud Computing. Principles and Practice. ^ Springer"

Transcription

1 Richard Hill Laurie Hirsch Peter Lake Siavash Moshiri Guide to Cloud Computing Principles and Practice ^ Springer

2 Contents Part I Cloud Computing Fundamentals 1 Introducing Cloud Computing What Is Cloud Computing? Utility Computing Service Orientation Grid Computing Hardware Virtualisation Autonomic Computing Cloud Computing: A Definition Cloud Computing Service Models Cloud Computing Deployment Models A Quick Recap Beyond the Three Service Models The Business Perspective When Can the Service Models Help? Infrastructure as a Service Platform as a Service Software as a Service Issues for Cloud Computing Summing Up Review Questions Extended Study Activities 19 References 19 2 Business Adoption Models and Legal Aspects of the Cloud What Services Are Available? What Is Meant by Public Cloud? Who Is Using Public Cloud? Another Easy Win for SMEs Who Is Providing Public Cloud Services? Security: The Dreaded 'S' Word 25 xiii

3 xjv Contents 2.3 What Is Meant by Private Cloud? Who Is Using Private Cloud? Who Is Supplying Private Cloud? What Is Meant by Hybrid Cloud? Who Is Using Hybrid Cloud? What Are the Issues with Hybrid Cloud? What Is Meant by Community Cloud? Who Is Using Community Cloud? Which Cloud Model? Internal Factors External Factors Legal Aspects of Cloud Computing A Worldwide Issue The Current Legal Framework for Cloud Privacy and Security Summary Review Questions Extended Study Activities Discussion Topic Discussion Topic 2 41 References 41 3 Social, Economic and Political Aspects of the Cloud How IT Has Historically Made an Impact on Society The Ethical Dimension Social Aspects Web Society in the Clouds Political Aspects Economic Aspects of Cloud Computing Cloud and Green IT Review Questions Extended Study Activities Discussion Topic Discussion Topic 2 60 References 60 Part II Technological Context 4 Cloud Technology Introduction Web Technology HTTP HTML (HyperText Markup Language) and CSS (Cascading Style Sheets) 67

4 Contents xv XML (extensible Markup Language) JSON (JavaScript Object Notation) JavaScript and AJAX (Asynchronous JavaScript and XML) Model-View-Controller (MVC) Autonomic Computing Virtualisation Application Virtualisation Virtual Machine Desktop Virtualisation Server Virtualisation Storage Virtualisation Implementing Virtualisation Hypervisor Types of Virtualisation MapReduce MapReduce Example Scaling with MapReduce Server Failure Programming Model Apache Hadoop A Brief History of Hadoop Amazon Elastic MapReduce Mapreduce.NET Pig and Hive Chapter Summary End of Chapter Exercises A Note on the Technical Exercises Create Your Ubuntu VM Getting Started Learn How to Use Ubuntu Install Java MapReduce with Pig Discussion MapReduce with Cloudera 88 References 89 5 Cloud Services Introduction Web Services Service-Oriented Architecture Interoperability Composability Representational State Transfer (REST) The Cloud Stack 95

5 Or xvj Contents 5.8 Software as a Service (SaaS) Salesforce.com Dropbox Google Services Prezi Platform as a Service (PaaS) Portability Simple Cloud API Java Google App Engine Google Web Toolkit Microsoft Azure Force.com VMForce Heroku Cloud Foundry Infrastructure as a Service (IaaS) Virtual Appliances Amazon Web Services Amazon Elastic Compute Cloud (EC2) Amazon Storage Services Amazon Elastic Beanstalk FlexiScale GoGrid Eucalyptus ('Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems') Rackspace Chapter Summary End of Chapter Exercises Task 1: Prepare Eclipse and Install GAE Plug-In Task 2: Create the First Web Application Task 3: ISBN App Ill References Data in the Cloud Historic Review of Database Storage Methods Relational Is the New Hoover Database as a Service Data Storage in the Cloud Backup or Disaster Recovery? If You Only Have a Hammer - Why Relational May Not Always Be the Right Answer Business Drivers for the Adoption of Different Data Models You Can't Have Everything 126

6 Contents xvii 6.9 Basically Available, Soft State, Eventually Consistent (BASE) So What Alternative Ways to Store Data Are There? Column Oriented Document Oriented Key-Value Stores (K-V Store) When to Use Which Type of Data Storage? Summary Further Reading Tutorials BookCo The Column-Based Approach Cassandra Tutorial Installation and Configuration Data Model and Types Working with Keyspaces Working with Columns Shutdown Using a Command-Line Script Useful Extra Resources The Document-Based Approach MongoDB Tutorial Installation and Configuration Documents, Data Types and Basic Commands Data Types Embedding and Referencing Advanced Commands and Queries More CRUDing Sample Data Set More on Deleting Documents More on Updating Documents The Modifiers Querying Documents Review Questions Group Work Research Activities Discussion Topic Discussion Topic References Intelligence in the Cloud Introduction Web Relational Databases Text Data Natural Language Processing 165

7 xvjjj Contents 7.6 Searching Search Engine Overview The Crawler Thelndexer Indexing Ranking Vector Space Model Classification Measuring Retrieval Performance Clustering Web Structure Mining HITS PageRank Enterprise Search Multimedia Search Collective Intelligence Tagging Recommendation Engines Collective Intelligence in the Enterprise User Ratings Personalisation Crowd Sourcing Text Visualisation Chapter Summary End of Chapter Exercise Task 1: Explore Visualisations Task 2: Extracting Text with Apache Tika Advanced Task 3: Web Crawling with Nutch and Solr 184 References 184 Part III Business Context 8 Cloud Economics Introduction The Historical Context Traditional Model Open Source Outsourced and Managed Services Services in the Cloud Investment in the Cloud Key Performance Indicators and Metrics CAPEX Versus OPEX Total Cost of Ownership Categories of Cost Efficiencies 195

8 Contents xix Infrastructure Software Application Productivity Improvements System Administration and Management Things to Consider When Calculating Cloud TCO Return on Capital Employed Payback Period Net Present Value Internal Rate of Return Economic Value Added Key Performance Indicators Measuring Cloud ROI Enhanced Cloud ROI Business Domain Assessment Cloud Technology Assessment Summing Up Review Questions Extended Study Activities 206 References Enterprise Cloud Computing Just What Is Enterprise Cloud Computing? Cloud Services Service-Oriented Enterprise Realising the Service-Oriented Enterprise Enterprise Architecture Enterprise Architecture Frameworks Developing an Enterprise Architecture with TOGAF The Architectural Development Method (ADM) Building on Top of SaaS Managing a Process-Centric Architecture Business Operations Platform Even More Agility Summary Review Questions Extended Study Activities 222 References Cloud Security and Governance Introduction Security Risks Some Awkward Questions Good Practice for Secure Systems Identity Management Network Security 228

9 xx Contents Data Security Instance Security Application Architecture Patch Management Assessing a Cloud Provider The Need for Certification Governance and the Cloud Governance in Practice Summary Review Questions Extended Study Activities 238 References Developing a Cloud Roadmap Cloud Strategy Planning for the Cloud Some Useful Concepts and Techniques Developing a Cloud Strategy Benefits of Developing Strategies for Cloud Issues Around Implementing Strategies Stages in the Planning Process: Cloud Roadmap As-Is Analysis Analysing the Business Context and Technology Requirements and Opportunities Analysing the As-Is Business Architecture Analysing the Current IS and IT Provisions To-Be Analysis Data for the Cloud Cloud Application Technology for the Cloud Transition Plan Fit-Gap Analysis Change Management Risk Analysis Realisation Plan Adapting the Roadmap Review Questions Group Exercise: Developing a Cloud Business Case 256 References Cloud Computing Challenges and the Future Drivers and Barriers Examining the Gartner Hype Curve On the Way Up Towards Disillusionment Upwards Again 266

10 Contents xxi 12.3 Future Directions What Do Other People Think About the Future of Cloud? Views from the Industry Summing Up Review Questions Extended Study Activities 272 References 273 Index 275