0% found this document useful (0 votes)
17 views

Cloud Minor1

The document provides an overview of cloud computing including definitions of cloud computing and the cloud computing reference model. It describes the three major categories of cloud services: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). The document also discusses characteristics and benefits of cloud computing as well as its historical developments including distributed systems, mainframes, clusters, grids, and virtualization.

Uploaded by

vanshikasehgal00
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Cloud Minor1

The document provides an overview of cloud computing including definitions of cloud computing and the cloud computing reference model. It describes the three major categories of cloud services: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). The document also discusses characteristics and benefits of cloud computing as well as its historical developments including distributed systems, mainframes, clusters, grids, and virtualization.

Uploaded by

vanshikasehgal00
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

Cloud at a glance:

I don’t care where my servers are, who manages them, where my documents are stored, or where my applications are
hosted. I just want them always available and access them from any device connected through Internet. And I am willing
to pay for this service for as a long as I need it.

Vision:

Defining cloud and cloud computing:


A cloud is a type of parallel and distributed system consisting of a collection of interconnected and virtualized computers
that are dynamically provisioned and presented as one or more unified computing resources based on service-level
agreements established through negotiation between the service provider and consumers.

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.

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 reference model:

A fundamentalcharacteristicofcloudcomputingisthecapabilitytodeliver,ondemand,avariety of
ITservicesthatarequitediversefromeachother.Thisvarietycreatesdifferentperceptionsof
whatcloudcomputingisamongusers.Despitethislackofuniformity,itispossibletoclassify cloud computing services
offerings into three major categories: Infrastructure-as-a-Service(IaaS), Platform-as-a-Service(PaaS), and
Software-as-a-Service(SaaS).

1. Infrastructure as a Service (IaaS):


 Description: IaaS provides virtualized computing resources over the internet. It
offers fundamental computing infrastructure like virtual machines, storage, and
networking resources as a service. With IaaS, users have control over the
operating systems, applications, and development frameworks deployed on the
infrastructure, while the cloud provider manages the underlying hardware.
 Use Cases: IaaS is suitable for businesses that require scalable and flexible
infrastructure without the burden of managing physical hardware. It's commonly
used for development and testing environments, hosting websites and web
applications, data backup and recovery, and running enterprise applications.
 Key Features: On-demand provisioning of resources, scalability, pay-as-you-go
pricing model, self-service capabilities, virtualized infrastructure.
Aws, amazon ec2, ms azure, google cloud platform
2. Platform as a Service (PaaS):
 Description: PaaS offers a platform that enables customers to develop, deploy,
and manage applications without the complexity of building and maintaining the
underlying infrastructure. It provides tools and services for application
development, middleware, database management, and more, all delivered over
the internet.
Use Cases: PaaS is ideal for developers and IT teams looking to streamline the
application development and deployment process. It's commonly used for
building web and mobile applications, software integration, and managing
application lifecycle processes.
 Key Features: Application development frameworks, middleware, database
management systems, integrated development environments (IDEs), automated
deployment and scaling, collaboration tools.
Google app engine, Microsoft azure app service, google app engine.
3. Software as a Service (SaaS):
 Description: SaaS delivers software applications over the internet on a
subscription basis. Users access these applications through a web browser or API
without needing to install, manage, or update any software locally. The software
is hosted and maintained by the SaaS provider, who handles everything from
infrastructure to security and updates.
 Use Cases: SaaS is suitable for businesses and end-users looking for ready-to-use
software solutions without the hassle of installation and maintenance. It's
commonly used for email and collaboration tools, customer relationship
management (CRM), enterprise resource planning (ERP), human resources
management (HRM), and productivity applications.
 Key Features: Multi-tenancy architecture, automatic updates and patches,
accessibility from any device with an internet connection, pay-as-you-go pricing,
scalability, centralized management and administration.
Microsoft 365, google workspace

Each of these cloud service models offers distinct advantages and is suited to different
use cases and requirements. Organizations often choose a combination of these models
based on their specific needs and priorities, leveraging the flexibility and scalability of
cloud computing to drive innovation and efficiency in their operations.

Characteristics and benefits:

• No up-front commitments

• On-demand access

• Nice pricing

• Simplified application acceleration and scalability

• Efficient resource allocation

• Energy efficiency

• Seamless creation and use of third-party services


Historical developments
The idea of renting computing services by leveraging large distributed computing facilities has been around for long
time.It dates back to the days of the main frames in the early1950s.From there on,technology has evolved and been
refined.This process has created a series of favorable conditions for the realization of cloud computing.

 distributed systems:

A distributed system is a collection of independent computers that appears to its users as a single coherent system.

Distributed systems often exhibit other properties such as heterogeneity, openness, scalability, transparency,
concurrency, continuous availability, and independent failures. To some extent these also characterize clouds,
especially in the context of scalability, concurrency, and continuous availability.

+ Mainframes:

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 (I/O)
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.

+ Clusters:

Built by commodity machines, they were cheaper than mainframes and made high-performance computing
available to a large number of groups, including universities and small research labs. Cluster technology
contributed considerably to the evolution of tools and frameworks for distributed computing.

+ grid :

Grid computing [8] 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. Grids initially developed as aggregations of geographically dispersed clusters by means of Internet
connections. These clusters belonged to different organizations, and arrangements were made among them to
share the computational power

Cloud computing is often considered the successor of grid computing. In reality, it embodies aspects of all these
three major technologies. Computing clouds are deployed in large datacenters hosted by a single organization that
provides services to others. Clouds are characterized by the fact of having virtually infinite capacity, being tolerant
to failures, and being always on, as in the case of mainframes. In many cases, the computing nodes that form the
infrastructure of computing clouds are commodity machines, as in the case of clusters. The services made available
by a cloud vendor are consumed on a pay-per-use basis, and clouds fully implement the utility vision intro- duced
by grid computing.

Virtualization:
It involves using specialized software to create a virtual or software-created
version of a computing resource rather than the actual version of the same
resource. With the help of Virtualization, multiple operating systems and
applications can run on the same machine and its same hardware at the same
time, increasing the utilization and flexibility of hardware.
In other words, one of the main cost-effective, hardware-reducing, and energy-
saving techniques used by cloud providers is Virtualization. Virtualization allows
sharing of a single physical instance of a resource or an application among
multiple customers and organizations at one time. It do

The term virtualization is often synonymous with hardware virtualization, which


plays a fundamental role in efficiently delivering Infrastructure-as-a-Service
(IaaS) solutions for cloud computing. Moreover, virtualization technologies
provide a virtual environment for not only executing applications but also for
storage, memory, and networking.

Benefits of Virtualization
 More flexible and efficient allocation of resources.
 Enhance development productivity.
 It lowers the cost of IT infrastructure.
 Remote access and rapid scalability.
 High availability and disaster recovery.
 Pay peruse of the IT infrastructure on demand.
 Enables running multiple operating systems.
Drawback of Virtualization
 High Initial Investment: Clouds have a very high initial investment, but it is
also true that it will help in reducing the cost of companies.
 Learning New Infrastructure: As the companies shifted from Servers to
Cloud, it requires highly skilled staff who have skills to work with the cloud
easily, and for this, you have to hire new staff or provide training to current
staff.
 Risk of Data: Hosting data on third-party resources can lead to putting the
data at risk, it has the chance of getting attacked by any hacker or cracker
very easily.
Characteristics of Virtualization
 Increased Security: The ability to control the execution of a guest program
in a completely transparent manner opens new possibilities for delivering a
secure, controlled execution environment. All the operations of the guest
programs are generally performed against the virtual machine, which then
translates and applies them to the host programs.
 Managed Execution: In particular, sharing, aggregation, emulation, and
isolation are the most relevant features.
 Sharing: Virtualization allows the creation of a separate computing
environment within the same host.
 Aggregation: It is possible to share physical resources among several
guests, but virtualization also allows aggregation, which is the opposite
process.
Web2.0:

The Web is the primary interface through which cloud computing delivers its services. At present, the Web
encompasses a set of technologies and services that facilitate interactive information sharing, collaboration, user-
centered design, and application composition. This evolution has transformed the Web into a rich platform for
application development and is known as Web 2.0.
Web 2.0 brings interactivity and flexibility into Webpages, providing enhanced user experience by gaining Web-
based access to all the functions that are normally found in desktop applications.
From a social perspective, Web 2.0 applications definitely contributed to making people more accustomed to the
use of the Internet in their everyday lives and opened the path to the acceptance of cloud computing as a
paradigm, whereby even the IT infrastructure is offered through a Web interface.

Service oriented computing:


Service orientation is the core reference model for cloud computing systems. This approach adopts the concept of
services as the main building blocks of application and system development. Service-oriented computing(SOC)
supports the development of rapid ,low-cost ,flexible, interoperable, and evolvable applications and systems.

A service is an abstraction representing a self-describing and platform-agnostic component that can perform any
function—anything from a simple function to a complex business process. Virtually any piece of code that
performs a task can be turned into a service and expose its functionalities through a network- accessible
protocol. A service is supposed to be loosely coupled, reusable, programming language independent, and
location transparent.
Loose coupling allows services to serve different scenarios more easily and makes them reusable. Independence
from a specific platform increases services accessibility. Thus, a wider range of clients, which can look up services
in global registries and consume them in a location-transparent manner, can be served.

Service-oriented computing introduces and diffuses two important concepts, which are also fun- damental to cloud
computing: quality of service(QoS) and Software-as-a-Service(SaaS):-

Quality of service (QoS) identifies a set of functional and nonfunctional attributes that can be used to evaluate the
behavior of a service from different perspectives. These could be performance metrics such as response time, or
security attributes, transactional integrity, reliability, scalability, and availability.

The concept of Software-as-a-Service introduces a new delivery model for applications. The term has been
inherited from the world of application service providers (ASPs), which deliver software services-based solutions
across the wide area network from a central datacenter and make them available on a subscription or rental basis.
The ASP is responsible for maintaining the infrastructure and making available the application, and the client is
freed from maintenance costs and difficult upgrades

One of the most popular expressions of service orientation is represented by Web Services. These introduce the
concepts of SOC into the World Wide Web, by making it consumable by applications and not only humans. Web
services are software components that expose functionalities accessible using a method invocation pattern that
goes over the HyperText Transfer Protocol (HTTP). The development of systems in terms of distributed services
that can be composed together is the major contribution given by SOC to the realization of cloud computing. Web
services technolo- gies have provided the right tools to make such composition straightforward and easily
integrated with the mainstream World Wide Web (WWW) environment.

Building cloud computing environments:


The creation of cloud computing environments encompasses both the development of applications and systems
that leverage cloud computing solutions and the creation of frameworks, platforms, and infrastructures delivering
cloud computing services.
Application development:
Applications that leverage cloud computing benefit from its capability to dynamically scale on demand.
One class of applications that takes the biggest advantage of this feature is thatof Web applications.
With the diffusion of Web 2.0 technologies, the Web has become a platform for develop- ing rich and complex
applications

Another class of applications that can potentially gain considerable advantage by leveraging cloud computing is
represented by resource-intensive applications. These can be either data- intensive or compute-intensive
applications. Forexample, scientific applications can require huge computing capacity to perform large-scale
experiments once in a while,so it is not feasible to buy the infrastructure supporting them. In this case, cloud
computing can be the solution. Resource-intensiveapplications are not interactive and they are mostly charac-
terized by batch processing.

Cloud computing provides a solution for on-demand and dynamic scaling across the entire stack of computing. This
is achieved by
(a) providing methods for renting compute power, storage, and networking;
(b) offering runtime environments designed for scalability and dynamic sizing; and
(c) providing application services that mimic the behavior of desktop applications but that are completely hosted
and managed on the provider side.
Infrastructure and system development

Distributed computing is a foundational model for cloud computing because cloud systems are distributed
systems. Besides administrative tasks mostly connected to the accessibility of resources in the cloud, the extreme
dynamism of cloud systems—where new nodes and services are provisioned on demand—constitutes the major
challenge for engineers and developers
1. Foundational Technologies:
 Distributed computing, virtualization, service orientation, and Web 2.0 form the
core technologies enabling the provisioning of cloud services globally.
2. Distributed Computing:
 Cloud systems are distributed systems, requiring consideration of administrative
tasks related to resource accessibility.
 The extreme dynamism of cloud systems, with on-demand provisioning of nodes
and services, poses a major challenge for engineers and developers, primarily
addressed at the middleware layer.
3. Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS):
 IaaS solutions provide capabilities for adding and removing resources, leaving
deployment decisions to users.
 PaaS solutions embed control algorithms and rules into their core offering,
facilitating resource provisioning and management.
4. Integration:
 Integration between cloud resources and existing system deployments is a
significant concern, requiring seamless interaction.
5. Web 2.0 Technologies:
 Web 2.0 technologies serve as the interface for delivering, managing, and
provisioning cloud computing services.
 Service orientation defines the architecture of cloud computing systems,
summarized as XaaS (Everything-as-a-Service).
6. Virtualization:
 Virtualization is a fundamental element of cloud computing infrastructure, posing
challenges in managing virtual environments.
 Developers must understand the limitations of selected virtualization
technologies and their implications on system components' volatility.
7. Design Considerations:
 Cloud computing mechanisms address demand surges by dynamically replicating
computing components.
 System design should consider dynamism, scalability, and volatility to effectively
utilize cloud computing technologies.
In summary, cloud computing technologies offer mechanisms to address demand
fluctuations through dynamic replication of computing components, requiring
thoughtful consideration of design and development approaches.

Computing Platforms and Technologies:

1. Amazon Web Services (AWS):


 AWS is a comprehensive cloud computing platform offering a wide range of
services, including computing power, storage, databases, machine learning,
analytics, and more. It provides scalable and reliable infrastructure services, such
as Amazon EC2 (Elastic Compute Cloud) for virtual servers, Amazon S3 (Simple
Storage Service) for object storage, and Amazon RDS (Relational Database
Service) for managed databases.
2. Google App Engine:
 Google App Engine is a Platform-as-a-Service (PaaS) offering from Google Cloud
Platform. It allows developers to build and deploy scalable web applications and
mobile backends without managing infrastructure. App Engine supports multiple
programming languages and provides built-in services like data storage, user
authentication, and traffic splitting for testing.
3. Microsoft Azure:
 Azure is a cloud computing platform and services provided by Microsoft. It offers
a wide range of services, including computing, storage, databases, AI and
machine learning, IoT, and more. Azure provides Infrastructure-as-a-Service
(IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS) solutions,
allowing organizations to build, deploy, and manage applications and services
across a global network of data centers.
4. Hadoop:
 Hadoop is an open-source distributed processing framework designed for storing
and processing large volumes of data across clusters of commodity hardware. It
includes modules like Hadoop Distributed File System (HDFS) for distributed
storage and MapReduce for distributed processing. Hadoop is commonly used
for big data analytics, data processing, and machine learning applications.
5. Force.com and Salesforce.com:
 Force.com is a Platform-as-a-Service (PaaS) offering from Salesforce.com, tailored
for building enterprise applications and customer relationship management
(CRM) solutions. It provides a cloud-based development platform with tools for
building custom applications, integrating data, and automating business
processes.
 Salesforce.com offers various Software-as-a-Service (SaaS) solutions, including
Salesforce CRM, Marketing Cloud, Service Cloud, and more, built on the
Force.com platform.

You might also like