The notion that "there is no cloud" implies that it's simply someone else's computer.
Entering the Cloud
Cloud computing merges the best aspects of mainframe, PC-enabled client-server, and Internet eras.
Key new elements:
Scaling capabilities.
Pay-as-you-go billing.
Unprecedented speeds.
Ease of use.
Success Stories
Instagram
Launched in October 2010 with 25,000 users on day one.
Reached 1 million users within three months.
Gained another 1 million users on the first day of its Android version release.
Acquired by Facebook in April 2012 for 1billion with only 13 employees.
Highlights the cloud as an ideal solution for start-ups.
Achieving this scale would have been impossible in a traditional data center.
Obama Campaign
A six-month campaign that heavily utilized cloud solutions across all service models (SaaS, PaaS, and IaaS).
E-commerce platform managed 1billion in fundraising.
Phone-calling application scaled to 7,000 concurrent users on Election Day.
Total costs: 1.5million.
1million for an on-premise hosting company.
0.5million for 200 applications running in the cloud.
Cloud Service Models
Software as a Service (SaaS)
Platform as a Service (PaaS)
Infrastructure as a Service (IaaS)
Marketing-driven models:
DaaS: Desktop as a Service
CaaS: Communication as a Service
MaaS: Metal (or Monitoring) as a Service
XaaS: Anything as a Service
Cloud Stack Model
On-Premises: The user manages applications, data, runtime, middleware, O/S, virtualization, servers, storage, and networking.
IaaS (Infrastructure as a Service): The user manages applications, data, runtime, middleware, and O/S. The provider manages virtualization, servers, storage, and networking.
PaaS (Platform as a Service): The user manages applications and data. The provider manages runtime, middleware, O/S, virtualization, servers, storage, and networking.
SaaS (Software as a Service): The provider manages applications, data, runtime, middleware, O/S, virtualization, servers, storage, and networking.
PaaS (NIST Definition)
Provides the capability for the consumer to deploy consumer-created or acquired applications onto the cloud infrastructure.
Applications are created using provider-supported programming languages, libraries, services, and tools.
Consumers do not manage the underlying infrastructure, including the OS, but have control over deployed applications and configuration settings.
Enables consumers to use the provider's applications running on a cloud infrastructure.
Cloud applications are accessible from various client devices.
Consumers do not manage or control the cloud infrastructure, except for limited user-specific application configuration settings.
Cloud Deployment Models
Public Cloud
Private Cloud
Hybrid Cloud
Public Cloud
Multitenant environment.
Users pay for resource usage on a shared grid.
End-users are unaware of the data/software location.
An abstraction layer is built on top of physical hardware, and APIs are exposed.
Large resource pool shared by many.
Advantages
Pay-as-you-consume model.
Elasticity: dynamically increase or decrease resources as needed.
Focus on core competencies.
Disadvantages
Loss of control over SLAs (performance/uptime).
Regulatory issues (data privacy).
Limited configurations.
Private Cloud
Provisioned for exclusive use by a single organization, comprising multiple consumers.
Owned, managed, and operated by the organization, a third party, or a combination.
May exist on or off-premises.
Hybrid Cloud
Combines public and private cloud benefits.
Composition of two or more cloud infrastructures that remain unique but are bound together for data and application portability.
Use the public cloud for rapid elasticity/resource pooling.
Use private cloud for data ownership/privacy risks.
Multicloud
The use of multiple cloud computing and storage services in a single architecture.
Hybrid multicloud is a combination of hybrid and multicloud approaches.
Cloud Characteristics
Broad Network Access
Rapid Elasticity
Measured Service
On-Demand Self-Service
Resource Pooling
Broad Network Access
Capability is available over the network.
Accessed by various thin/thick client platforms (phone, tablet, PC).
Rapid Elasticity
Capabilities can be elastically provisioned and released, in some cases automatically, for rapid scaling.
Capabilities available for provisioning often appear unlimited.
Scaling Horizontally: scaling out or in (cheap hardware).
Scaling Vertically: add more resources.
On-Demand Self-Service
Consumers can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.
Resource Pooling
Provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model.
Different physical and virtual resources are dynamically assigned and reassigned according to consumer demand.
Resources include storage, processing, memory, and network bandwidth.
Measured Service
Resource usage can be monitored, controlled, and reported.
Provides transparency for both the provider and consumer of the utilized service (pay-per-use).
Cloud Computing: Drivers
Business
Capacity planning
Cost reduction
Organizational Agility
Technology Innovations
Clustering (redundancy/failover is core to cloud platforms)