2. Objectives In this overview we will: Discuss Cloud Computing Benefits and Adoption Define Cloud Computing Introduce the Architecture of the Cloud Demonstrate a common Cloud usage scenario
3. Introduction to Cloud Computing Business Computer Systems Defining Cloud Computing Delivering Cloud Services Cloud Deployment Models Demo
5. Business Computer Systems(continued) Typical organisation computing infrastructure built from Application servers Host variety of business applications Database servers Persist organisational data Networks Interconnect systems Internet access For email, Internet etc Desktop Client to server hosted applications Host productivity tools e.g. Word Mobile Remote access to company infrastructure
6. Maintaining a Business Computer Infrastructure Every business depends on computing Raises a number of questions: technical, business and administrative How are new applications purchased ? How are new applications installed for users ? How are existing applications updated ? How are new server machines procured and installed ? How is server and network capacity planned ? What utilization does the training room facility get ? Who is responsible for system and application security ?
7. Cloud Computing:An Alternative to Traditional Datacenters “Let me be very clear here: I really don’t want to operate data centers anymore... We’d rather spend our time giving our customers great service and writing great software rather than managing physical hardware” Don MacAskill, CEO, SmugMug (http://www.smugmug.com)
8. Cloud Computing Benefits Economics Pay-as-you-go Model Operational Expense instead of Capital Expense (OpEx vs. CapEx) Virtualization of Hardware Development Efficiencies Self-service provisioning model API driven Rapid deployment Flexibility High demand “Elasticity” Rapidly Scalable
10. Introduction to Cloud Computing Business Computer Systems Defining Cloud Computing Delivering Cloud Services Cloud Deployment Models Demo
11. What is Cloud Computing ? There are many definitions of cloud computing The one we will use is: 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. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.* * Source: The NIST Definition of Cloud Computing Version 15, 10-07-2009 http://csrc.nist.gov/groups/SNS/cloud-computing/index.html
12. Essential Characteristics On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed 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). 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 resources include storage, processing, memory, network bandwidth, and virtual machines.
13. Essential Characteristics(Continued) Rapid elasticity. Capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out and rapidly released to quickly scale in. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time. Measured Service. Cloud systems automatically control and optimize 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 utilized service.
14. Introduction to Cloud Computing Business Computer Systems Defining Cloud Computing Delivering Cloud Services Deployment Models Demo
15. Cloud Services Delivery Model Framework for describing cloud computing services known as SPI Acronym for the three major services provided by the cloud Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) Software as a Service Platform as a Service Infrastructure as a Service
16. Software as a Service (SaaS) Business applications hosted by the provider and delivered as a service Delivery model provides a number of advantages: Pay per-use, no up front purchase costs Receive latest updates transparently No in-house administration/installation costs Many SaaS vendors have provided products Most famous SaaS example is Salesforce.com Customer relationship management software Google applications Gmail Google docs Google calendar etc
17. Platform as a Service (PaaS) Computing platform that includes a software for Development Middleware Deployment Enables organisations to concentrate on application development No need to worry about setting up physical testing or production machines Simple productive, cost effective solution Major benefits include: Easy to use Automatic scalability Reliability, performance and security of major providers e.g. Google,Microsoft Cost efficient Free trial periods
18. PaaS Examples Google Application Engine Provides tools and development stack for Python and Java Development tool support– plugin for Eclipse (OpenSource IDE) Data storage services available Application automatically scaled Free for 500MB storage and 5 million page views per month Microsoft Azure Provides Windows Azure operating system Development tool support for Visual Studio Data storage services plus much more Runs on a virtual machine Force.com Provides development platform for custom applications Applications rapidly built using Force.com tools
19. Infrastructure as a Service (IaaS) Resources are delivered as a service Including servers, networks, memory, CPU etc Based on virtualization of machines Many vendor offerings Amazon Elastic Compute Cloud (EC2) Eucalyptus – open source cloud platform Used for private clouds Key feature of IaaS is instant provisioning New machine instances created on demand within minutes Made available on virtual networks
20. IaaS Examples Amazon EC2 Amazon provides a set of machine images Supports various operating systems Windows, Unix, Linux Allows provisioning of high memory or high CPU image instances Multiple application stacks available on pre-packaged machine images Various application servers: JBoss, Weblogic, Websphere Various databases: MySql, SQL server, DB2 Developers plugin for Eclipse Various other services available Storage service Message service MapReduce etc We will examine Amazon EC2 in the demo
21. Two Additional Concepts Virtual Machine Images Complete, pre-configured, image of application and OS Pre-packaged or built by user Cloud APIs Programmatic way to provision and manage compute, storage, and network resources Access to scalable services (S3, SimpleDB) Work underway to standardize for interoperability
22. Introduction to Cloud Computing Business Computer Systems Defining Cloud Computing Delivering Cloud Services Deployment Models Demo
23. Cloud Deployment Models Organizations have a choice of deployment models: Private cloud. The cloud infrastructure is operated solely for an organization. It may be managed by the organization or a third party and may exist on premise or off premise. Community cloud.A variant of the Private cloud. The cloud infrastructure is shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be managed by the organizations 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 organization 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 standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load-balancing between clouds).
24. Private Clouds Emulate public cloud on private networks Deliver benefits of cloud computing Minimise pitfalls Data security Corporate governance Reliability Network, computing and storage is dedicated to single organisation Not shared with other organisations like a public cloud Easier to comply with corporate security standards, policies and regulatory compliance
25. Private Clouds(continued) Variety of private cloud patterns Dedicated Hosted within customer owned data center Operated by internal IT department Community Located, owned managed by third party according to SLA Managed Owned by customer, managed by vendor
26. Public Clouds Owned by third party vendor Host, operate and manage services Security management provided Service offered to multiple customers Resources dynamically provisioned on a self-service, pay as you use basis Public cloud Amazon Google IBM Force.com Microsoft
27. Hybrid Clouds Mixture of public and private clouds Core applications and sensitive data in-house Non-core applications in a public cloud Hybrid cloud Private cloud Public cloud
28. Introduction to Cloud Computing Business Computer Systems Defining Cloud Computing Delivering Cloud Services Deployment Models Demo
30. Summary In this overview we have: Discussed Cloud Computing Benefits and Adoption Defined Cloud Computing Introduced the Architecture of the Cloud Demonstrated a common Cloud usage scenario
Editor's Notes
Aim here is to set the scene for costs of maintaining an infrastructure ?Raise areas such as cost of infastructureHow is a new application server addedHow is capacity planned ?What utilisation do training rooms getHow is new software installedHow is software updatedetc
Aim is to get them thinking along the lines that traditional computing structures are actually chaoticAnd inefficent. E.g, procurement of a new server. Needs to be purchased software installed, installed on company network etc