Cloud Architecture and Virtualisation. Lecture 1 Introduction to Clouds



Similar documents
CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

Introduction to Cloud Computing


Cloud Computing. Course: Designing and Implementing Service Oriented Business Processes

White Paper on CLOUD COMPUTING

What is Cloud Computing? First, a little history. Demystifying Cloud Computing. Mainframe Era ( ) Workstation Era ( ) Xerox Star 1981!

Tamanna Roy Rayat & Bahra Institute of Engineering & Technology, Punjab, India talk2tamanna@gmail.com

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

IS PRIVATE CLOUD A UNICORN?

How To Understand Cloud Computing

Cloud Computing in the Enterprise An Overview. For INF 5890 IT & Management Ben Eaton 24/04/2013

Cloud Computing; What is it, How long has it been here, and Where is it going?

IT Infrastructure and Emerging Technologies

See Appendix A for the complete definition which includes the five essential characteristics, three service models, and four deployment models.

Managing Cloud Computing Risk

Cloud Models and Platforms

Cloud Computing and Amazon Web Services

Cloud Computing An Elephant In The Dark

Cloud Computing: Computing as a Service. Prof. Daivashala Deshmukh Maharashtra Institute of Technology, Aurangabad

Realizing the Value Proposition of Cloud Computing

Introduction to Cloud Computing

Enhancing Operational Capacities and Capabilities through Cloud Technologies

Building Blocks of the Private Cloud

Research Paper Available online at: A COMPARATIVE STUDY OF CLOUD COMPUTING SERVICE PROVIDERS

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

Cloud Computing Submitted By : Fahim Ilyas ( ) Submitted To : Martin Johnson Submitted On: 31 st May, 2009

Certified Cloud Computing Professional Sample Material

How To Understand Cloud Computing

WINDOWS AZURE EXECUTION MODELS

Mobile Cloud Computing T Open Source IaaS

The Private Cloud Your Controlled Access Infrastructure

IBM EXAM QUESTIONS & ANSWERS

Cloud Computing. Chapter 1 Introducing Cloud Computing

An Introduction to Cloud Computing Concepts

Cloud Computing Service Models, Types of Clouds and their Architectures, Challenges.

Architectural Implications of Cloud Computing

Cloud Computing. Chapter 1 Introducing Cloud Computing

Cloud Computing Architecture: A Survey

Data Centers and Cloud Computing

William Saichek Professor, Computer Science & Information Systems Orange Coast College

A Gentle Introduction to Cloud Computing

Capability Paper. Today, aerospace and defense (A&D) companies find

Cloud Computing: The Next Computing Paradigm

Essential Characteristics of Cloud Computing: On-Demand Self-Service Rapid Elasticity Location Independence Resource Pooling Measured Service

Cloud Services Overview

Outline. What is cloud computing? History Cloud service models Cloud deployment forms Advantages/disadvantages

How To Compare The Two Cloud Computing Models

Restricted Document. Pulsant Technical Specification

Putchong Uthayopas, Kasetsart University

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

Cloud Computing. Chapter 1 Introducing Cloud Computing

Implementing & Developing Cloud Computing on Web Application

Data Centers and Cloud Computing. Data Centers

Cloud Computing in the Enterprise: A Question of Control.. And who has it. INF5210 Ben Eaton 12/11/2013

OWASP Chapter Meeting June Presented by: Brayton Rider, SecureState Chief Architect

The NIST Definition of Cloud Computing (Draft)

What Cloud computing means in real life

Cloud Computing. Chapter 1 Introducing Cloud Computing

Ø Teaching Evaluations. q Open March 3 through 16. Ø Final Exam. q Thursday, March 19, 4-7PM. Ø 2 flavors: q Public Cloud, available to public

Analytical Survey Model on Consumption of Cloud Service Models

Security Considerations for Public Mobile Cloud Computing

Contents. What is Cloud Computing? Why Cloud computing? Cloud Anatomy Cloud computing technology Cloud computing products and market

Elastic Private Clouds

Kent State University s Cloud Strategy

A Study of Infrastructure Clouds

CLOUD COMPUTING. When It's smarter to rent than to buy

Virtualization 101 ASPE RESOURCE SERIES. Prepared for ASPE by Global Knowledge's Kerry Doyle, MA, ZDNet/CNet.com Associate Editor

A white paper from Fordway on CLOUD COMPUTING. Why private cloud should be your first step on the cloud computing journey - and how to get there

East African Information Conference th August, 2013, Kampala, Uganda. Security and Privacy: Can we trust the cloud?

OpenStack IaaS. Rhys Oxenham OSEC.pl BarCamp, Warsaw, Poland November 2013

What Is It? Business Architecture Research Challenges Bibliography. Cloud Computing. Research Challenges Overview. Carlos Eduardo Moreira dos Santos

Planning the Migration of Enterprise Applications to the Cloud

Sistemi Operativi e Reti. Cloud Computing

Where in the Cloud are You? Session Thursday, March 5, 2015: 1:45 PM-2:45 PM Virginia (Sheraton Seattle)

Introduction to Cloud Services

It s All About Cloud Key Concepts, Players, Platforms And Technologies

Cloud Computing for SCADA

OVERVIEW Cloud Deployment Services

The Top 5 Most Common Cloud Management Functions

Dimension Data Enabling the Journey to the Cloud

SCADA Cloud Computing

Assignment # 1 (Cloud Computing Security)

Cloud Computing: Making the right choices

Cloud computing - Architecting in the cloud

Virtualization and Cloud Computing

A Secure Strategy using Weighted Active Monitoring Load Balancing Algorithm for Maintaining Privacy in Multi-Cloud Environments

SOA and Cloud in practice - An Example Case Study

Cloud Computing: Elastic, Scalable, On-Demand IT Services for Everyone. Table of Contents. Cloud.com White Paper April Executive Summary...

Unit 10b: Introduction to Cloud Computing

Transcription:

Cloud Architecture and Virtualisation Lecture 1 Introduction to Clouds

Credit Lecture: 15h A multiple choice test Laboratory: 15h Team project 2

TOC What are clouds? History Features and fundamental concepts Advantages and disadvantages Future 3

What are clouds?

Popularity of cloud computing Gartner Gartner Newsroom (2010). http://www.gartner.com/it/page.jsp?id=1210613, Accessed on July 13, 2010. Google Trends (2010). http://www.google.com/trends, Accessed on February 23rd 2010. 5

Characteristics of cloud computing Cloud is a style of computing where scalable and elastic IT- related capabilities are provided as a service to customers using Internet technologies Intense hype surrounds cloud computing, making it difficult to understand vendor options and strategies Features: Service- based Scalable and elastic Shared Metered by use Use of Internet technologies The latest technology is always delivered The use of standard technology is encouraged and facilitated David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications Gartner Group, Cloud Computing, http://www.gartner.com/technology/initiatives/cloud- computing.jsp 6

Characteristics of cloud computing Keywords and catchphrases: (Massive) scalability, Virtualisation, *aas (SaaS, PaaS, CaaS, ) Anything as a Service, Pay- as- you- go (by actual usage, not resource itself), 7

So, what they really are?

What is cloud computing? The National Institute for Standards and Technology (NIST), Information Technology Laboratory offers this definition of Cloud Computing: Cloud computing is a model for enabling convenient, on- demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. The cloud model of computing promotes availability. It s as good as any David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 9

What is cloud computing? There is a clear consensus that there is no real consensus on what cloud computing is (Irving Wladawsky Berger, IBM) Twenty- One Experts Define Cloud Computing (http://cloudcomputing.sys- con.com/node/612375/) 10

What is cloud computing? Cloud computing overlaps some of the concepts of distributed, grid and utility computing, however it does have its own meaning if contextually used correctly. Cloud computing really is accessing resources and services needed to perform functions with dynamically changing needs. An application or service developer requests access from the cloud rather than a specific endpoint or named resource. What goes on in the cloud manages multiple infrastructures across multiple organisations and consists of one or more frameworks overlaid on top of the infrastructures tying them together. The cloud is a virtualisation of resources that maintains and manages itself. Kevin Hartig, What is Cloud Computing, http://cloudcomputing.sys- con.com/node/579826 11

What is cloud computing? Cloud computing can be defined as a new style of computing in which dynamically scalable and often virtualised resources are provided as a services over the Internet. Cloud computing has become a significant technology trend, and many experts expect that cloud computing will reshape information technology (IT) processes and the IT marketplace. With the cloud computing technology, users use a variety of devices, including PCs, laptops, smartphones, and PDAs to access programs, storage, and application- development platforms over the Internet, via services offered by cloud computing providers. Advantages of the cloud computing technology include cost savings, high availability, and easy scalability. 12

What is cloud computing? Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing 13

What is cloud computing? David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 14

Essential characteristics On- demand self- service A consumer armed with an appropriate delegation of rights (permission) can unilaterally provision computing capabilities, such as server time and network storage, as needed and automatically, without requiring human interaction with each service s provider Broad network access Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs) David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 15

Essential characteristics Resource pooling The provider s computing resources are pooled to serve multiple consumers using a multi- tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter) Examples of separately allocable resources include storage, processing, memory, network bandwidth, and virtual machines David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 16

Essential characteristics Rapid elasticity Capabilities can be rapidly and elastically provisioned, in some cases automatically, to scale out quickly and then rapidly released to scale in quickly To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 17

Essential characteristics Measured service Cloud systems automatically control and optimise resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts) Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilised service David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 18

Advantages over self- hosting Agility A customer can rapidly and inexpensively reprovision technological infrastructure resources. Cost control Cloud services are typically priced on a utility computing basis with fine- grained usage- based options Reduced level of IT skills Fewer and less sophisticated IT skills are required for implementation. David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 19

Advantages over self- hosting Scalability (elasticity) the ability to provision one or more servers quickly and to scale up or down quickly Pre- configured operating system images such as a variety of popular Linux distributions: Ubuntu, Debian, Novell (SUSE), Gentoo, Centos, Fedora, Arch, and Red Hat Enterprise Linux and various version of Windows- based servers Virtual servers or physical servers that can be sized to different plans through a control panel, all the way up to 15.5 GB of RAM servers can be configured with one to four processors and with one to four cores per processor, and disk drives are usually arranged in a fault- tolerant RAID configuration Dedicated IP addresses for cloud servers David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 20

Advantages over self- hosting Communication among servers in the same cloud (co- located), effectuated at high- speed and free of communications charges Replication and/or distribution over various geographical areas Persistence provided by a separate cloud storage facility, as storage in a virtual cloud server is not persistent when the server instance is shut down David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 21

History

Virtualisation As early as the mid- 1960s, something was going on that would later prove to be fundamental to the development of cloud computing. The IBM S/360-67, supporting up to four processors, was announced in 1965 David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 23

Virtualisation It had some unique instructions to support dynamic address translation (DAT) to enable efficient paging While it was released with an operating system called TSS to support time sharing (slowly and expensively), the real breakthrough occurred in IBM s Cambridge Scientific Center, closely aligned with nearby Massachusetts Institute of Technology, where CP (control program) was developed to support virtualisation David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 24

Virtualisation CP provided each user with a simulated (virtual) standalone System/360 computer, able to run any S/360 software that ran on the bare machine This gave each user what was, in effect, a private computer system Its latest grandson, z/vm, now called a hypervisor in common with standard industry usage, is still in active use on zseries, System z9, and System z10 computers z/vm can be used to support thousands of Linux virtual machines using a process known as virtualisation Its V6.1 release (October 2009) allowed Linux on Power and Linux on System z customers achieve on average a 6.3 month payback on their initial investment, including the initial system purchase David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 25

Remote hosting Farms of racked individual personal computers and, later on, blade servers (where up to 128 computers can be crammed into a single 42U rack) became a commonplace sight in larger- and medium- sized organisations, and even in smaller enterprises David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 26

Remote hosting Smaller organisations immediately saw the value in outsourcing the care and feeding of these servers to experts, and the rack- hosting industry was born, a further development of the co- location industry that had been primarily developed for the telecommunication and ISP industries and essentially rented space with power, cooling, and connectivity More recently, medium- and larger- sized organisations have seen the merit of outsourced hosting David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 27

Hosting services Hosting services provide, in order of ascending cost: Co- location services, which only provide physical facilities, Internet connection, uninterruptible power, and climate control; the client provides and owns the equipment and is responsible for system administration Virtual private servers, in which virtualisation technology is employed to allow multiple logical servers to share a single physical server owned, supplied, and maintained by the hosting service. Virtual firewalls ensure security Dedicated hosting services, also called managed hosting services, in which the service provider owns and manages the machine, leasing full control to the client. Management of the server typically includes monitoring (to ensure the server continues to work effectively), backup services, installation of security patches, and various levels of technical support, and may include a physical firewall Traditional hosting does not provide software beyond systems software David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 28

History Many users shared powerful mainframes using dummy terminals Stand- alone PCs became powerful enough to meet the majority of users needs PCs, laptops, and servers were connected together through local networks to share resources and increase performance Local networks were connected to other local networks forming a global network such as the Internet to utilise remote applications and resources Grid computing provided shared computing power and storage through a distributed computing system Cloud computing further provides shared resources on the Internet in a scalable and simple way 29

History Offers finite computing power Dummy terminals acted as user interface devices Quite similar? Provides almost infinite power and capacity Powerful PCs can provide local computing power and cashing support 30

Service structure and types

Service structure Cloud computing can be viewed as a collection of services, which can be presented as a layered cloud computing architecture 32

Service structure The services offered through cloud computing usually include IT services referred as to SaaS (Software- as- a- Service), which is shown on top of the stack. SaaS allows users to run applications remotely from the cloud. Platform- as- a- Service (PaaS) is similar to IaaS, but also includes operating systems and required services for a particular application. In other words, PaaS is IaaS with a custom software stack for the given application. Infrastructure- as- a- service (IaaS) refers to computing resources as a service. This includes virtualised computers with guaranteed processing power and reserved bandwidth for storage and Internet access. The data- Storage- as- a- Service (dsaas) provides storage that the consumer is used including bandwidth requirements for the storage. 33

Service structure Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing 34

IaaS The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls) David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 35

SaaS The capability provided to the consumer in this highest level is to use the provider s applications running on a cloud infrastructure The applications are accessible from various client devices through a thin client interface such as a Web browser (e.g., Web- based e- mail) The consumer does not manage or control the underlying cloud infrastructure, including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user- specific application configuration settings David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 36

Categories of SaaS The application runs on the client; however it accesses useful functions and services provided in the cloud. An example of this type of cloud services on the desktop is Apple s itunes. The desktop application plays music, while the cloud service is used to purchase a new audio and video content. An enterprise example of this cloud service is Microsoft Exchange Hosted Services. On- premises Exchange Server is using added services from the cloud including spam filtering, archiving, and other functions. SaaS, where the entire application is running in the cloud. The client contains a simple browser to access the application. A well- known example of SaaS is salesforce.com. A cloud platform for creating applications, which is used by developers. The application developers create a new SaaS application using the cloud platform. Chappell, D. (August 2008). A short introduction to cloud platforms: An enterprise- oriented view. San Francisco, CA 37

PaaS The capability provided to the consumer in this intermediate level is to deploy onto the cloud infrastructure consumer- created or acquired applications developed using programming languages and tools supported by the provider The consumer does not manage or control the underlying cloud infrastructure, including network, servers, operating systems, or storage, but has control over the deployed applications and possibly application hosting environment configurations David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 38

PaaS example The PaaS provides Integrated Development Environment (IDE) including data security, backup and recovery, application hosting, and scalable architecture Zoho Creator, Platform as a Service, http://www.zoho.com/creator/paas.html 39

Types of cloud computing In the public cloud (or external cloud) computing resources are dynamically provisioned over the Internet via Web applications or Web services from an off- site third- party provider. Public clouds are run by third parties, and applications from different customers are likely to be mixed together on the cloud s servers, storage systems, and networks. A hybrid cloud environment combines multiple public and private cloud models. Hybrid clouds introduce the complexity of determining how to distribute applications across both a public and private cloud Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing Private cloud (or internal cloud) refers to cloud computing on private networks. Private clouds are built for the exclusive use of one client, providing full control over data, security, and quality of service. Private clouds can be built and managed by a company s own IT organisation or by a cloud provider. 40

Types of cloud computing Private cloud The cloud infrastructure is operated solely for an organisation It may be managed by the organisation or a third party and may exist on premise or off premise Community cloud The cloud infrastructure is shared by several organisations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations) It may be managed by the organisations or a third party and may exist on premise or off premise Public cloud The cloud infrastructure is made available to the general public or a large industry group and is owned by an organisation selling cloud services Hybrid cloud The cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardised or proprietary technology that enables data and application portability (e.g., cloud bursting for load- balancing between clouds) David E.Y. Sarna, "Implementing and Developing Cloud Computing Applications 41

Cloud computing vs. cloud services Cloud computing is the IT foundation for cloud services and it consists of technologies that enable cloud services Attribute Infrastructure systems Application software Application development and deployment software System and application management software IP networks Key attributes of cloud computing Description It includes servers, storage, and networks that can scale as per user demand It provides Web- based user interface, Web services APIs, and a rich variety of configurations It supports the development and integration of cloud application software It supports rapid self- service provisioning and configuration and usage monitoring They connect end users to the cloud and the infrastructure components. Jens, F. (September 2008). Defining cloud services and cloud computing. http://blogs.idc.com/ie/?p=190 42

Cloud computing vs. cloud services Attribute Offsite. Third- party provider Accessed via the Internet Minimal or no IT skill required Provisioning Pricing User interface System interface Shared resources Key attributes of cloud services Description In the cloud execution, it is assumed that third- party provides services. There is also a possibility of in- house cloud service delivery Services are accessed via standard- based, universal network access. It can also include security and quality- of- service options There is a simplified specification of requirements It includes self- service requesting, near real- time deployment, and dynamic and fine- grained scaling Pricing is based on usage- based capability and it is fine- grained User interface include browsers for a variety of devices and with rich capabilities System interfaces are based on Web services APIs providing a standard framework for accessing and integrating among cloud services Resources are shared among cloud services users; however via configuration options with the service, there is the ability to customise Jens, F. (September 2008). Defining cloud services and cloud computing. http://blogs.idc.com/ie/?p=190 43

Key technologies

Virtualisation The advantage of cloud computing is the ability to virtualise and share resources among different applications with the objective for better server utilisation Virtualisation technologies include virtual machine techniques such as VMware and Xen, and virtual networks, such as VPN. Virtual machines provide virtualised IT- infrastructures on- demand, while virtual networks support users with a customised network environment to access cloud resources. 45

Virtualisation In non- cloud computing three independent platforms exist for three different applications running on its own server. In the cloud, servers can be shared, or virtualised, for operating systems and applications resulting in fewer servers (in specific example two servers). 46

Web Service and SOA Web Services and SOA (Service Oriented Architecture) are not new concepts; however they represent the base technologies for cloud computing. Cloud services are typically designed as Web services, which follow industry standards including WSDL, SOAP, and UDDI. A Service Oriented Architecture organises and manages Web services inside clouds. A SOA also includes a set of cloud services, which are available on various distributed platforms. 47

Service flow and workflows The concept of service flow and workflow refers to an integrated view of service- based activities provided in clouds. Workflows have become one of the important areas of research in the field of database and information systems 48

Web 2.0 and mashup Web 2.0 is a concept that refers to the use of Web technology and Web design to enhance creativity, information sharing, and collaboration among users Mashup is a web application that combines data from more than one source into a single integrated storage tool. Both technologies are very beneficial for cloud computing 49

Web 2.0 and mashup An application reuses various components. The components in this architecture are dynamic in nature, operate in a SaaS model, and leverage SOA. The components closer to the user are smaller in nature and more reusable. The components in the center contain aggregate and extend services via mashup servers and portals. Data from one service (such as addresses in a database) can be mashed up with mapping information (such as Yahoo or Google maps) to produce an aggregated view of the information. 50

Cloud computing overview

New features Cloud computing brings a number of new features compared to other computing paradigms Scalability and on- demand services Cloud computing provides resources and services for users on demand. The resources are scalable over several data centers. User- centric interface Cloud interfaces are location independent and can be accesses by well established interfaces such as Web services and Internet browsers. Guaranteed Quality of Service (QoS) Cloud computed can guarantee QoS for users in terms of hardware/cpu performance, bandwidth, and memory capacity. Autonomous system The cloud computing systems are autonomous systems managed transparently to users. However, software and data inside clouds can be automatically reconfigured and consolidated to a simple platform depending on user s needs. Pricing Cloud computing does not require up- from investment. No capital expenditure is required. Users pay for services and capacity as they need them. 52

Standards Cloud computing standards have not been yet fully developed; however a number of existing typically lightweight, open standards have facilitated the growth of cloud computing Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing 53

Standards Area Open standards used in cloud computing Standard Application Client Communication Security Syndication Browsers Offline HTTP, XMPP OAuth, OpenID, SSL/TLS Atom AJAX HTML5 Implementations Virtualisation OVF Platform Solution stacks LAMP Service Data Web services XML, JSON REST Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing 54

Security One of the critical issues in implementing cloud computing is taking virtual machines, which contain critical applications and sensitive data, to public and shared cloud environments. Therefore, potential cloud computing users are concerned about the following security issues Will the users still have the same security policy control over their applications and services? Can it be proved to the organisation that the system is still secure and meets SLAs? Is the system complaint and can it be proved to company s auditors? Cloud Computing Security, Third Brigade, http://www.cloudreadysecurity.com 55

Security In traditional data centres, the common approaches to security include perimeter firewall, demilitarised zones, network segmentation, intrusion detection and prevention systems, and network monitoring tools The security requirements for cloud computing providers begins with the same techniques and tools as for traditional data centres, which includes the application of a strong network security perimeter However, physical segmentation and hardware- based security cannot protect against attacks between virtual machines on the same server Cloud Computing Security, Third Brigade, http://www.cloudreadysecurity.com 56

Security Cloud computing servers use the same operating systems, enterprise and Web applications as localised virtual machines and physical servers Therefore, an attacker can remotely exploit vulnerabilities in these systems and applications. In addition, co- location of multiple virtual machines increases the attack surface and risk to MV- to- VM compromise Intrusion detection and prevention systems need to be able to detect malicious activity in the VM level, regardless of the location of the VM within the virtualised cloud environment. Cloud Computing Security, Third Brigade, http://www.cloudreadysecurity.com 57

Security In summary, the virtual environments that deploy the security mechanisms on virtual machines including firewalls, intrusion detection and prevention, integrity monitoring, and log inspection, will effectively make VM cloud secure and ready for deployment Cloud Computing Security, Third Brigade, http://www.cloudreadysecurity.com 58

Platforms

Platforms Cloud computing has great commercial potential. According to market research firm IDC, IT cloud services spending will grow from about $16B in 2008 to about $42B in 2012 and to increase its share of overall IT spending from 4.2% to 8.5% Company Platform Year of launch Key offerings Amazon.com AWS (Amazon Web Services) Key players in cloud computing 2006 Infrastructure as a service (Storage, Computing, Message queues, Datasets, Content distribution) Microsoft Azure 2009 Application platform as a service (.Net, SQL data services) Google Google App. Engine 2008 Web Application Platform as a service (Python run time environment) IBM Blue Cloud 2008 Virtualised Blue cloud data center Salesforce.com Force.com 2008 Proprietary 4GL Web application framework as an on- demand platform Lakshmanan, G. (April 2009). Cloud computing Relevance to enterprise. Infosys White Paper. 60

Platforms Scenario 1: On- premise application unchanged in the cloud Characteristics: Multiple red legacy, java or.net based application Platform comparison for scenario 1 Platform Google Amazon Microsoft Solution Threat the machine as another server in the data center and do the necessary changes to configuration Needs significant refactoring of application and data logic for existing Java application If existing app is ASP.NET application, then re- factor data, otherwise refactoring effort can be quite significant depending on the complexity Which Cloud Platform is Right for You?, http://www.cumulux.com 61

Platforms Scenario 2: Scalable Web application Characteristics: Moderate to high Web application with a back- end store and load balancing Platform Solution Platform comparison for scenario 2 Google Amazon Microsoft Threat the machine instance as another server in the data center and do the necessary changes to configuration. But scalability and elasticity is manual configuration Use dynamically scalable features of AppEngine and scripting technologies to build rich applications Build scalable Web applications using familiar.net technologies. Scaling up/down purely driven by configuration Which Cloud Platform is Right for You?, http://www.cumulux.com 62

Platforms Scenario 3: Parallel processing computational application Characteristics: Automated long running processing with little to no user interaction Platform Solution Platform comparison for scenario 3 Google Amazon Microsoft Need to configure multiple machine instances depending on the scale needed and manage the environments. Threat the machine instance as another server in the data center and do the necessary changes to configuration. But scalability and elasticity is manual configuration Platform has minimal built- in support for building compute heavy applications. Certain application scenarios, such as image manipulation, are easier to develop with built- in platform features With worker roles and storage features like Queues and blobs, it is easy to build a compute heavy application that can be managed and controlled for scalability and elasticity Which Cloud Platform is Right for You?, http://www.cumulux.com 63

Platforms Scenario 4: Application in the cloud interacts with on- premise data Characteristics: Cloud based applications interacting with on- premise apps for managing transactions of data Platform Solution Platform comparison for scenario 4 Google Amazon Microsoft Applications in EC2 server cloud can easily be configured to interact with applications running on premise No support from the platform to enable this scenario. Possible through each app using intermediary store to communicate From features like Service Bus to Sync platform components it is possible to build compelling integration between the two environments Which Cloud Platform is Right for You?, http://www.cumulux.com 64

Platforms Scenario 5: Application in the cloud interacts with on- premise application Characteristics: On- premise applications Platform comparison for scenario 5 Platform Google Amazon Microsoft Solution Applications in EC2 server cloud can easily be configured to interact with applications running on premise No support from the platform to enable this scenario. Possible through each app using intermediary store to communicate From features like Service Bus to Sync platform components it is possible to build compelling integration between the two environments Which Cloud Platform is Right for You?, http://www.cumulux.com 65

Pricing Pricing for cloud platforms and services is based on three key dimensions: Storage typically measured as average daily amount of data stored in GB over a monthly period Bandwidth measured by calculating the total amount of data transferred in and out of platform service through transaction and batch processing. Generally, data transfer between services within the same platform is free in many platforms. Compute measured as the time units needed to run an instance, or application, or machine to servicing requests 66

Pricing In summary, by analysing the cost of cloud computing, depending on the application characteristics the cost of deploying an application could vary based on the selected platform It seems that the unit pricing for three major platforms is quite similar Besides unit pricing, it is important to translate it into monthly application development, deployments and maintenance costs. 67

Pricing Platform pricing comparison Resource Unit Amazon Google Microsoft Stored data GB per month $0.10 $0.15 $0.15 Storage transaction Per 10 K requests $0.10 $0.10 Outgoing bandwidth GB $0.10 $0.17 $0.12 $0.15 Incoming bandwidth GB $0.10 $0.10 $0.10 Compute time Instance Hours $0.10 $1.20 $0.10 $0.12 Which Cloud Platform is Right for You?, http://www.cumulux.com 68

Components and vendors The main elements comprising cloud computing platforms include computer hardware, storage, infrastructure, computer software, operating systems, and platform virtualisation The leading vendors of cloud computing components Resource Computer hardware Storage Infrastructure Computer software Operating systems Platform virtualisation Unit Dell, HP, IBM, Sun Sun, EMC, IBM Cisco, Juniper Networks, Brocade Communication 3tera. Eucalyptus. G- Eclipse. Hadoop Solaris, AIX, Linux (Red Hat, Ubuntu) Citrix, VMWare, IBM, Xen, Linux KVM, Microsoft, Sun xvm Wikipedia, Cloud computing, http://en.wikipedia.org/wiki/cloud_computing 69

Example of web application deployment

Deployment example Consider a two- tier Web application deployment using cloud Sun Microsystems (June 2009), Introduction to cloud computing architecture, White Paper, Sun Microsystems 71

Deployment example The following steps comprise the deployment of the application: The developer selects a load balancer, Web server, and database server appliances from a library of preconfigured virtual machine images, The developer configures each component to make a custom image. The load balancer is configured, the Web server is populated with its static content by uploading it to the storage cloud, and the database server appliances are populated with dynamic content for the site The developer than layers custom code into the new architecture, in this way making the components meet specific application requirement The developer chooses a pattern that takes the images for each layer and deploys them, handling networking, security, and scalability issues Sun Microsystems (June 2009), Introduction to cloud computing architecture, White Paper, Sun Microsystems 72

Deployment example The secure, high- availability Web application is up and running. When the application needs to be updated, the virtual machine images can be updated, copied across the development chain, and the entire infrastructure can be redeployed In this example, a standard set of components can be used to quickly deploy an application With this model, enterprise business needs can be met quickly, without the need for the time- consuming, manual purchase, installation, cabling, and configuration of servers, storage, and network infrastructure Sun Microsystems (June 2009), Introduction to cloud computing architecture, White Paper, Sun Microsystems 73

Cloud computing challenges

Problems The new paradigm of cloud computing provides a number of benefits and advantages over the previous computing paradigms and many organisations are adopting it However, there are still a number of challenges, which are currently addressed by researchers and practitioners in the field Leavitt, N. (January 2009). Is cloud computing really ready for prime time? IEEE Computer, 15 20. 75

Performance The major issue in performance can be for some intensive transaction- oriented and other data- intensive applications, in which cloud computing may lack adequate performance Also, users who are at a long distance from cloud providers may experience high latency and delays Leavitt, N. (January 2009). Is cloud computing really ready for prime time? IEEE Computer, 15 20. 76

Security and privacy Companies are still concerned about security when using cloud computing Customers are worried about the vulnerability to attacks, when information and critical IT resources are outside the firewall The solution for security assumes that that cloud computing providers follow standard security practices Leavitt, N. (January 2009). Is cloud computing really ready for prime time? IEEE Computer, 15 20. 77

Control Some IT departments are concerned because cloud computing providers have a full control of the platforms Cloud computing providers typically do not design platforms for specific companies and their business practices Leavitt, N. (January 2009). Is cloud computing really ready for prime time? IEEE Computer, 15 20. 78

Reliability Cloud computing still does not always offer round- the- clock reliability. There were cases where cloud computing services suffered a few- hours outages In the future, we can expect more cloud computing providers, richer services, established standards, and best practices In the research arena, HP Labs, Intel, and Yahoo have launched the distributed Cloud Research Test Bad, with facilities in Asia, Europe, and North America, with the objective to develop innovations including cloud computing specific chips IBM has launched the Research Computing Cloud, which is an on- demand, globally accessible set of computing resources that support business processes Leavitt, N. (January 2009). Is cloud computing really ready for prime time? IEEE Computer, 15 20. 79

Future of cloud computing

Future Cloud computing is definitely a type of computing paradigm/ architecture that will remain for a long time to come In the near future, cloud computing can emerge in various directions One possible scenario for the future is that an enterprise may use a distributed hybrid cloud According to this scenario, the enterprise will use the core applications on its private cloud, while some other applications will be distributed on several private clouds, which are optimised for specific applications 81

Future Lakshmanan, G. (April 2009). Cloud computing Relevance to enterprise. Infosys White Paper. 82

An embarrassing joke

It was much nicer before people started storing all their data in the Cloud. 84