Cloud Computing
Cloud Computing
I have infrastructure.
and middleware and |
1 want to focuson
application logic and
not maintenance and
scalability issues
Defination
“Cloud computing is a model for enabling ubiquitous (Global), 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 is a technology that uses the internet for storing and managing data on remote
servers and then access data via the internet."” One such example is Google cloud — It is a suite of
public cloud services offered by Google. All the application development run on Google hardware.
The cloud is a network of servers that are connected to the internet and are used to store, process,
and manage data. Instead of storing data on your personal computer or phone, you can access the
cloud over the internet and use it to store and access your data from any device.
The term cloud refers to a network or the internet. It is a technology that uses remote servers on the
internet to store, manage, and access data online rather than local drives. The data can be anything
such as files, images, documents, audio, video, and more.
. There are the following operations that we can do using cloud computing:
o Developing new applications and services
o Storage, back up, and recovery of data
o Hosting blogs and websites
o Delivery of software on demand
o Analysis of data
o Streaming videos and audios
A closer look
Cloud computing is useful in governments, enterprises, public and private institutions and research
organizations which make more effective and demand-driven computing services systems.
Large enterprises can offload some of their activities to cloud-based systems Small enterprises and
start-ups can afford to translate their ideas into business results more quickly, without excessive up-
front costs.
System developers can concentrate on the business logic rather than dealing with the complexity of
infrastructure management and scalability. End users can have their documents accessible from
everywhere and any device.
There seem to be a number of specific examples demonstrating emerging applications of cloud
computing in both established companies and startups.
Such cases are intended to illustrate the value proposition of feasible cloud computing solutions and
the benefits businesses have gained from these services.
Examples of CC
Examples of CC
1. Dropbox , Facebook, Gmail:
Cloud can be used for storage of files. The advantage is an easy backup. They automatically
synchronize the files from the desktop. Dropbox allowing users to access files and storage up to 1
terabyte of free storage. Social Networking platform requires a Cloud can be used for storage of
files. The advantage is an easy backup. They automatically synchronize the files from the desktop.
Dropbox allowing users to access files and storage up to 1 terabyte of free storage. Social
Networking platform requires a powerful hosting to manage and store data in real-time. Cloud-
based communication provides click-to- call capabilities from social networking sites, access to the
Instant messaging system.
[Link], Financial Services
Consumers store financial information to cloud computing serviced providers. They
store tax records as online backup services.
[Link] Care
Using cloud computing, Medical professionals host information, analytics and do diagnostics
remotely. As healthcare also comes in the list of examples of cloud computing it allows other
doctors around the world to immediately access this medical information for faster prescriptions
and updates. Application of cloud computing in health care includes telemedicine, public and
personal health care, E-health services and bioinformatics.
[Link]
This is useful in institutions of higher learning provide benefits to universities and colleges so
henceforth Education comes in the examples of cloud computing. Google and Microsoft provide
various services free of charge to staff and students in different learning institutions. Several
Educational institutions in united states use them to improve efficiency, cut on costs.
Example- Google App Education (GAE). They allow the user to use their personal workspace,
teaching becomes more interactive. Cloud-based communication provides click-to-call capabilities
from social networking sites, access to the Instant messaging system.
5. Government
They deliver e-Governance services to citizens using cloud-based IT services. They have the
technology to handle large transactions, citizens can see fewer congestion bottlenecks.
6. Big data Analytics
Big data analytics is another example of Cloud computing, As cloud computing enables data
scientist in analyzing their data patterns, insights, correlations, predictions and help in good
decision making. There are many open sources of big tools like Hadoop, Cassandra.
7. Communication
Cloud allows network-based access to communication tools like emails and calendars. Wats app is
also a cloud-based infrastructure as it comes in communication it is also one of the examples of cloud
computing. All the messages and information are stored in service providers hardware.
8. Business Process
Business email is cloud-based. ERP, document management and CRM are based on a cloud service
provider. SAAS has become an important method for the enterprise. Examples include Salesforce,
HubSpot. They make many business processes more reliable because data can be copied at multiple
redundant sites on the cloud providers
The Cloud Deployment Models
Public/internet Hybrid/Inter
Clouds Clouds
*Third-party
* Mixed use of
multitenant cloud private and public
infrastructure
clouds; leasing public
and services
cloud services
*Available on a
when private cloud
capacity is insufficient
subscription basis to all
Other Govt.
Cloud Services) Cloud Services
Cloud computing Reference model
* There are the following types of service models:
Infrastructure
as a Service
Virtualized servers
Storage and networking
-
‘E) : Examples : Amazon EC2, S3, Rightscale, vCloud
1. Infrastructure as a Service (laas) :
laaS is also known as Hardware as a Service (HaaS). It is a computing infrastructure managed over the
internet. The main advantage of using laaS is that it helps users to avoid the cost and complexity of
purchasing and managing the physical servers.
Infrastructure as a Service (laaS) offers storage and computer resources that developers and IT
organizations use to deliver custom/business solutions.
laaS delivers computer hardware (servers, networking technology, storage, and data center space) as a
service.
It may also include the delivery of OS and virtualization technology to manage the resources. The more
important point is that laaS customers rent computing resources instead of buying and installing them
in their data centers.
The service is typically paid for on a usage basis. The service may include dynamic scaling so that if the
customers need more resources than expected, they can get them immediately.
Using laaS, we get maximum flexibility, but still, we need to put more effort into maintenance.
Characteristics of 1aaS :
Resources are available as a service
newN e
Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google
Compute Engine (GCE), Rackspace, and Cisco Metacloud.
2. Platform as a Service (PaaS) :
* PaaS cloud computing platform is created for the programmer to develop, test, run, and manage the
applications.
* Platform as a Service is a strategy that offers a high level of abstraction to make a cloud readily
programmable in addition to infrastructure-oriented clouds that offer basic compute and storage
capabilities (PaaS).
* Developers can construct and deploy apps on a cloud platform without necessarily needing to know
how many processors or how much memory their applications would use.
* A PaaS offering that provides a scalable environment for creating and hosting web applications is
Google App Engine, for instance.
Characteristics of PaaS
1. Accessible to various users via the same development application.
2. Integrates with web services and databases.
3. Builds on virtualization technology, so resources can easily be scaled up or down as per the
organization's need.
4. Support multiple languages and frameworks.
5. Provides an ability to "Auto-scale".
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, [Link], Google App Engine, Apache Stratos,
Magento Commerce Cloud, and OpenShift.
3. Software as a Service (SaaS) :
¢ SaaSis also known as "on-demand software". It is a software in which the applications are hosted by
a cloud service provider. Users can access these applications with the help of internet connection and
web browser.
* Infrastructure as a Service (laaS) offers storage and computer resources that developers and IT
organizations use to deliver custom/business solutions. laa$ delivers computer hardware (servers,
networking technology, storage, and data center space) as a service.
* It may also include the delivery of OS and virtualization technology to manage the resources. Here,
the more important point is that laaS customers rent computing resources instead of buying and
installing them in their data centers.
* The service is typically paid for on a usage basis. The service may include dynamic scaling so that if
the customers need more resources than expected, they can get them immediately.
Characteristics of SaaS
Managed from a central location
Hosted on a remote server
hwNE
It provides a virtual data It provides virtual platforms It provides web software and
center to store information and tools to create, test, and apps to complete business
and create platforms for app deploy apps. tasks.
development, testing, and
deployment.
/ Security &
privacy
X
Reliability &
Availability
Challenges
Computing
Performanace
Service Quality
John McCarthy
introduces
mainframe
timesharing 7 £103.8bn
" estimated global
~'£78bn " cloud spending**
i - Worldwide
= p launches
Public Cloud
% Elastic Compute
-e._ ¢ Cloud Computing cloud (EC2),
ARPANET N reriaticanc s, isdefinedby % Simple Storage
ARPANET ’V|rtua|l$a‘n0n(,~> Prof. Ramnath i Service (S3) .-~
o by < software B Chellappa 7~ it
{J.C.R. Licklider} launched ... ..~
Cloud
Computing
Utility 2007
Computing
Service
Orientation
Web 2.0
Virtualization
Grid
Computing
Cluster
C omputing
Distributed
Computing 19505
2. Historical Developments
.In 1950 the main frame and time sharing are born, introducing the concept of shared computer resources.
. During this time word cloud was not in use.
. Cloud computing is believed to have been invented by Joseph Carl Robnett Licklider in the 1960s with his work on
ARPANET to connect people and data from anywhere at any time.
. In 1969 the first working prototype of ARPANET is launched.
.In 1970 the word “Client-Server” come in to use.
. Client server defines the computing model where client access the data and applications from a central server.
.In 1995, pictures of cloud are started showing in diagrams, for not technical people to understand.
. At that time AT & T had already begun to develop an architecture and system where data would be located centrally.
In 1999 the [Link] was launched, the first company to make enterprise applications available from a website.
. In 1999, the search engine Google launches.
. In 1999, Netflix was launched, introducing the new revenue way.
.In 2003, web2.0 is born, which is characterized by rich multimedia. Now user can generate content.
. In 2004 Facebook launches giving users facility to share themselves.
14. In 2006, Amazon launched Amazon Web Services (AWS), giving users a new way.
. In2006, Google CEO Eric Schmidt uses the word “cloud” as an industry event.
. In 2007, Apple launches iPhone, which could be used on any wireless network.
. In 2007, Netflix launches streaming services, and live video watching is born.
. In 2008, private cloud come in to existence.
. In 2009, browser-based application like Google apps are introduced.
. In 2010, hybrid cloud (private + public cloud) comes in to existence.
.In 2012, Google launches Google drive with free cloud storage.
. Now cloud adoption is present, which makes Cloud computing stronger.
. The IT services progressed over the decades with the adoption of technologies such as Internet Service Providers
(ISP) Application Service Providers.
Distributed systems
Clouds are essentially large distributed computing facilities that make available their services to third parties on
demand.
The primary purpose of distributed systems is to share resources and utilize them better. This is true in the case of
cloud computing, where this concept is taken to the extreme and resources (infrastructure, runtime environments,
and services) are rented to users.
In fact, one of the driving factors of cloud computing has been the availability of the large computing facilities of IT
giants (Amazon, Google) that found that offering their computing capabilities as a service provided opportunities to
better utilize their infrastructure.
Distributed systems often exhibit other properties such as heterogeneity, openness, scalability, transparency,
concurrency, continuous availability, and independent failures.
Three major milestones have led to cloud computing
[Link] frame
These were the first examples of large computational facilities leveraging multiple processing units. Mainframes were
powerful, highly reliable computers specialized for large data movement and massive input/output (/0) operations.
They were mostly used by large organizations for bulk data processing tasks such as online transactions, enterprise
resource planning, and other operations involving the processing of significant amounts of data.
[Link]
Cluster computing started as a low-cost alternative to the use of mainframes and super computers. The technology
advancement that created faster and more powerful mainframes and super computers eventually generated an
increased availability of cheap commodity machines as a side effect.
[Link].
Grid computing appeared in the early 1990s as an evolution of cluster computing. In an analogy to the power grid,
grid computing proposed a new approach to access large computational power, huge storage facilities, and a
variety of services. Users can “consume” resources in the same way as they use other utilities such as power, gas,
and water.
Distributed Systems
A heterogeneous cloud combines public and private cloud components from multiple vendors at
different levels.
The heterogeneous cloud model necessitates businesses partnering with multiple vendors for their
public and private clouds, then integrating the various solutions to create a multi-cloud environment.
A homogeneous cloud is one in which the same vendor provides all services. In addition, that single
vendor provides your public cloud access and any private cloud you may have, whether on-premises
or off-premises.
Types of Virtualization:
1)Hardware Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
hardware system is known as hardware virtualization. The main job of supervisor is to control and
monitoring the processor, memory and other hardware resources. After virtualization of hardware
system we can install different operating system on it and run different applications on those OS.
Usage: Hardware virtualization is mainly done for the server platforms, because controlling virtual
machines is much easier than controlling a physical server.
3)Server Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
Server system is known as server virtualization.
Usage: Server virtualization is done because a single physical server can be divided into multiple
servers on the demand basis and for balancing the load.
4) Storage Virtualization:
Storage virtualization is the process of grouping the physical storage from multiple network storage
devices so that it looks like a single storage device. Storage virtualization is also implemented by using
software applications.
Usage: Storage virtualization is mainly done for back-up and recovery purposes.
Web 2.0
The web is the primary interface (medium) through which cloud computing delivers or provides its services to
everyone.
Web 2.0 is the interface through which the cloud computing services interact with the clients.
At present the Web encloses a group of technologies and services that facilitate interactive sharing, collaboration,
user-centered design, and application composition.
So basically Web 2.0 is the current state of online technology as it compares to early days of theWeb, it comprises
by greater user interactivity and collaboration and enhanced communication channels.
The name Web 2.0 used to elaborate the second generation of www i.e. World Wide Web, where Web moved
towards static HTML pages for more responsive and interactive as well as dynamic web experience.
Web 2.0 is focused on the ability for user or people to collaborate and share information online via social media,
web based communities, blogging and internet of course. But now for Web social media is a major component, new
web applications such as AZAX and more modern browser providing opportunities for people to express their views.
Social media is possible because of this technology only. Example: Google Maps, Facebook, Twitter, etc.
1: First you should decide which technology will be the basis for your on-demand application
infrastructure
The decision related to which virtualization technolog¥ will be the organizational standard is already
made. But decide before you start if it has not made. There are cons and pros to both a homogeneous
and heterogeneous virtualization infrastructure and the decision will impact the ability to monitor
and manage infrastructure later. So make this decision first.
2: Determine what delivery infrastructure you will be used to abstract the application infrastructure
* Cloud infrastructure’s the on-demand capabilities are first designed to do two things: make efficient
use of resources and ensure scalability.
* Some method of load balancing/application delivery will be necessary to accomplish the former. To
abstract the applications, this layer of the architecture will helpful and will provide a consistent means
of access to users, shielding them from the high rate of change which occurs in the infrastructure.
* The delivery infrastructure or load balancer will need to be included in the provisioning process and to
provide visibility into application capacity, performance as well as resource management.
* Many solutions are there to match your choice but select one solution in which you will integrate the
system into the architecture.
* Also, you need to verify the solution that whether it is capable of providing the visibility you will need
into performance metrics or not. So, decide what metrics and thresholds you will use to trigger
provisioning processes and ensure that the infrastructure can support it.
3: Prepare the network infrastructure
Prepare the network to deal with an on-demand application infrastructure. Application delivery: must
be configured correctly for the application being deployed, Hardware: network, storage. The network
must be configured to deal with such change without requiring human intervention and must be able
to handle applications which migrate from hardware to hardware. For this, the network will require
constant optimization to adapt to changing traffic patterns.
5: Integrate all the moving parts, such that the infrastructure and realizes the benefits of automation,
abstraction and resource sharing
The last one is the most difficult part and requires the previous steps be completed. The integration,
automation of all the pieces of the infrastructure like storage, network, and application enable the
infrastructure to act on-demand. The realization of cost-reduction benefits will be marginalized
without automation. The integration step automates workflow. Automation requires constant
monitoring across the application infrastructure from the network layer to the applications
executing in the environment.
Computing platforms and technologies
Development of a cloud computing application happens by leveraging platforms and frameworks that
provide different types of services, from the bare-metal infrastructure to customizable applications
serving specific purposes.
Cloud Computing Top Platforms
aws > o
g\(OF) AppEngine
Google
£ Microsoft Azure :
salesforce
. Microsoft Azure :
w
Microsoft Azure, launched in 2010, is a cloud platform that helps businesses run and manage their
services over the internet. It offers tools for storing data, running virtual computers, building apps,
and using advanced technologies like artificial intelligence (Al) and machine learning (ML). Azure
provides three main types of services: laaS, PaaS, SaaS
Microsoft Azure is a cloud operating system and a platform for developing applications in the cloud.
Applications in Azure are organized around the concept of roles, which identify a distribution unit for
applications and embody the application’s logic.
Currently, there are three types of role: Web role, worker role, and virtual machine role. The Web
role is designed to host a Web application, the worker role is a more generic container of applications
and can be used to perform workload processing, and the virtual machine role provides a virtual
environment in which the computing stack can be fully customized, including the operating systems.
4. Hadoop :
Apache Hadoop is an open-source framework that is suited for processing large data sets
on commodity hardware.
Hadoop is a framework that uses distributed storage and parallel processing to store and
manage big data.
Hadoop is an implementation of Map Reduce, an application programming model
developed by Google, which provides two fundamental operations for data processing:
map and reduce.
The former transforms and synthesizes the input data provided by the user; the latter
aggregates the output obtained by the map operations.
Hadoop provides the runtime environment, and developers need only provide the input
data and specify the map and reduce functions that need to be executed.
Edge
Computing
Hadoop In Clou