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

Unit 1

Cloud computing is the delivery of computing services such as data storage, servers, databases, networking, and software over the Internet. Rather than storing files locally, cloud-based storage saves files to remote databases accessible from any Internet-connected device. Cloud computing provides cost savings, increased productivity, and improved performance and security compared to traditional computing models.

Uploaded by

mmmoneyyyy2
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Unit 1

Cloud computing is the delivery of computing services such as data storage, servers, databases, networking, and software over the Internet. Rather than storing files locally, cloud-based storage saves files to remote databases accessible from any Internet-connected device. Cloud computing provides cost savings, increased productivity, and improved performance and security compared to traditional computing models.

Uploaded by

mmmoneyyyy2
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 40

What Is Cloud Computing?

Cloud computing is the delivery of different


services through the Internet. These resources
include tools and applications like data storage,
servers, databases, networking, and software.
Rather than keeping files on a proprietary hard
drive or local storage device, cloud-based
storage makes it possible to save them to a remote
database. As long as an electronic device has
access to the web, it has access to the data and the
software programs to run it.
Cloud computing is a popular option for people
and businesses for a number of reasons including
cost savings, increased productivity, speed and
efficiency, performance, and security.

In Simplest terms, cloud computing means storing


and accessing the data and programs on remote
servers that are hosted on the internet instead of
the computer’s hard drive or local server. Cloud
computing is also referred to as Internet-based
computing. The data can be anything like images,
videos, audios, documents, files etc.
Cloud Computing Service Provider’s :
Cloud computing is in huge demand so, big
organization providing the service like Amazon
AWS, Microsoft Azure, Google Cloud, Alibaba
cloud etc. are some Cloud Computing service
Provider.

Who is a father of cloud computing?


Cloud computing is believed to have been
invented by J. C. R. Licklider in the 1960s with his
work on ARPANET to connect people and data
from anywhere at any time.
Why Cloud Computing?
Small as well as large IT companies, follow the
traditional methods to provide the IT
infrastructure. That means for any IT company,
we need a Server Room that is the basic need of
IT companies.
In that server room, there should be a database
server, mail server, networking, firewalls, routers,
modem, switches, QPS (Query Per Second means
how much queries or load will be handled by the
server), configurable system, high net speed, and
the maintenance engineers.
To establish such IT infrastructure, we need to
spend lots of money. To overcome all these
problems and to reduce the IT infrastructure cost,
Cloud Computing comes into existence.
History of Cloud Computing:
Before Computing was come into existence, client
Server Architecture was used where all the data
and control of client resides in Server side. If a
single user want to access some data, firstly user
need to connect to the server and after that user
will get appropriate access. But it has many
disadvantages. So, After Client Server computing,
Distributed Computing was come into existence,
in this type of computing all computers are
networked together with the help of this, user can
share their resources when needed. It also has
certain limitations. So in order to remove
limitations faced in distributed system, cloud
computing was emerged.

 During 1961, John MacCharty delivered his


speech at MIT that “Computing Can be sold
as a Utility, like Water and Electricity.”
According to John MacCharty it was a
brilliant idea. But people at that time don’t
want to adopt this technology. But as the
time fleet the technology caught the idea
after few years this idea is implemented. So,
this is implemented by Salesforce.com in
1999.
 This company started delivering an
enterprise application over the internet and
this way the boom of Cloud Computing was
started.

 In 2002, Amazon started Amazon Web


Services (AWS), Amazon will provide
storage, computation over the internet. In
2006 Amazon will launch Elastic Compute
Cloud Commercial Service which is open
for Everybody to use.

 After that in 2009, Google Play also started


providing Cloud Computing Enterprise
Application as other companies will see the
emergence of cloud Computing they also
started providing their cloud services. Thus,
in 2009, Microsoft launch Microsoft Azure
and after that other companies like Alibaba,
IBM, Oracle, HP also introduces their
Cloud Services. In today the Cloud
Computing become very popular and
important skill.

To more clarification about how cloud computing


has changed the commercial deployment of the
system. Consider the below examples:
1.Amazon Web Services(AWS): One of the
most successful cloud-based businesses is
Amazon Web Services(AWS), which is an
Infrastructure as a Service(Iaas) offering
that pays rent for virtual computers on
Amazon’s infrastructure.
2.Microsoft Azure Platform: Microsoft is
creating the Azure platform which enables
the .NET Framework Application to run
over the internet as an alternative platform
for Microsoft developers. This is the classic
Platform as a Service(PaaS).
3.Google: Google has built a worldwide
network of data centers to service its search
engine. From this service, Google has
captured the world’s advertising revenue.
By using that revenue, Google offers free
software to users based on infrastructure.
This is called Software as a Service (SaaS).
4.IBM Cloud is a collection of cloud
computing services for business provided by
the IBM Corporation. It provides
infrastructure as a service, software as a
service, and platform as a service.
5.Oracle Cloud is a collection of cloud
services offered by Oracle Corporation,
including infrastructure as a service (IaaS),
platform as a service (PaaS), and software
as a service (SaaS).
6.Alibaba Cloud is the cloud computing arm
of Alibaba Group, providing a
comprehensive suite of global cloud
computing services to power both their
international customers’ online businesses
and Alibaba Group’s own e-commerce
ecosystem.
7.Tencent Cloud is a cloud service platform
provided by Tencent. It provides a range of
services such as virtual machines, storage,
databases, and analytics.
8.Rackspace is a provider of hybrid cloud
computing, founded in 1998. It provides
managed hosting, cloud hosting, and email
and apps services.
9.Salesforce – A cloud-based customer
relationship management (CRM) platform
used for sales, marketing, and customer
service.
10. VMware Cloud – A cloud platform by
VMware, offering services such as
virtualization, cloud management, and
network virtualization.
11. DigitalOcean – A cloud platform focused
on providing easy-to-use, scalable compute
services.
12. Red Hat OpenShift – A cloud platform
by Red Hat, offering container-based
application development and management.
13. Cisco Cloud – A cloud platform by
Cisco, offering a range of services including
networking, security, and application
development.
14. HP Helion – A cloud platform by HP,
offering services such as compute, storage,
and networking.
15. SAP Cloud Platform – A cloud platform
by SAP, offering services such as analytics,
application development, and integration.
16. Fujitsu Cloud – A cloud platform by
Fujitsu, offering services such as compute,
storage, and networking.
17. OVHcloud – A cloud platform offering a
range of services including compute,
storage, and networking.
18. CenturyLink Cloud – A cloud platform
offering a range of services including
compute, storage, and networking.
19. Joyent – A cloud platform offering
services such as compute, storage, and
container-based application development.
20. NTT Communications Cloud – A cloud
platform offering services such as compute,
storage, and networking.
Is Cloud Computing Safe?
Because software and data are stored remotely in
cloud computing, data security and platform
security are a big concern. Cloud security refers to
the measures undertaken to protect digital assets
and data stored on cloud-based services. Measures
to protect this data include two-factor
authorization (2FA), the use of VPNs, security
tokens, data encryption, and firewall services,
among others

Evolution of cloud computing


Cloud computing is all about renting computing
services. This idea first came in the 1950s. In
making cloud computing what it is today, five
technologies played a vital role. These are
distributed systems and its peripherals,
virtualization, web 2.0, service orientation, and
utility computing.

 Distributed Systems:
It is a composition of multiple independent
systems but all of them are depicted as a
single entity to the users. The purpose of
distributed systems is to share resources and
also use them effectively and efficiently.
Distributed systems possess characteristics
such as scalability, concurrency, continuous
availability, heterogeneity, and
independence in failures. But the main
problem with this system was that all the
systems were required to be present at the
same geographical location. Thus to solve
this problem, distributed computing led to
three more types of computing and they
were-Mainframe computing, cluster
computing, and grid computing.

 Mainframe computing:
Mainframes which first came into existence
in 1951 are highly powerful and reliable
computing machines. These are responsible
for handling large data such as massive
input-output operations. Even today these
are used for bulk processing tasks such as
online transactions etc. These systems have
almost no downtime with high fault
tolerance. After distributed computing,
these increased the processing capabilities
of the system. But these were very
expensive. To reduce this cost, cluster
computing came as an alternative to
mainframe technology.

 Cluster computing:
In 1980s, cluster computing came as an
alternative to mainframe computing. Each
machine in the cluster was connected to
each other by a network with high
bandwidth. These were way cheaper than
those mainframe systems. These were
equally capable of high computations. Also,
new nodes could easily be added to the
cluster if it was required. Thus, the problem
of the cost was solved to some extent but
the problem related to geographical
restrictions still pertained. To solve this, the
concept of grid computing was introduced.

 Grid computing:
In 1990s, the concept of grid computing was
introduced. It means that different systems
were placed at entirely different
geographical locations and these all were
connected via the internet. These systems
belonged to different organizations and thus
the grid consisted of heterogeneous nodes.
Although it solved some problems but new
problems emerged as the distance between
the nodes increased. The main problem
which was encountered was the low
availability of high bandwidth connectivity
and with it other network associated issues.
Thus. cloud computing is often referred to
as “Successor of grid computing”.

 Virtualization:
It was introduced nearly 40 years back. It
refers to the process of creating a virtual
layer over the hardware which allows the
user to run multiple instances
simultaneously on the hardware. It is a key
technology used in cloud computing. It is
the base on which major cloud computing
services such as Amazon EC2, VMware
vCloud, etc work on.

 Web 2.0:
It is the interface through which the cloud
computing services interact with the clients.
It is because of Web 2.0 that we have
interactive and dynamic web pages. It also
increases flexibility among web pages.
Popular examples of web 2.0 include
Google Maps, Facebook, Twitter, etc
 Service orientation:
It acts as a reference model for cloud
computing. It supports low-cost, flexible,
and evolvable applications. Two important
concepts were introduced in this computing
model. These were Quality of Service (QoS)
which also includes the SLA (Service Level
Agreement) and Software as a Service
(SaaS).

 Utility computing:
It is a computing model that defines service
provisioning techniques for services such as
compute services along with other major
services such as storage, infrastructure, etc
which are provisioned on a pay-per-use
basis.
Thus, the above technologies contributed to the
making of cloud computing.

What is the cloud?


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.
Characteristics of Cloud Computing

The characteristics of cloud computing are given


below:
1) Agility
The cloud works in a distributed computing
environment. It shares resources among users and
works very fast.
2) High availability and reliability
The availability of servers is high and more
reliable because the chances of infrastructure
failure are minimum.
3) High Scalability
Cloud offers "on-demand" provisioning of
resources on a large scale, without having
engineers for peak loads.
4) Multi-Sharing
With the help of cloud computing, multiple users
and applications can work more efficiently with
cost reductions by sharing common infrastructure.
5) Device and Location Independence
Cloud computing enables the users to access
systems using a web browser regardless of their
location or what device they use e.g., PC, mobile
phone, etc. As infrastructure is off-site (typically
provided by a third-party) and accessed via the
Internet, users can connect from anywhere.
6) Maintenance
Maintenance of cloud computing applications is
easier, since they do not need to be installed on
each user's computer and can be accessed from
different places. So, it reduces the cost also.
7) Low Cost
By using cloud computing, the cost will be
reduced because to take the services of cloud
computing, IT company need not to set its own
infrastructure and pay-as-per usage of resources.
8) Services in the pay-per-use mode
Application Programming Interfaces (APIs) are
provided to the users so that they can access
services on the cloud by using these APIs and
pay the charges as per the usage of services.

Advantages of Cloud Computing

Disadvantages of Cloud Computing


A list of the disadvantage of cloud computing is given below -
1) Internet Connectivity
2) Vendor lock-in
3) Limited Control
4) Security

How does cloud computing work


Assume that you are an executive at a very big
corporation. Your particular responsibilities
include to make sure that all of your employees
have the right hardware and software they need to
do their jobs. To buy computers for everyone is
not enough. You also have to purchase software as
well as software licenses and then provide these
software to your employees as they require.
Whenever you hire a new employee, you need to
buy more software or make sure your current
software license allows another user. It is so
stressful that you have to spend lots of money.
But, there may be an alternative for executives like
you. So, instead of installing a suite of software for
each computer, you just need to load one
application. That application will allow the
employees to log-in into a Web-based service
which hosts all the programs for the user that is
required for his/her job. Remote servers owned by
another company and that will run everything from
e-mail to word processing to complex data
analysis programs. It is called cloud computing,
and it could change the entire computer industry.

In a cloud computing system, there is a significant


workload shift. Local computers have no longer to
do all the heavy lifting when it comes to run
applications. But cloud computing can handle that
much heavy load easily and automatically.
Hardware and software demands on the user's side
decrease. The only thing the user's computer
requires to be able to run is the cloud computing
interface software of the system, which can be as
simple as a Web browser and the cloud's network
takes care of the rest.
Architecture of Cloud computing
Deployment model:

Cloud Service models:


Cloud Computing can be defined as the practice
of using a network of remote servers hosted on the
Internet to store, manage, and process data, rather
than a local server or a personal computer.
Companies offering such kinds of cloud
computing services are called cloud providers and
typically charge for cloud computing services
based on usage. Grids and clusters are the
foundations for cloud computing.

Types of Cloud Computing


Most cloud computing services fall into five broad
categories:
1.Software as a service (SaaS)
2.Platform as a service (PaaS)
3.Infrastructure as a service (IaaS)
4.Anything/Everything as a service (XaaS)
5.Function as a Service (FaaS)
6.

These are sometimes called the cloud computing


stack because they are built on top of one another.
These abstraction layers can also be viewed as
a layered architecture where services of a higher
layer can be composed of services of the
underlying layer i.e, SaaS can provide
Infrastructure.
Software as a Service(SaaS)

Software-as-a-Service (SaaS) is a way of


delivering services and applications over the
Internet. Instead of installing and maintaining
software, we simply access it via the Internet,
freeing ourselves from the complex software and
hardware management. It removes the need to
install and run applications on our own computers
or in the data centers eliminating the expenses of
hardware as well as software maintenance.
SaaS provides a complete software solution that
you purchase on a pay-as-you-go basis from a
cloud service provider. Most SaaS applications
can be run directly from a web browser without
any downloads or installations required. The SaaS
applications are sometimes called Web-based
software, on-demand software, or hosted
software.
Advantages of SaaS
1.Cost-Effective: Pay only for what you use.
2.Reduced time: Users can run most SaaS
apps directly from their web browser
without needing to download and install any
software. This reduces the time spent in
installation and configuration and can
reduce the issues that can get in the way of
the software deployment.
3.Accessibility: We can Access app data from
anywhere.
4.Automatic updates: Rather than
purchasing new software, customers rely on
a SaaS provider to automatically perform
the updates.
5.Scalability: It allows the users to access the
services and features on-demand.
The various companies providing Software as a
service are Cloud9 Analytics, Salesforce.com,
Cloud Switch, Microsoft Office 365, Big
Commerce, Eloqua, dropBox, and Cloud Tran.
Disadvantages of Saas :
1.Limited customization: SaaS solutions are
typically not as customizable as on-premises
software, meaning that users may have to
work within the constraints of the SaaS
provider’s platform and may not be able to
tailor the software to their specific needs.
2.Dependence on internet connectivity:
SaaS solutions are typically cloud-based,
which means that they require a stable
internet connection to function properly.
This can be problematic for users in areas
with poor connectivity or for those who
need to access the software in offline
environments.
3.Security concerns: SaaS providers are
responsible for maintaining the security of
the data stored on their servers, but there is
still a risk of data breaches or other security
incidents.
4.Limited control over data: SaaS providers
may have access to a user’s data, which can
be a concern for organizations that need to
maintain strict control over their data for
regulatory or other reasons.
Platform as a Service

PaaS is a category of cloud computing that


provides a platform and environment to allow
developers to build applications and services over
the internet. PaaS services are hosted in the cloud
and accessed by users simply via their web
browser.
A PaaS provider hosts the hardware and software
on its own infrastructure. As a result, PaaS frees
users from having to install in-house hardware
and software to develop or run a new application.
Thus, the development and deployment of the
application take place independent of the
hardware.
The consumer does not manage or control the
underlying cloud infrastructure including network,
servers, operating systems, or storage, but has
control over the deployed applications and
possibly configuration settings for the application-
hosting environment.
Advantages of PaaS:
1.Simple and convenient for users: It
provides much of the infrastructure and
other IT services, which users can access
anywhere via a web browser.
2.Cost-Effective: It charges for the services
provided on a per-use basis thus eliminating
the expenses one may have for on-premises
hardware and software.
3.Efficiently managing the lifecycle: It is
designed to support the complete web
application lifecycle: building, testing,
deploying, managing, and updating.
4.Efficiency: It allows for higher-level
programming with reduced complexity thus,
the overall development of the application
can be more effective.
The various companies providing Platform as a
service are Amazon Web services Elastic
Beanstalk, Salesforce, Windows Azure, Google
App Engine, cloud Bees and IBM smart cloud.
Disadvantages of Paas:
1.Limited control over infrastructure: PaaS
providers typically manage the underlying
infrastructure and take care of maintenance
and updates, but this can also mean that
users have less control over the environment
and may not be able to make certain
customizations.
2.Dependence on the provider: Users are
dependent on the PaaS provider for the
availability, scalability, and reliability of the
platform, which can be a risk if the provider
experiences outages or other issues.
3.Limited flexibility: PaaS solutions may not
be able to accommodate certain types of
workloads or applications, which can limit
the value of the solution for certain
organizations.
Infrastructure as a Service

Infrastructure as a service (IaaS) is a service


model that delivers computer infrastructure on an
outsourced basis to support various operations.
Typically, IaaS is a service where infrastructure is
provided as outsourcing to enterprises such as
networking equipment, devices, database, and
web servers.
It is also known as Hardware as a Service
(HaaS). IaaS customers pay on a per-user basis,
typically by the hour, week, or month. Some
providers also charge customers based on the
amount of virtual machine space they use.
It simply provides the underlying operating
systems, security, networking, and servers for
developing such applications, and services, and
deploying development tools, databases, etc.
Advantages of IaaS:
1.Cost-Effective: Eliminates capital expense
and reduces ongoing cost and IaaS
customers pay on a per-user basis, typically
by the hour, week, or month.
2.Website hosting: Running websites using
IaaS can be less expensive than traditional
web hosting.
3.Security: The IaaS Cloud Provider may
provide better security than your existing
software.
4.Maintenance: There is no need to manage
the underlying data center or the
introduction of new releases of the
development or underlying software. This is
all handled by the IaaS Cloud Provider.
The various companies providing Infrastructure
as a service are Amazon web services, Bluestack,
IBM, Openstack, Rackspace, and Vmware.
Disadvantages of laaS :
1.Limited control over infrastructure: IaaS
providers typically manage the underlying
infrastructure and take care of maintenance
and updates, but this can also mean that
users have less control over the environment
and may not be able to make certain
customizations.
2.Security concerns: Users are responsible
for securing their own data and applications,
which can be a significant undertaking.
3.Limited access: Cloud computing may not
be accessible in certain regions and
countries due to legal policies.
Anything as a Service

It is also known as Everything as a Service. Most


of the cloud service providers nowadays offer
anything as a service that is a compilation of all of
the above services including some additional
services.
Advantages of XaaS:
1.Scalability: XaaS solutions can be easily
scaled up or down to meet the changing
needs of an organization.
2.Flexibility: XaaS solutions can be used to
provide a wide range of services, such as
storage, databases, networking, and
software, which can be customized to meet
the specific needs of an organization.
3.Cost-effectiveness: XaaS solutions can be
more cost-effective than traditional on-
premises solutions, as organizations only
pay for the services.
Disadvantages of XaaS:
1.Dependence on the provider: Users are
dependent on the XaaS provider for the
availability, scalability, and reliability of the
service, which can be a risk if the provider
experiences outages or other issues.
2.Limited flexibility: XaaS solutions may not
be able to accommodate certain types of
workloads or applications, which can limit
the value of the solution for certain
organizations.
3.Limited integration: XaaS solutions may
not be able to integrate with existing
systems and data sources, which can limit
the value of the solution for certain
organizations.
Function as a Service:
FaaS is a type of cloud computing service. It
provides a platform for its users or customers to
develop, compute, run and deploy the code or
entire application as functions. It allows the user
to entirely develop the code and update it at any
time without worrying about the maintenance of
the underlying infrastructure. The developed code
can be executed with response to the specific
event. It is also as same as PaaS.
FaaS is an event-driven execution model. It is
implemented in the serverless container. When the
application is developed completely, the user will
now trigger the event to execute the code. Now,
the triggered event makes response and activates
the servers to execute it. The servers are nothing
but the Linux servers or any other servers which is
managed by the vendor completely. Customer
does not have clue about any servers which is why
they do not need to maintain the server hence it
is serverless architecture.
Both PaaS and FaaS are providing the same
functionality but there is still some differentiation
in terms of Scalability and Cost.
FaaS, provides auto-scaling up and scaling down
depending upon the demand. PaaS also provides
scalability but here users have to configure the
scaling parameter depending upon the demand.
In FaaS, users only have to pay for the number of
execution time happened. In PaaS, users have to
pay for the amount based on pay-as-you-go price
regardless of how much or less they use.
Advantages of FaaS :
 Highly Scalable: Auto scaling is done by

the provider depending upon the demand.


 Cost-Effective: Pay only for the number of

events executed.
 Code Simplification: FaaS allows the users

to upload the entire application all at once.


It allows you to write code for independent
functions or similar to those functions.
 Maintenance of code is enough and no need

to worry about the servers.


 Functions can be written in any
programming language.
 Less control over the system.

The various companies providing Function as a


Service are Amazon Web Services – Firecracker,
Google – Kubernetes, Oracle – Fn, Apache
OpenWhisk – IBM, OpenFaaS,
Disadvantages of FaaS :
1.Cold start latency: Since FaaS functions
are event-triggered, the first request to a
new function may experience increased
latency as the function container is created
and initialized.
2.Limited control over infrastructure: FaaS
providers typically manage the underlying
infrastructure and take care of maintenance
and updates, but this can also mean that
users have less control over the environment
and may not be able to make certain
customizations.
3.Security concerns: Users are responsible
for securing their own data and applications,
which can be a significant undertaking.
4.Limited scalability: FaaS functions may
not be able to handle high traffic or large
number of requests.
SYSTEM MODELS FOR DISTRIBUTED AND
CLOUD COMPUTING

Distributed and cloud computing systems are built


over a large number of autonomous computer
nodes. These node machines are interconnected by
SANs, LANs, or WANs in a hierarchical manner.
With today’s networking technology, a few LAN
switches can easily connect hundreds of machines
as a working cluster. A WAN can connect many
local clusters to form a very large cluster of
clusters.
SLA stands for service level agreement. It
refers to a document that outlines a
commitment between a service provider and a
client, including details of the service, the
standards the provider must adhere to, and the
metrics to measure the performance.

1. Clusters of Cooperative Computers


 . 1 Cluster Architecture

 Figure 1.15 shows the architecture of a


typical server cluster built around a low-
latency, high-bandwidth interconnection
network. This network can be as simple as
a SAN (e.g., Myrinet) or a LAN (e.g.,
Ethernet). To build a larger cluster with
more nodes, the interconnection network
can be built with multiple levels of Gigabit
Ethernet, Myrinet, or InfiniBand switches.
Through hierarchical construction using a
SAN, LAN, or WAN, one can build
scalable clusters with an increasing
number of nodes. The cluster is connected
to the Internet via a virtual private network
(VPN) gateway. The gateway IP address
locates the cluster. The system image of a
computer is decided by the way the OS
manages the shared cluster resources.
Most clusters have loosely coupled node
computers. All resources of a server node
are managed by their own OS. Thus, most
clusters have multiple system images as a
result of having many autonomous nodes
under different OS control.


 1.2 Single-System Image

 Greg Pfister [38] has indicated that an


ideal cluster should merge multiple system
images into a single-system image (SSI).
Cluster designers desire a cluster operating
system or some middle-ware to support
SSI at various levels, including the sharing
of CPUs, memory, and I/O across all
cluster nodes. An SSI is an illusion created
by software or hardware that presents a
collection of resources as one integrated,
powerful resource. SSI makes the cluster
appear like a single machine to the user. A
cluster with multiple system images is
nothing but a collection of inde-pendent
computers.

 1.3 Hardware, Software, and


Middleware Support

 Almost all HPC clusters in the Top 500 list


are also MPPs. The building blocks are
computer nodes (PCs, workstations,
servers, or SMP), special communication
software such as PVM or MPI, and a
network interface card in each computer
node. Most clusters run under the Linux
OS. The computer nodes are
interconnected by a high-bandwidth
network (such as Gigabit Ethernet,
Myrinet, InfiniBand, etc.).

 Special cluster middleware supports are


needed to create SSI or high availability
(HA). Both sequential and parallel
applications can run on the cluster, and
special parallel environments are needed to
facilitate use of the cluster resources. For
example, distributed memory has multiple
images. Users may want all distributed
memory to be shared by all servers by
forming distribu-ted shared memory
(DSM). Many SSI features are expensive
or difficult to achieve at various cluster
operational levels. Instead of achieving
SSI, many clusters are loosely coupled
machines. Using virtualization, one can
build many virtual clusters dynamically,
upon user demand. We will discuss virtual

 1.4 Major Cluster Design Issues


 Unfortunately, a cluster-wide OS for


complete resource sharing is not available
yet. Middleware or OS extensions were
developed at the user space to achieve SSI
at selected functional levels. Without this
middleware, cluster nodes cannot work
together effectively to achieve cooperative
computing. The software environments
and applications must rely on the
middleware to achieve high performance.
The cluster benefits come from scalable
performance, efficient message passing,
high system availability, seamless fault
tolerance, and cluster-wide job
management,

You might also like