Unit 1 Cloud Computing
Unit 1 Cloud Computing
Unit 1 Cloud Computing
Introduction
Content
• Examples of Cloud
Developing in the cloud enables users to get their applications to market quickly. Hardware
failures do not result in data loss because of networked backups. Cloud computing uses remote
resources, saving organizations the cost of servers and other equipment.
Cloud computing is a model for enabling ubiquitous, 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. Cloud computing refers to both the applications delivered as
services over the Internet and the hardware and system software in the datacenters that provide
those services.
The service provider can‘t anticipate how customers will use the service. One customer might
use the service three times a year during peak selling seasons, whereas another might use it as a
primary development platform for all of its applications. Therefore, the service needs to be
available all the time (7 days a week, 24 hours a day) and it has to be designed to scale upward
for high periods of demand and downward for lighter ones. Scalability also means that an
application can scale when additional users are added and when the application requirements
change. This ability to scale is achieved by providing elasticity.
Self-service provisioning
Customers can easily get cloud services without going through a lengthy process. The customer
simply requests an amount of computing, storage, software, process, or other resources from the
service provider. While the on-demand provisioning capabilities of cloud services eliminate
many time delays, an organization still needs to do its homework. These services aren‘t free;
needs and requirements must be determined before capability is automatically provisioned.
Cloud services need to have standardized APIs. These interfaces provide the instructions on how
two application or data sources can communicate with each other. A standardized interface lets
the customer more easily link a cloud service, such as a customer relationship management
system with a financial accounts management system, without having to resort to custom
programming.
A cloud environment needs a built-in service that bills customers. And, of course, to calculate
that bill, usage has to be metered (tracked). Even free cloud services (such as Google‘s Gmail or
Zoho‘s Internet-based office applications) are metered. In addition to these characteristics, cloud
computing must have two overarching requirements to be effective:
3
Many cloud service providers give customers a dashboard — a visualization of key service
metrics — so they can monitor the level of service they‘re getting from their provider. Also,
many customers use their own monitoring tools to determine whether their service level
requirements are being met.
Security
Many customers must take a leap of faith to trust that the cloud service is safe. Turning over
critical data or application infrastructure to a cloud-based service provider requires making sure
that the information can‘t be accidentally accessed by another company (or maliciously accessed
by a hacker). Many companies have compliance requirements for securing both internal and
external information. Without the right level of security, one might not be able to use a
provider‘s offerings.
Applications:
• Email
– Gmail, Yahoo mail
• Online Collaboration tools
– Google docs for collaboration on documents
– Google Hangouts for video conferencing
• Big Data Analytics
– Provides a cost effective and scalable infrastructure to support big data and business
analytics.
• Test and Development
– now readily available environments tailored for your needs at your fingertips.
• Storage
• Device independence
– Multi-tenant platform
–
5 Real-World Examples of Cloud Computing
• Ex: Dropbox, Gmail, Facebook.
• Ex: Maropost for Marketing, Hubspot, Adobe Marketing Cloud.
• Ex: SlideRocket, Ratatype, Amazon Web Services.
• Ex: ClearDATA, Dell's Secure Healthcare Cloud, IBM Cloud.
• Uses: IT consolidation, shared services, citizen services
EVOLUTION OF CLOUD COMPUTING AND BASIC TERMINOLOGIES
Cluster Computing
Cluster computing it’s a group of computers connected to each other and work together as a single computer.
These computers are often linked through a LAN.
The cluster is a tightly coupled systems, and from its characteristics that it’s a centralized job management
and scheduling system.
All the computers in the cluster use the same hardware and operating system, and the computers are the same
physical location and connected with a very high speed connection to perform as a single computer.
2. Operating system.
4. Communication software.
5. Different applications
Advantages:
software is automatically installed and configured, and the nodes of the cluster can be added and managed
easily, so it’s very easy to deploy, it’s an open system, and very cost effective to acquire and manage, clusters
have many sources of support and supply, it’s fast and very flexible, the system is optimized for performance
as well as simplicity and it can change software configurations at any time, also it saves the time of searching
the net for latest drivers, The cluster system is very supportive as it includes software updates.
Disadvantages
it’s hard to be managed without experience, also when the size of cluster is large, it’ll be difficult to find out
something has failed, the programming environment is hard to be improved when software on some node is
different from the other.
Grid Computing
Grid computing is a combination of resources from multiple administrative domains to reach a common
target, and this group of computers can distributed on several location and each a group of grids can be
connected to each other.
The computers in the grid are not required to be in the same physical location and can be operated
independently, so each computer on the grid is concerned a distinct computer.
The computers in the grid are not tied to only on operating system and can run different OSs and different
hardware, when it comes to a large project, the grid divides it to multiple computers to easily use their
resources.
Architecture:
Fabric layer to provide the resources which shared access is mediated by grid computing.
Connectivity layer and it means the core communication and authentication protocols required for grid
specific network functions.
Resource layer and it defines the protocols, APIs and SDK for secure negotiations, imitations, monitoring
control, accounting and payment of sharing operations on individual resources.
Collective layer which it contains protocols and services that capture interactions among a collection of
resources
Application layer, it’s user applications that operate within environment.
Advantages:
One of the advantages of grid computing that you don’t need to buy large servers for applications that can be
split up and farmed out to smaller commodity type servers,
secondly it’s more efficient in use of resources.
Also the grid environments are much more modular and don't have much points of failure.
About policies in the grid it can be managed by the grid software, beside that upgrading can be done without
scheduling downtime, and jobs can be executed in parallel speeding performance.
Disadvantages:
It needs fast interconnect between computers resources,
some applications may need to be pushed to take full advantage of the new model,
licensing across many servers may make it forbidden for some applications,
the grid environments include many smaller servers across various administrative domains. also political
challenges associated with sharing resources especially across different admin domains.
Utility Computing
Utility Computing refers to a type of computing technologies and business models which provide services
and computing resources to the customers, such as storage, applications and computing power.
This repackaging of computing services is the foundation of the shift to on demand computing, software as a
service and cloud computing models which late developed the idea of computing, applications and network
as a service.
Utility computing is kind of virtualization, that means the whole web storage space and computing power
which it’s available to users is much larger than the single time-sharing computer.
Multiple backend web servers used to make this kind of web service possible.
Utility computing is similar to cloud computing and it often requires a cloud-like infrastructure.
Advantages:
the client doesn't have to buy all the hardware, software and licenses needed to do business. Instead, the
client relies on another party to provide these services.
It also gives companies the option to subscribe to a single service and use the same suite of software
throughout the entire client organization.
it offers compatibility of all the computers in large companies.
Disadvantages:
The service could be stopped from the utility computing company for any reason such as a financial trouble
or equipment problems.
Also utility computing systems can also be attractive targets for hackers, and much of the responsibility of
keeping the system safe falls to the provider
Cloud Computing
Cloud computing is a term used when we are not talking about local devices which it does all the hard work
when you run an application, but the term used when we’re talking about all the devices that run remotely on
a network owned by another company which it would provide all the possible services from e-mail to
complex data analysis programs.
This method will decrease the users’ demands for software and super hardware.
The only thing the user will need is running the cloud computing system software on any device that can
access to the Internet
cloud and utility computing often conjoined together as a same concept but the difference between them is
that
utility computing relates to the business model in which application infrastructure resources are delivered,
whether these resources are hardware, software or both.
While cloud computing relates to the way of design, build, and run applications that work in a virtualization
environment, sharing resources and boasting the ability grow dynamically, shrink and the ability of self
healing.
LINK FOR MY PREZI PPT
https://prezi.com/view/dFvMcARzfJI1RXrcNpHD/
Cloud Computing
Business Models
Karri Huhtanen
16th of November 2010
Positioning the Players
Cloud Infrastructure as a Platform as a Service Software as a Service
Technology Service
Providers
Rightscale
HP Google App Engine
Cordys
IBM Vendor lock-in tightens, but opportunities for innovation, business
models and market entryFacebook Zynga decrease
increase, need for venture capital
RackSpace
Force.Com SalesForce
OpenStack
Microsoft Azure Canonical Landscape
Eucalyptus
VMWare Market entry costs and capital investment needs increase,
Dropbox
Amazon Web Services
Oracle need for venture capital increases
Animoto
Techila
Arch Red
LINK FOR MY PREZI PPT
https://prezi.com/view/dFvMcARzfJI1RXrcNpHD/
Topic: The Cloud Architecture; Models – Delivery and
Deployment
Cloud Consumer
The cloud consumer is the principal stakeholder for the cloud computing service. A cloud consumer
represents a person or organization that maintains a business relationship with, and uses the service from
a cloud provider. A cloud consumer browses the service catalog from a cloud provider, requests the
appropriate service, sets up service contracts with the cloud provider, and uses the service. The cloud
consumer may be billed for the service provisioned, and needs to arrange payments accordingly.
Cloud consumers need SLAs to specify the technical performance requirements fulfilled by a cloud
provider. SLAs can cover terms regarding the quality of service, security, remedies for performance
failures. A cloud provider may also list in the SLAs a set of promises explicitly not made to consumers,
i.e. limitations, and obligations that cloud consumers must accept. A cloud consumer can freely choose a
cloud provider with better pricing and more favorable terms. Typically a cloud provider’s pricing policy
and SLAs are non-negotiable, unless the customer expects heavy usage and might be able to negotiate for
better contracts.
Cloud Provider
A cloud provider is a person, an organization; it is the entity responsible for making a service available to
interested parties. A Cloud Provider acquires and manages the computing infrastructure required for
providing the services, runs the cloud software that provides the services, and makes arrangement to
deliver the cloud services to the Cloud Consumers through network access.
For Software as a Service, the cloud provider deploys, configures, maintains and updates the operation of
the software applications on a cloud infrastructure so that the services are provisioned at the expected
service levels to cloud consumers. The provider of SaaS assumes most of the responsibilities in managing
and controlling the applications and the infrastructure, while the cloud consumers have limited
administrative control of the applications.
Cloud Auditor
A cloud auditor is a party that can perform an independent examination of cloud service controls with the
intent to express an opinion thereon. Audits are performed to verify conformance to standards through
review of objective evidence. A cloud auditor can evaluate the services provided by a cloud provider in
terms of security controls, privacy impact, performance, etc.
A privacy impact audit can help Federal agencies comply with applicable privacy laws and regulations
governing an individual‟s privacy, and to ensure confidentiality, integrity, and availability of an
individual‟s personal information at every stage of development and operation.
Cloud Broker
As cloud computing evolves, the integration of cloud services can be too complex for cloud consumers to
manage. A cloud consumer may request cloud services from a cloud broker, instead of contacting a cloud
provider directly. A cloud broker is an entity that manages the use, performance and delivery of cloud
services and negotiates relationships between cloud providers and cloud consumers.
In general, a cloud broker can provide services in three categories :
Service Intermediation: A cloud broker enhances a given service by improving some specific capability
and providing value-added services to cloud consumers. The improvement can be managing access to
cloud services, identity management, performance reporting, enhanced security, etc.
Service Aggregation: A cloud broker combines and integrates multiple services into one or more new
services. The broker provides data integration and ensures the secure data movement between the cloud
consumer and multiple cloud providers.
Service Arbitrage: Service arbitrage is similar to service aggregation except that the services being
aggregated are not fixed. Service arbitrage means a broker has the flexibility to choose services from
multiple agencies. The cloud broker, for example, can use a credit-scoring service to measure and select
an agency with the best score.
Cloud Carrier
A cloud carrier acts as an intermediary that provides connectivity and transport of cloud services between
cloud consumers and cloud providers. Cloud carriers provide access to consumers through network,
telecommunication and other access devices. For example, cloud consumers can obtain cloud services
through network access devices, such as computers, laptops, mobile phones, mobile Internet devices
(MIDs), etc [1]. The distribution of cloud services is normally provided by network and
telecommunication carriers or a transport agent, where a transport agent refers to a business organization
that provides physical transport of storage media such as high-capacity hard drives. Note that a cloud
provider will set up SLAs with a cloud carrier to provide services consistent with the level of SLAs
offered to cloud consumers, and may require the cloud carrier to provide dedicated and secure
connections between cloud consumers and cloud providers.
Deployment Models: PUBLIC PRIVATE HYBRID CLOUD
This is a virtual equivalent of a traditional data center. Cloud infrastructure providers use
virtualization technology to deliver scalable compute resources such as server s, network s and
storage to their clients. This is beneficial for the clients, as they don’t have to buy personal
hardware and manage its component s. Instead, they can deploy their platforms and application s
within the provider’s virtual machines that offer the same technologies and capabilities as a
physical data center.
An IaaS provider is responsible for the entire infrastructure, but users have total control over it.
In turn, users are responsible for installing and maintaining apps and operating systems, as well
as for security, runtime, middleware and data.
IaaS users can compare the cost and performance of different providers in order to choose the
best option, as they can access them through a single API.
IaaS Advantages
IaaS Disadvantages
If you are a small company or a startup that has no budget for creating your own infrastructure
If you are a rapidly growing company and your demands are unstable and changeable
If you are a large company that wants to have effective control over infrastructure but pay only
for the resources you actually use
Examples of IaaS
The best-known IaaS solution s vendors are Microsoft Azure, Google Compute Engine (GCE),
Amazon Web Services ( AWS ), Cisco Metapod, DigitalOcean, Linode and Rackspace.
PaaS in cloud computing is a framework for software creation delivered over the internet. This is
the offering of a platform with built-in software components and tools, using which developer s
can create, customize, test and launch applications. PaaS vendors manage servers, operating
system updates, security patches and backups. Clients focus on app development and data
without worrying about infrastructure, middleware and OS maintenance.
The main difference between IaaS and PaaS lies in the degree of control given to users.
Allows for developing, testing and hosting apps in the same environment
Resources can be scaled up and down depending on business needs
Multiple users can access the same app in development
The user doesn’t have complete control over the infrastructure
Web services and databases are integrated
Remote teams can collaborate easily
PaaS Advantages
Such solutions are especially profitable to developers who want to spend more time coding,
testing and deploying their applications. Utilizing PaaS is beneficial when:
Examples of PaaS
The best-known PaaS solutions vendors are Google App Engine, Amazon AWS, Windows
Azure Cloud Services, Heroku, AWS Elastic Beanstalk, Apache Stratos and OpenShift.
With this offering, users get access to the vendor’s cloud-based software. Users don’t have to
download and install SaaS applications on local devices, but sometimes they may need plugins.
SaaS software resides on a remote cloud network and can be accessed through the web or APIs.
Using such apps, customers can collaborate on projects, as well as store and analyze data.
SaaS is the most common category of cloud computing. The SaaS provider manages everything
from hardware stability to app functioning. Clients are not responsible for anything in this
model; they only use programs to complete their tasks. In this case, the client software
experience is fully dependent on the provider.
SaaS Advantages
No hardware costs
No initial setup costs
Automated upgrades
Cross-device compatibility
Accessible from any location
Pay-as-you-go model
Scalability
Easy customization
SaaS Disadvantages
Loss of control
Limited range of solutions
Connectivity is a must
Examples of SaaS
The best-known SaaS solutions vendors are Google Apps, Dropbox, Gmail, Salesforce, Cisco
WebEx, Concur, GoToMeeting, Office365.