Cloud Computing Unit1 - Intro
Cloud Computing Unit1 - Intro
KCS 713
Er. Ravi Prakash
Professor & Consultant – Data Science
▪ Cloud Computing is everywhere.
▪ Pick up any tech magazine or visit almost any IT website or blog
and you’ll be sure to talk about CC.
▪ The only problem is that not everyone agrees on what it is.
▪ Ask ten different professionals what CC is, and you’ll get ten
different answers. And is CC worth all the hype?
▪ Some people don’t think so. In fact, in 2008 Oracle CEO Larry
Ellison chastised the whole issue of CC, saying that the term was
overused and being applied to everything in the computer
world.
3
It is a changed world now…
• Explosive growth in applications: biomedical informatics, space
exploration, business analytics, web 2.0 social networking: YouTube,
Facebook
• Extreme scale content generation: e-science and e-business data deluge
• Extraordinary rate of digital content consumption: digital gluttony: Apple
iPhone, iPad, Amazon Kindle
• Exponential growth in compute capabilities: multi-core, storage,
bandwidth, virtual machines (virtualization)
• Very short cycle of obsolescence in technologies: Windows Vista→
Windows 7; Java versions; C→C#; Phython
• Newer architectures: web services, persistence models, distributed file
systems/repositories (Google, Hadoop), multi-core, wireless and mobile
• Diverse knowledge and skill levels of the workforce
• You simply cannot manage this complex situation with your traditional IT
infrastructure:
Answer: The Cloud Computing?
Bandwidth
WS
Services interface
64-bit
processor
What Works
13
Benefits of Cloud Computing
Capability From To
Server / Storage 10-20% Cloud accelerates business
Utilization value across a wide variety 70-90%
of domains.
Self service None Unlimited
Change Months
Management Days/Hours
Release Weeks
Management STANDARDIZATION
Minutes
1. 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 provider.
2. 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, tablets, laptops, and
workstations).
3. Resource pooling
The provider’s computing resources are pooled to serve multiple
consumers. Resources can be dynamically assigned and reassigned
according to customer demand.
Customer generally may not care where the resources are physically
located but should be aware of risks if they are located offshore
4. Rapid elasticity
Capabilities can be expanded or released automatically (i.e.,
more CPU power, or ability to handle additional users). To the
customer this appears seamless, limitless, and responsive to their
changing requirements.
5. Measured service
Customers are charged for the services they use and the amounts
There is a metering concept where customer resource usage can be
monitored, controlled, and reported, providing transparency for both
the provider and consumer of the utilized service.
CLOUD COMPONENTS
Internet
Datacenters
Platform
Infrastructure
Delivery Models
• In a SaaS agreement, you have the least control over the cloud
PaaS: Platform as a Service
• Cloud platform services, provide cloud components to certain software
while being used mainly for applications.
• PaaS delivers a framework for developers that they can build upon and
use to create customized applications.
• All servers, storage, and networking can be managed by the enterprise or
a third-party provider while the developers can maintain management of
the applications.
• The delivery model of PaaS is similar to SaaS, except instead of delivering
the software over the internet, PaaS provides a platform for software
creation.
• This platform is delivered via the web, giving developers the freedom to
concentrate on building the software without having to worry about
operating systems, software updates, storage, or infrastructure.
• Common Examples – AWS Elastic Beanstalk, Windows Azure, Force.com,
Google App Engine, and OpenShift.
The PaaS model provide the underlying h/w technology, such as
one or more servers (or virtual servers), operating systems, DB
solutions, developer tools, and n/w support, for developers to
deploy their own solutions. The h/w and supporting s/w is
managed by the platform provider. Developers need not worry
about performing h/w or OS upgrades. Instead, developers can
focus on their own applications as shown in fig. below.
Server, OS,
Support s/w
Paas
PaaS – Characteristics, When to Use
• PaaS has many characteristics that define it as a cloud service, including:
• Builds on virtualization technology, so resources can easily be scaled up or down
as your business changes
• Provides a variety of services to assist with the development, testing, and
deployment of apps
• Accessible to numerous users via the same development application
• Integrates web services and databases
• Just as with SaaS and PaaS, there are specific situations when IaaS is most advantageous:
• Startups and small companies may prefer IaaS to avoid spending time and money on
purchasing and creating hardware and software.
• Companies experiencing rapid growth like the scalability of IaaS, and they can change out
specific hardware and software easily as their needs evolve.
• Anytime you are unsure of a new application’s demands, IaaS offers plenty of flexibility
and scalability.
• A customer or tenant can have greater security control over more resources as one moves
from SaaS to PaaS and again from PaaS to the IaaS service model.
Cloud Providers, Services and Security Measures
Cloud Deployment Models
Cloud Deployment Models
• A cloud deployment model is defined according to where the
infrastructure for the deployment resides and who has control over
that infrastructure.
• Each cloud deployment model satisfies different organizational
needs, so it’s important that you choose a model that will satisfy
the needs of your organization.
• Perhaps even more important is the fact that each cloud
deployment model has a different value proposition and different
costs associated with it.
• NIST defines four cloud deployment models:
1. Public Clouds
2. Private Clouds
3. Community Clouds, and
4. Hybrid Clouds
Definition (by Mell and Grance)
• 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 - 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).
• A customer or tenant can achieve greater security control over more resources
when moving from a Public cloud to a community cloud and again from a
community cloud to a Private cloud.
• Public cloud- this type of cloud deployment model supports all users who want to
make use of a computing resource, such as hardware (OS, CPU, memory, storage)
or software (application server, database) on a subscription basis. Customers do
not have any control over the location of the infrastructure. The cost is shared by
all users, and are either free or in the form of a license policy like pay per user.
Most common uses of public clouds are for application development and testing,
non-mission-critical tasks such as file-sharing, and e-mail service.
• Private cloud True to its name, a private cloud is typically infrastructure used by a
single organization. Such infrastructure may be managed by the organization itself
to support various user groups, or it could be managed by a service provider that
takes care of it either on-site or off-site. Private clouds are more expensive than
public clouds due to the capital expenditure involved in acquiring and maintaining
them. However, private clouds are better able to address the security and privacy
concerns of organizations today. It can be hosted internally or externally. Private
clouds are great for organizations that have high security demands, high
management demands and uptime requirements.
• Hybrid cloud In a hybrid cloud, an organization makes use of interconnected
private and public cloud infrastructure. Many organizations make use of this
model when they need to scale up their IT infrastructure rapidly, such as when
leveraging public clouds to supplement the capacity available within a private
cloud. For example, if an online retailer needs more computing resources to run
its Web applications during the holiday season it may attain those resources via
public clouds. A hybrid cloud is great for scalability, flexibility and security. An
example of this is an organization can use public cloud to interact with customers,
while keeping their data secured through a private cloud.
• With public clouds, the cost is typically low for the end user and
there is no capital expenditure involved.
• Use of private clouds involves capital expenditure, but the
expenditure is still lower than the cost of owning and operating
the infrastructure due to private clouds' greater level of
consolidation and resource pooling.
• Private clouds also offer more security and compliance support
than public clouds.
• As such, some organizations may choose to use private clouds for
their more mission-critical, secure applications and public clouds
for basic tasks such as application development and testing
environments, and e-mail services.
Cloud Deployment Models
• Public clouds
• Private clouds
• Community clouds, and
• Hybrid clouds
Definition of Deployment Models
Security depends on Cloud Service Provider Offers high level security and compliance
Cost of usage is typically low for the end user Cost of usage is relatively high
Multi-tenancy i.e. data of many enterprise are stored Single-Tenancy i.e. data of single enterprise is
stored
It is connected to the public internet It only supports private network connectivity
Scalability is very high, and reliability is moderate Scalability is limited, and reliability is very high
AWS and Google AppEngine are examples Microsoft KVM, Red Hat & VMWare are examples
WEAK LINKS
• So it all sounds great, right? Not so fast.
• As with everything in IT, there are pros and cons.CC is not exempt.
• While an Internet outage or problems with your ISP are rare, you may not able
able to access your applns, and do your work. Not that everyone sits in one
office much anymore, but if you currently have the application on your own local
servers and all those who access it are not remote, you’d be at least somewhat
assured that an Internet outage would not affect your appln.
• But it is not your connection to the Internet that can be prone to outages. What
if the site you’re accessing has problems: It’s happened already. Earlier,
Amazon’s S3 cloud storage service went down for the second time that year. A
lot of applications were hosted by the company and all those services could not
be accessed until techs could fix the problem. Some applns were down for 10
hours.
• Also, there may simply be applications or data that you wanted located on-site.
If you have sensitive or proprietary information, your IT security group may
simply mandate that you not store it on someone else’s machines.
Core Advantages
• You may also find that it’s more difficult to integrate your
applications if they are geographically dispersed.
• That is , it is easier to manage and access your data if it is nearby,
and not under someone else’s control.
• For instance, if you need two applications to exchange
information, it’s easier to do if they both reside in the same
place. If you have one application in-house and it has to contact
another application on the cloud, it becomes far more
complicated, and more prone to failure.
The service models are as follows :
❑ Software as a Service– Use provider’s applications over a
network
Vendor example: Zoho Suite, Aplle’s MobileMe, GoogleDocs
❑ Platform as a Service(PaaS) – Deploy customer-created
applications to a cloud.
Vendor example : Google App Engine, force.com, Microsoft Azure
❑ Infrastructure as a Service(IaaS) – Rent processing , storage,
network capacity, and other fundamental computing resources
Vendor example : Amazon EC2 and S3, Sun Microsystems Cloud
Services, Terremark, Dropbox
[Chow09ccsw]
Smarter energy Smarter traffic Smarter oil fields
73
What is Cloud Computing?
A user experience and a business model
▪ Standardized offerings
▪ Rapidly provisioned
▪ Flexibly priced
▪ Ease of access
Software-as-a-Service
Workload
Focus Will
Web Lead To
2.0 Application Java
Middleware
Runtime Runtime
Specialized
Development
Smart Business
Development on
Database
Slices Tooling the IBM Cloud
Through
Platform-as-a-Service
These
Servers Networking
LayersData Center
Storage
Fabric
Infrastructure-as-a-Service
75
Cloud Computing …
Public … Private …
• Service provider owned • Client owned and
and managed. Cloud managed.
• Access by subscription. Services • Access limited to
• Delivers select set of client and its partner
standardized business Cloud network.
process, application Computing • Drives efficiency,
and/or infrastructure Model standardization and
services on a flexible best practices while
retaining greater
price per use basis.
customization and
control
.…Standardization, capital .… Customization, efficiency,
preservation, flexibility and availability, resiliency, security
time to deploy and privacy
Analytics
Security
77
Summary