0% found this document useful (0 votes)
183 views35 pages

UNIT-1 Notes (KCA 014)

mca

Uploaded by

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

UNIT-1 Notes (KCA 014)

mca

Uploaded by

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

UNIT-1

What is Cloud Computing


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, backup, and recovery of data
o Hosting blogs and websites
o Delivery of software on demand
o Analysis of data
o Streaming videos and audios

Cloud Computing is on-demand access, via the internet, to computing resources and
applications like servers (physical servers and virtual servers), data storage,
development tools, and networking capabilities. These resources are hosted at a
remote data center managed by a cloud services provider (CSP). The CSP makes
these resources available for a subscription fee or bills them according to the pay-
per-use policy.

Cloud computing is defined as internet-based network infrastructure with on-demand


resource access and requirements on a rental basis. According to the National Institute
of Standards and Technology (NIST) defines “Cloud computing is a model for facilitating
suitable, on-demand network service access to a shared pool of configurable computing
shared resources (e.g., storage, networks, servers, applications, and services) that can
be rapidly provisioned and released with minimum management effort”.

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


In this, we will discuss the history of Cloud computing. And also covers the
history of client-server computing, distributed computing, and cloud computing.
• Before Computing came into existence, client Server Architecture was used
where all the data and control of the client resides on the Server side. If a
single user wants to access some data, firstly user needs 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
came 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 systems, cloud computing 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. They thought the technology they were using was efficient
enough for them. So, this concept of computing was not appreciated much,
and very less will research on it. But as time fleet technology caught the idea
after a few years this idea was implemented. So, this was 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, and 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 Applications as other companies saw the
emergence of cloud computing they also started providing their cloud
services. Thus, in 2009, Microsoft launched Microsoft Azure and after
that other companies like Alibaba, IBM, Oracle, HP also introduced
their Cloud Services. In today Cloud Computing become a very popular
and important skill.
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. However, 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 new problems emerged as the distance
between the nodes increased. The main problem that 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. Hardware virtualization is still
one of the most common types of virtualization.
• 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. Needless to say,
social media is possible because of this technology only. It gained major
popularity in 2004.

• 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.

Characteristics of Cloud Computing


There are many characteristics of Cloud Computing here are a few of them:
1. On-demand self-services: Cloud computing services do not require any
human administrators, users themselves are able to provision, monitor,
and manage computing resources as needed.
2. Broad network access: The Computing services are generally provided
over standard networks and heterogeneous devices.
3. Rapid elasticity: The Computing services should have IT resources that
are able to scale out and in quickly and on as as-needed basis. Whenever
the user requires services it is provided to him and it is scaled out as soon
as its requirement gets over.
4. Resource pooling: The IT resources (e.g., networks, servers, storage,
applications, and services) present are shared across multiple applications
and occupant in an uncommitted manner. Multiple clients are provided
service from a same physical resource.
5. Measured service: The resource utilization is tracked for each application
and occupant, it will provide both the user and the resource provider with
an account of what has been used. This is done for various reasons like
monitoring billing and effective use of resource.
6. Multi-tenancy: Cloud computing providers can support multiple tenants
(users or organizations) on a single set of shared resources.
7. Virtualization: Cloud computing providers use virtualization technology
to abstract underlying hardware resources and present them as logical
resources to users.
8. Resilient computing: Cloud computing services are typically designed
with redundancy and fault tolerance in mind, which ensures high
availability and reliability.
9. Flexible pricing models: Cloud providers offer a variety of pricing
models, including pay-per-use, subscription-based, and spot pricing,
allowing users to choose the option that best suits their needs.
10. Security: Cloud providers invest heavily in security measures to
protect their users’ data and ensure the privacy of sensitive information.
11. Automation: Cloud computing services are often highly
automated, allowing users to deploy and manage resources with minimal
manual intervention.
12. Sustainability: Cloud providers are increasingly focused on
sustainable practices, such as energy-efficient data centers and the use of
renewable energy sources, to reduce their environmental impact.
Advantages and Disadvantages of Cloud
Computing
Advantages of Cloud Computing
1) Back-up and restore data

Once the data is stored in the cloud, it is easier to get back-up and restore that data
using the cloud.

2) Improved collaboration

Cloud applications improve collaboration by allowing groups of people to quickly and


easily share information in the cloud via shared storage.

3) Excellent accessibility

Cloud allows us to quickly and easily access and store information anywhere, anytime
in the whole world, using an internet connection. An internet cloud infrastructure
increases organization productivity and efficiency by ensuring that our data is always
accessible.

4) Low maintenance cost

Cloud computing reduces both hardware and software maintenance costs for
organizations.

5) Mobility

Cloud computing allows us to easily access all cloud data via mobile.

6) IServices in the pay-per-use model

Cloud computing offers Application Programming Interfaces (APIs) to the users for
accessing services on the cloud and pays the charges as per the usage of the service.
7) Unlimited storage capacity

Cloud offers us a huge amount of storage capacity for storing our important data such
as documents, images, audio, video, etc. in one place.

8) Data security
Data security is one of the biggest advantages of cloud computing. Cloud offers many advanced
features related to security and ensures that data is securely stored and handled.

Disadvantages of Cloud Computing


A list of the disadvantages of cloud computing is given below -

1) Internet Connectivity

As you know, in cloud computing, every data (image, audio, video, etc.) is stored on the
cloud, and we access these data through the cloud by using an internet connection. If
you do not have good internet connectivity, you cannot access these data. However, we
have no any other way to access data from the cloud.

2) Vendor lock-in

Vendor lock-in is the biggest disadvantage of cloud computing. Organizations may face
problems when transferring their services from one vendor to another. As different
vendors provide different platforms, that can cause difficulty moving from one cloud to
another.

3) Limited Control

As we know, cloud infrastructure is completely owned, managed, and monitored by the


service provider, so the cloud users have less control over the function and execution of
services within a cloud infrastructure.

4) Security

Although cloud service providers implement the best security standards to store
important information. But, before adopting cloud technology, you should be aware that
you will be sending all your organization's sensitive information to a third party, i.e., a
cloud computing service provider. While sending the data on the cloud, there may be a
chance that your organization's information is hacked by Hackers.
Types of Cloud
• Public Cloud
• Private Cloud
• Hybrid Cloud
• Community Cloud

Public Cloud
Public cloud is open to all to store and access information via the Internet using the pay-
per-usage method.

In public cloud, computing resources are managed and operated by the Cloud Service
Provider (CSP). The CSP looks after the supporting infrastructure and ensures that the
resources are accessible to and scalable for the users.

Due to its open architecture, anyone with an internet connection may use the public
cloud, regardless of location or company size. Users can use the CSP's numerous
services, store their data, and run apps. By using a pay-per-usage strategy, customers
can be assured that they will only be charged for the resources they actually use, which
is a smart financial choice.

Example: Amazon elastic compute cloud (EC2), IBM SmartCloud Enterprise, Microsoft,
Google App Engine, Windows Azure Services Platform.
Characteristics of Public Cloud
The public cloud has the following key characteristics:

o Accessibility: Public cloud services are available to anyone with an internet connection.
Users can access their data and programs at any time and from anywhere.
o Shared Infrastructure: Several users share the infrastructure in public cloud settings.
Cost reductions and effective resource use are made possible by this.
o Scalability: By using the public cloud, users can easily adjust the resources they need
based on their requirements, allowing for quick scaling up or down.
o Pay-per-Usage: When using the public cloud, payment is based on usage, so users only
pay for the resources they actually use. This helps optimize costs and eliminates the need
for upfront investments.
o Managed by Service Providers: Cloud service providers manage and maintain public
cloud infrastructure. They handle hardware maintenance, software updates, and security
tasks, relieving users of these responsibilities.
o Reliability and Redundancy: Public cloud providers ensure high reliability by
implementing redundant systems and multiple data centers. By doing this, the
probability of losing data and experiencing service disruptions is reduced.
o Security Measures: Public cloud providers implement robust security measures to
protect user data. These include encryption, access controls, and regular security audits.

Advantages of Public Cloud


There are the following advantages of Public Cloud -

o Public cloud is owned at a lower cost than private and hybrid cloud.
o Public cloud is maintained by the cloud service provider, so there is no need to worry
about maintenance.
o Public cloud is easier to integrate. Hence it offers a better flexibility approach to
consumers.
o Public cloud is location independent because its services are delivered through the
internet.
o Public cloud is highly scalable as per the requirement of computing resources.
o It is accessible by the general public, so there is no limit to the number of users.
o Rapid deployment of services and applications.
o Reduced time and effort in hardware procurement and setup.
o The cloud provider offers a range of services and resources that you can avail of.
o Built-in redundancy and resilience for enhanced reliability.

Disadvantages of Public Cloud


o Public Cloud is less secure because resources are shared publicly.
o Performance depends upon the high-speed internet network link to the cloud provider.
o The data is not under the control of the client.
o Dependency on the cloud service provider for availability and service level agreements.
o Compliance challenges in meeting industry-specific regulations and standards.
o Risk of vendor lock-in and limited portability of applications and data.
o Concerns about data privacy and confidentiality.
o Potential for unexpected costs with usage-based pricing models.
o Lack of customization options and flexibility compared to private or hybrid cloud
environments.
o Reliance on the cloud provider's support and responsiveness for issue resolution.

Private Cloud
Private cloud is also known as an internal cloud or corporate cloud. It is used by
organizations to build and manage their own data centers internally or by a third party.
It can be deployed using Opensource tools such as Openstack and Eucalyptus.
Examples: VMware vSphere, OpenStack, Microsoft Azure Stack, Oracle Cloud at
Customer, and IBM Cloud Private.

Based on the location and management, National Institute of Standards and Technology
(NIST) divide private cloud into the following two parts-

o On-premise private cloud: An on-premise private cloud is situated within the physical
infrastructure of the organization. It involves setting up and running a specific data center
that offers cloud services just for internal usage by the company. The infrastructure is still
completely under the hands of the organization, which gives them the freedom to modify
and set it up in any way they see fit. Organizations can successfully manage security and
compliance issues with this degree of control. However, on-premise private cloud setup
and management necessitate significant hardware, software, and IT knowledge
expenditures.
o Outsourced private cloud: An outsourced private cloud involves partnering with a third-
party service provider to host and manage the cloud infrastructure on behalf of the
organization. The provider may operate the private cloud in their data center or a
colocation facility. In this arrangement, the organization benefits from the expertise and
resources of the service provider, alleviating the burden of infrastructure management.
The outsourced private cloud model offers scalability, as the provider can adjust
resources based on the organization's needs. Due to its flexibility, it is a desirable choice
for businesses that desire the advantages of a private cloud deployment without the
initial capital outlay and ongoing maintenance expenses involved with an on-premise
implementation.

Compared to public cloud options, both on-premise and external private clouds give
businesses more control over their data, apps, and security. Private clouds are
particularly suitable for organizations with strict compliance requirements, sensitive
data, or specialized workloads that demand high levels of customization and security.

Characteristics of Private Cloud


The private cloud has the following key characteristics:

o Exclusive Use: Private cloud is dedicated to a single organization, ensuring the resources
and services are tailored to its needs. It is like having a personal cloud environment
exclusively for that organization.
o Control and Security: Private cloud offers organizations higher control and security than
public cloud options. Organizations have more control over data governance, access
controls, and security measures.
o Customization and Flexibility: Private cloud allows organizations to customize the
infrastructure according to their specific requirements. They can configure resources,
networks, and storage to optimize performance and efficiency.
o Scalability and Resource Allocation: The private cloud can scale and allocate resources.
According to demand, businesses may scale up or down their infrastructure, effectively
using their resources.
o Performance and dependability: Private clouds give businesses more control over the
infrastructure at the foundation, improving performance and dependability.
o Compliance and Regulatory Requirements: Organizations may more easily fulfill certain
compliance and regulatory standards using the private cloud. It provides the freedom to
put in place strong security measures, follow data residency laws, and follow industry-
specific norms.
o Hybrid Cloud Integration: Private cloud can be integrated with public cloud services,
forming a hybrid cloud infrastructure. This integration allows organizations to leverage
the benefits of both private and public clouds.
Advantages of Private Cloud
There are the following advantages of the Private Cloud -

o Private cloud provides a high level of security and privacy to the users.
o Private cloud offers better performance with improved speed and space capacity.
o It allows the IT team to quickly allocate and deliver on-demand IT resources.
o The organization has full control over the cloud because it is managed by the organization
itself. So, there is no need for the organization to depends on anybody.
o It is suitable for organizations that require a separate cloud for their personal use and
data security is the first priority.
o Customizable to meet specific business needs and compliance regulations.
o Higher reliability and uptime compared to public cloud environments.
o Seamless integration with existing on-premises systems and applications.
o Better compliance and governance capabilities for industry-specific regulations.
o Enhanced flexibility in resource allocation and application deployment.

Disadvantages of Private Cloud


o Skilled people are required to manage and operate cloud services.
o Private cloud is accessible within the organization, so the area of operations is limited.
o Private cloud is not suitable for organizations that have a high user base, and
organizations that do not have the prebuilt infrastructure, sufficient manpower to
maintain and manage the cloud.
o Higher upfront costs and ongoing maintenance expenses.
o Scaling resources can be challenging compared to public or hybrid cloud options.
o Relies on internal IT staff for management and troubleshooting.
o Slower deployment timelines and implementation compared to public cloud solutions.
o Limited access to the latest advancements and innovations offered by public cloud
providers.
o Reduced flexibility and agility compared to public cloud options.
o Challenges in keeping up with hardware and software upgrades and compatibility.
o Higher risks of technology becoming outdated and the need for regular infrastructure
updates.

Hybrid Cloud
Hybrid Cloud is a combination of the public cloud and the private cloud. we can say:

Hybrid Cloud = Public Cloud + Private Cloud

Hybrid cloud is partially secure because the services which are running on the public
cloud can be accessed by anyone, while the services which are running on a private cloud
can be accessed only by the organization's users. In a hybrid cloud setup, organizations
can leverage the benefits of both public and private clouds to create a flexible and
scalable computing environment. The public cloud portion allows using cloud services
provided by third-party providers, accessible over the Internet.

Example: Google Application Suite (Gmail, Google Apps, and Google Drive), Office 365
(MS Office on the Web and One Drive), Amazon Web Services.

Characteristics of Hybrid Cloud


o Integration of Public and Private Clouds: Hybrid cloud seamlessly integrates public and
private clouds, allowing organizations to leverage both advantages. It provides a unified
platform where workloads and data can be deployed and managed across both
environments.
o Flexibility and Scalability: Hybrid cloud offers resource allocation and scalability
flexibility. Organizations can dynamically scale their infrastructure by utilizing additional
resources from the public cloud while maintaining control over critical workloads on the
private cloud.
o Enhanced Security and Control: Hybrid cloud allows organizations to maintain higher
security and control over their sensitive data and critical applications. Private cloud
components provide a secure and dedicated environment, while public cloud resources
can be used for non-sensitive tasks, ensuring a balanced approach to data protection.
o Cost Optimization: Hybrid cloud enables organizations to optimize costs by utilizing the
cost-effective public cloud for non-sensitive workloads while keeping mission-critical
applications and data on the more cost-efficient private cloud. This approach allows for
efficient resource allocation and cost management.
o Data and Application Portability: Organizations can move workloads and data between
public and private clouds as needed with a hybrid cloud. This portability offers agility and
the ability to adapt to changing business requirements, ensuring optimal performance
and responsiveness.
o Compliance and Regulatory Compliance: Hybrid cloud helps organizations address
compliance and regulatory requirements more effectively. Sensitive data and applications
can be kept within the private cloud, ensuring compliance with industry-specific
regulations while leveraging the public cloud for other non-sensitive operations.
o Disaster Recovery and Business Continuity: Hybrid cloud facilitates robust disaster
recovery and business continuity strategies. Organizations can replicate critical data and
applications between the private and public clouds, ensuring redundancy and minimizing
the risk of data loss or service disruptions.

Advantages of Hybrid Cloud


There are the following advantages of Hybrid Cloud -

o Hybrid cloud is suitable for organizations that require more security than the public cloud.
o Hybrid cloud helps you to deliver new products and services more quickly.
o Hybrid cloud provides an excellent way to reduce the risk.
o Hybrid cloud offers flexible resources because of the public cloud and secure resources
because of the private cloud.
o Hybrid facilitates seamless integration between on-premises infrastructure and cloud
environments.
o Hybrid provides greater control over sensitive data and compliance requirements.
o Hybrid enables efficient workload distribution based on specific needs and performance
requirements.
o Hybrid offers cost optimization by allowing organizations to choose the most suitable
cloud platform for different workloads.
o Hybrid enhances business continuity and disaster recovery capabilities with private and
public cloud resources.
o Hybrid supports hybrid cloud architecture, allowing applications and data to be deployed
across multiple cloud environments based on their unique requirements.

Disadvantages of Hybrid Cloud


o In Hybrid Cloud, security feature is not as good as the private cloud.
o Managing a hybrid cloud is complex because it is difficult to manage more than one type
of deployment model.
o In the hybrid cloud, the reliability of the services depends on cloud service providers.
o Potential challenges in data integration and ensuring seamless connectivity between
different cloud platforms.
o Higher costs due to the need for managing and integrating multiple cloud environments.
o Increased complexity in data governance and compliance management across different
cloud providers.
o Dependency on stable and high-bandwidth internet connections for efficient hybrid cloud
operations.
o Potential compatibility issues between various cloud platforms and applications.
o Risk of vendor lock-in and limited portability of applications and data across different
cloud providers.
o Requires skilled IT staff with expertise in managing hybrid cloud environments.
Community Cloud
Community cloud allows systems and services to be accessible by a group of several
organizations to share the information between the organization and a specific
community. It is owned, managed, and operated by one or more organizations in the
community, a third party, or a combination of them.

In a community cloud setup, the participating organizations, which can be from the same
industry, government sector, or any other community, collaborate to establish a shared
cloud infrastructure. This infrastructure allows them to access shared services,
applications, and data relevant to their community.

Example: Health Care community cloud

Characteristics of Community Cloud


o Shared Infrastructure: Community cloud provides a shared infrastructure accessible to a
specific community of organizations. The participating organizations can leverage this
common cloud infrastructure to meet their shared computing needs and objectives.
o Community-specific Services: The community cloud provides resources, apps, and
services adapted to the participating organizations' demands. These services are created
to meet the community's specific requirements and difficulties while promoting effective
communication and information exchange.
o Community Ownership and Management: The community cloud is owned, managed,
and operated by one or more organizations from the community, a third party, or a
combination of both. The involved organizations have a say in the governance and
decision-making procedures to ensure that the cloud infrastructure meets their shared
objectives.
o Enhanced Security and Compliance: Community cloud emphasizes security and
compliance measures relevant to the specific community. It allows for implementing
robust security controls, access management, and compliance frameworks that meet the
community's regulatory requirements and industry standards.
o Cost Sharing and Efficiency: Participating organizations in a community cloud benefit
from cost sharing. By sharing the infrastructure and resources, the costs associated with
establishing and maintaining the cloud environment are distributed among the
community members. This leads to cost efficiency and reduced financial burden for
individual organizations.
o Collaboration and Knowledge Sharing: The community cloud encourages
communication and information exchange amongst participating businesses. It gives
community members a forum for project collaboration, information sharing, and resource
exploitation. This encourages creativity, education, and effectiveness within the
neighborhood.
o Scalability and Flexibility: Community cloud enables organizations to scale up or reduce
their resources in response to demand. This allows the community to adjust to shifting
computing requirements and efficiently use cloud resources as needed.

Advantages of Community Cloud


There are the following advantages of Community Cloud -

o Community cloud is cost-effective because the whole cloud is being shared by several
organizations or communities.
o Community cloud is suitable for organizations that want to have a collaborative cloud
with more security features than the public cloud.
o It provides better security than the public cloud.
o It provdes collaborative and distributive environment.
o Community cloud allows us to share cloud resources, infrastructure, and other
capabilities among various organizations.
o Offers customization options to meet the unique needs and requirements of the
community.
o Simplifies compliance with industry-specific regulations and standards through shared
security measures.
o Provides scalability and flexibility, allowing organizations to scale resources based on
changing demands.
o Promotes efficient resource utilization, reducing wastage, and optimizing performance
within the community.
o Enables organizations to leverage shared expertise and experiences, leading to improved
decision-making and problem-solving.

Disadvantages of Community Cloud


o Community cloud is not a good choice for every organization.
o Security features are not as good as the private cloud.
o It is not suitable if there is no collaboration.
o The fixed amount of data storage and bandwidth is shared among all community
members.
o Challenges in ensuring consistent performance and availability when multiple
organizations share the same resources.
o Limited scalability options as the shared resources determine the community cloud's
capacity.
o Potential conflicts of interest among community members regarding resource allocation
and usage.
o Transparent governance and agreement frameworks are required to address potential
disputes and ensure fair resource distribution.
o Inadequate technical support and service level agreements (SLAs) compared to private
or public cloud options.
Difference between Public Cloud vs Private Cloud vs
Hybrid Cloud
Public
Factors Cloud Private Cloud Hybrid Cloud

Resources
are shared Resources are shared It is a combination of
Resources among with a single public and private clouds.
multiple organization based on the requirement.
customers

Data of
multiple Data is stored in the public
Data of a single
organizations cloud, and provides
Tenancy organization is stored
is stored in security in the public
in a public cloud
the public cloud.
cloud

It can include a mix of


public cloud pay-as-you-
go pricing, and private
Pay what you Have a variety of
Pay Model cloud fixed pricing. It has
used pricing models
other pricing models such
as consumption-based,
subscription-based, etc.

Third-party
Operated Can be a combination of
service Specific organization
by both
provider

It has more
Scalability It has scalability and
scalability It has predictability
and flexibility by allowing
and and consistency
Flexibility organizations to use a
flexibility,
combination of public and
private cloud services.

Can be more expensive,


but it can also be less
less expensive, depending on
Expensive More expensive
expensive the specific needs and
requirements of the
organization.

The general
Restricted to a Can be a combination of
Availability public (over
specific organization both.
the internet)

Cloud Computing Architecture


Cloud computing architecture is divided into the following two parts -

o Front End
o Back End
Front End
The front end is used by the client. It contains client-side interfaces and applications that
are required to access the cloud computing platforms. The front end includes web
servers (including Chrome, Firefox, internet explorer, etc.), thin & fat clients, tablets, and
mobile devices.

Back End
The back end is used by the service provider. It manages all the resources that are
required to provide cloud computing services. It includes a huge amount of data storage,
security mechanism, virtual machines, deploying models, servers, traffic control
mechanisms, etc.

Components of Cloud Computing Architecture


There are the following components of cloud computing architecture -

1. Client Infrastructure

Client Infrastructure is a Front end component. It provides GUI (Graphical User


Interface) to interact with the cloud.

2. Application

The application may be any software or platform that a client wants to access.

3. Service

A Cloud Services manages that which type of service you access according to the client’s
requirement.

Cloud computing offers the following three types of services:

i. Software as a Service (SaaS) – It is also known as cloud application services. Mostly,


SaaS applications run directly through the web browser means we are not required to
download and install these applications. Some important example of SaaS is given
below –

Example: Google Apps, Salesforce Dropbox, Slack, Hubspot, Cisco WebEx.


ii. Platform as a Service (PaaS) – It is also known as a cloud platform service. It is quite
similar to SaaS, but the difference is that PaaS provides a platform for software creation,
but using SaaS, we can access software over the internet without the need for any
platform.

Example: Windows Azure, Force.com, Magento Commerce Cloud, OpenShift.

iii. Infrastructure as a Service (IaaS) – It is also known as cloud infrastructure services.


It is responsible for managing application data, middleware, and runtime environments.

Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco
Metapod.

4. Runtime Cloud

Runtime Cloud provides the execution and runtime environment to the virtual
machines.

5. Storage

Storage is one of the most important components of cloud computing. It provides a huge
amount of storage capacity in the cloud to store and manage data.

6. Infrastructure

It provides services on the host level, application level, and network level. Cloud
infrastructure includes hardware and software components such as servers, storage,
network devices, virtualization software, and other storage resources that are needed to
support the cloud computing model.

7. Management

Management is used to manage components such as application, service, runtime cloud,


storage, infrastructure, and other security issues in the backend and establish
coordination between them.

8. Security

Security is an in-built back end component of cloud computing. It implements a security


mechanism in the back end.
9. Internet

The Internet is a medium through which the front end and back end can interact and
communicate with each other.

Underlying Principles of Parallel and Distributed Computing


Systems

Parallel Processing
• Processing multiple tasks simultaneously in multiple processors is called parallel
processing.
• Parallel program consists of multiple processes (tasks) simultaneously solving a
given problem.
• Divide-and-Conquer technique is used.

Applications for Parallel Processing

• Science and Engineering


• Atmospheric Analysis
• Earth Sciences
• Electrical Circuit Design
• Industrial and Commercial
• Data Mining
• Web Search Engine
• Graphics Processing

Why to use parallel processing

• Save time and money: More resources at a task will shorten its time for completion,
with potential cost savings.
• Provide concurrency: Single computing resources can only do one task at a time.
• Serial computing limits: Transmission speeds depend directly upon hardware.
Distributed Memory Architecture

• A distributed system is a collection of large amount of independent computers that


appear to its users as a single coherent system.
• Distributed Systems have their own local memory
Advantages

• Memory is scalable with the number of processors


• Processes can be accessed rapidly with its own memory without any interference
• Cost effective use of commodity processors and networking
• Disadvantages
• The programmer is responsible for many of these details associated with data
communication between processes
• Non-uniform memory access time data residing in a remote node to access local data
Difference between Parallel Computing and Distributed Computing:

S.NO Parallel Computing Distributed Computing

Many operations are performed System components are located at


1.
simultaneously different locations

2. Single computer is required Uses multiple computers

Multiple processors perform Multiple computers perform multiple


3.
multiple operations operations
It may have shared or distributed
4. It has only distributed memory
memory

Processors communicate with Computers communicate with each other


5.
each other through a bus through message passing.

Improves system scalability, fault


6. Improves the system performance
tolerance, and resource sharing capabilities

Introduction to Eucalyptus
Eucalyptus is a Linux-based open-source software architecture for cloud
computing and also a storage platform that implements Infrastructure a Service
(IaaS). It provides quick and efficient computing services. Eucalyptus was
designed to provide services compatible with Amazon’s EC2 cloud and Simple
Storage Service(S3).
Components of Architecture

• Node Controller is the lifecycle of instances running on each node.


Interacts with the operating system, hypervisor, and Cluster Controller.
It controls the working of VM instances on the host machine.
• Cluster Controller manages one or more Node Controller and Cloud
Controller simultaneously. It gathers information and schedules VM
execution.
• Storage Controller (Walrus) Allows the creation of snapshots of
volumes. Persistent block storage over VM instances. Walrus Storage
Controller is a simple file storage system. It stores images and
snapshots. Stores and serves files using S3(Simple Storage Service)
APIs.
• Cloud Controller Front-end for the entire architecture. It acts as a
Complaint Web Services to client tools on one side and interacts with
the rest of the components on the other side.

Operation Modes Of Eucalyptus

• Managed Mode: Numerous security groups to users as the network is


large. Each security group is assigned a set or a subset of IP addresses.
Ingress rules are applied through the security groups specified by the
user. The network is isolated by VLAN between Cluster Controller and
Node Controller. Assign two IP addresses on each virtual machine.
• Managed (No VLAN) Node: The root user on the virtual machine can
snoop into other virtual machines running on the same network layer.
It does not provide VM network isolation.
• System Mode: Simplest of all modes, least number of features. A
MAC address is assigned to a virtual machine instance and attached to
the Node Controller’s bridge Ethernet device.
• Static Mode: Similar to system mode but has more control over the
assignment of IP address. MAC address/IP address pair is mapped to
static entry within the DHCP server. The next set of MAC/IP addresses
is mapped.
Advantages Of The Eucalyptus Cloud
1. Eucalyptus can be utilized to benefit both the Eucalyptus private cloud
and the Eucalyptus public cloud.
2. Examples of Amazon or Eucalyptus machine pictures can be run on
both clouds.
3. Its API is completely similar to all the Amazon Web Services.
4. Eucalyptus can be utilized with DevOps apparatuses like Chef and
Puppet.
5. Although it isn’t as popular yet but has the potential to be an
alternative to OpenStack and CloudStack.
6. It is used to gather hybrid, public, and private clouds.
7. It allows users to deliver their own data centers into a private cloud
and hence, extend the services to other organizations.

Nimbus
Nimbus is an open-source toolkit to convert a computer cluster into an
Infrastructure-as-a-Service cloud to provide compute cycles for scientific
communities. It allows a client to lease remote resources by deploying
virtual machines (VMs) on those resources and configuring them to
represent an environment desired by the user.

Nimbus is comprised of two products:

• Nimbus Infrastructure is an open source EC2/S3-compatible


Infrastructure-as-a-Service implementation specifically targeting
features of interest to the scientific community such as support for
proxy credentials, batch schedulers, best-effort allocations and
others.
• Nimbus Platform is an integrated set of tools, operating in a multi-
cloud environment, that deliver the power and versatility of
infrastructure clouds to scientific users. Nimbus Platform allows you
to reliably deploy, scale, and manage cloud resources.
Nimbus Architecture
• Nimbus is a cloud computing architecture designed to provide
efficient and scalable resource management.
• It consists of several components that work together to enable the
smooth operation of cloud services.

Components of Nimbus
A. Service Node

1. The Service Node is a crucial component in the Nimbus architecture.

2. It acts as a central point for managing services and coordinating


various tasks within the cloud environment.

3. The Service Node handles responsibilities such as user


authentication, resource monitoring, and service orchestration.

4. It serves as the control center for managing the cloud infrastructure.

B. VMM (Virtual Machine Manager) Node


1. The VMM Node, also known as the Hypervisor, is responsible for
managing and running VMs on physical hardware.

2. It provides the necessary virtualization capabilities to create and


manage multiple VM instances on a single physical server.

3. The VMM Node ensures efficient allocation and utilization of


computing resources for running VMs.

C. SSH (Secure Shell)

1. SSH is a network protocol that enables secure remote access to


computers and servers.

2. In the context of Nimbus, SSH is used to establish secure


communication and remote management of the cloud infrastructure.

3. It allows administrators and users to remotely access and control the


Service Node, VMM Nodes, and other components securely.

4. SSH ensures that data exchanges between the user and the cloud
infrastructure are encrypted and protected.

Open Nebula
OpenNebula is a powerful, but easy-to-use, open-source platform to build
and manage Enterprise Clouds. OpenNebula provides unified
management of IT infrastructure and applications, avoiding vendor lock-
in and reducing complexity, resource consumption, and operational costs.

Importance of OpenNebula
• Centralized Management gets a single interface to manage your private
cloud computing needs. You can also manage your infrastructure and
virtualization needs. You can create, manage, and track your
networks, storage, and virtual machines from anywhere. The
interface is user-friendly and intuitive. It allows you to manage your
infrastructure efficiently without extensive technical knowledge
• Scalability- OpenNebula is highly scalable. You can easily add or remove
resources to meet your changing needs. Depending on your requirements,
you can scale your infrastructure up or down without extra hardware or
software. OpenNebula also supports automatic resource allocation.
• Cost-Effectiveness- OpenNebula is an open-source platform, meaning it’s
free to use and distribute. Since you don’t need to pay for expensive licenses
or subscriptions, it is a cost-effective solution for businesses of all sizes.
• Flexibility- This flexibility allows you to select the ideal virtualization
technology for your needs. This, in turn, gets you free from vendor or
solution restrictions. OpenNebula also supports a range of storage backends.

CloudSim
CloudSim is an open-source framework, which is used to simulate cloud
computing infrastructure and services. It is developed by the CLOUDS Lab
organization and is written entirely in Java. It is used for modelling and
simulating a cloud computing environment as a means for evaluating a
hypothesis prior to software development in order to reproduce tests and
results.

Benefits of CloudSim

• No capital investment involved. With a simulation tool like


CloudSim, there is no installation or maintenance cost.
• Easy to use and Scalable. You can change the requirements such as
adding or deleting resources by changing just a few lines of code.
CloudSim Architecture:

CloudSim Core Simulation Engine provides interfaces for the management of


resources such as VM, memory, and bandwidth of virtualized Datacenters.
CloudSim layer manages the creation and execution of core entities such as
VMs, Cloudlets, Hosts, etc. It also handles network-related execution along with
the provisioning of resources and their execution and management.
User Code is the layer controlled by the user. The developer can write the
requirements of the hardware specifications in this layer according to the
scenario.
Some of the most common classes used during simulation are:
• Datacenter: used for modelling the foundational hardware equipment
of any cloud environment, that is the Datacenter. This class provides
methods to specify the functional requirements of the Datacenter as
well as methods to set the allocation policies of the VMs etc.
• Host: this class executes actions related to the management of virtual
machines. It also defines policies for provisioning memory and
bandwidth to the virtual machines, as well as allocating CPU cores to
the virtual machines.
• VM: this class represents a virtual machine by providing data
members defining a VM’s bandwidth, RAM, MIPS (million instructions
per second), and size while also providing setter and getter methods
for these parameters.
• Cloudlet: a cloudlet class represents any task that is run on a VM, like
a processing task, a memory access task, or a file updating task, etc. It
stores parameters defining the characteristics of a task such as its
length, size, and mi (million instructions), and provides methods similar
to VM class while also providing methods that define a task’s execution
time, status, cost, and history.
• DatacenterBroker: is an entity acting on behalf of the user/customer.
It is responsible for the functioning of VMs, including VM creation,
management, destruction, and submission of cloudlets to the VM.
• CloudSim: this is the class responsible for initializing and starting the
simulation environment after all the necessary cloud entities have been
defined and later stopping after all the entities have been destroyed.

You might also like