0% found this document useful (0 votes)
29 views40 pages

DC 5

Uploaded by

sonalijv18
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)
29 views40 pages

DC 5

Uploaded by

sonalijv18
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/ 40

UNIT-5

CLOUD COMPUTING
Cloud computing:

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, it is a technology where the resource is provided
as a service through the Internet to the user. The data which is stored can be files, images,
documents, or any other storable document.

Some operations which can be performed with cloud computing are –

● Storage, backup, and recovery of data


● Delivery of software on demand
● Development of new applications and services
● Streaming videos and audio

Cloud Computing Architecture:


Cloud computing architecture refers to the components and sub-components required for cloud
computing. These components typically refer to:

● Front end(fat client, thin client)


● Back-end platforms(servers, storage)
● Cloud-based delivery and a network(Internet, Intranet, Intercloud)

Why Cloud Computing?


Cost Efficiency:
Resource Optimization: Pay for the resources you use, reducing the need for upfront
capital investment.
Economies of Scale: Cloud providers benefit from large-scale operations, leading to
cost savings passed on to users.
Scalability:
On-Demand Resources: Easily scale up or down based on workload demands.
Flexible Capacity: Adjust computing resources to match application requirements in
real-time.
Accessibility:
Anytime, Anywhere Access: Access resources and applications from any device with
an internet connection.
Global Reach: Reach a global audience by deploying applications across multiple data
centers.
Reliability and Availability:
Redundancy: Cloud providers typically have redundant systems and backups,
minimizing downtime.
Service Level Agreements (SLA): Providers offer SLAs guaranteeing a certain level of
uptime.
Security:
Specialized Security Teams: Cloud providers invest in robust security measures and
employ dedicated teams.
Compliance Standards: Cloud services often adhere to industry-specific compliance
standards.
Innovation:
Focus on Core Competencies: Allows engineering teams to focus on developing and
improving core applications rather than managing infrastructure.
Rapid Deployment: Accelerates the development and deployment of new features and
services.
Data Management:
Data Backup and Recovery: Automatic backup and recovery options to safeguard
against data loss.
Data Replication: Easily replicate data across geographically distributed data centers for
improved reliability.
Collaboration:
Remote Collaboration: Facilitates collaboration among geographically dispersed teams.
Real-time Updates: Enables multiple users to work on shared documents and projects
simultaneously.
Environmental Impact:
Energy Efficiency: Cloud providers often implement energy-efficient practices, reducing
the environmental impact of computing operations.
Shared Resources: Resource pooling and virtualization lead to better utilization and
reduced overall energy consumption.

What is Cloud Hoisting


There are three layers in cloud computing. Companies use these layers based on the service
they provide.
● Infrastructure
● Platform
● Application
Fig. Three layers of Cloud Computing
At the bottom is the foundation, the Infrastructure where the people start and begin to build. This
is the layer where the cloud hosting lives.

CHARACTERISTICS OF CLOUD COMPUTING:


1. Resources Pooling
● Resource pooling means that a cloud service provider can share resources among
multiple clients, each providing a different set of services according to their needs.
● It is a multi-client strategy that can be applied to data storage, processing and
bandwidth-delivered services.
● The administration process of allocating resources in real-time does not conflict with the
client's experience.

2. On-Demand Self-Service
● This enables the client to continuously monitor server uptime, capabilities and allocated
network storage.
● This is a fundamental feature of cloud computing, and a customer can also control the
computing capabilities according to their needs.

3. Easy Maintenance
● Servers are easily maintained, and downtime is minimal or sometimes zero.
● Cloud computing powered resources often undergo several updates to optimize their
capabilities and potential.
● Updates are more viable with devices and perform faster than previous versions.

4. Scalability And Rapid Elasticity


● A key feature and advantage of cloud computing is its rapid scalability.
● This cloud feature enables cost-effective handling of workloads that require a large
number of servers but only for a short period.
● Many customers have workloads that can be run very cost-effectively due to the rapid
scalability of cloud computing.
5. Economical
● This cloud feature helps in reducing the IT expenditure of the organizations.
● In cloud computing, clients need to pay the administration for the space used by them.
● There is no cover-up or additional charges that need to be paid.
● Administration is economical, and more often than not, some space is allocated for free.

6. Measured And Reporting Service


● The measurement and reporting service is helpful for both cloud providers and their
customers.
● This enables both the provider and the customer to monitor and report which services
have been used and for what purposes.
● It helps in monitoring billing and ensuring optimum utilization of resources.

7. Security
● Cloud services make a copy of the stored data to prevent any kind of data loss.
● If one server loses data by any chance, the copied version is restored from the other
server.
● This feature comes in handy when multiple users are working on a particular file in
real-time, and one file suddenly gets corrupted.

8. Automation
● The ability of cloud computing to automatically install, configure and maintain a cloud
service is known as automation in cloud computing.
● However, achieving automation in a cloud ecosystem is not that easy.
● This requires the installation and deployment of virtual machines, servers, and large
storage.
● On successful deployment, these resources also require constant maintenance.

9. Resilience
● Resilience in cloud computing means the ability of a service to quickly recover from any
disruption.
● The resilience of a cloud is measured by how fast its servers, databases and network
systems restart and recover from any loss or damage.
● Availability is another key feature of cloud computing.
● Since cloud services can be accessed remotely, there are no geographic restrictions or
limits on the use of cloud resources.

10. Large Network Access


● A big part of the cloud's characteristics is its ubiquity.
● The client can access cloud data or transfer data to the cloud from any location with a
device and internet connection.
● These capabilities are available everywhere in the organization and are achieved with the
help of internet.
● Cloud providers deliver that large network access by monitoring and guaranteeing
measurements that reflect how clients access cloud resources and data: latency, access
times, data throughput, and more.

CLOUD DEPLOYMENT MODEL


● It works as your virtual computing environment with a choice of deployment
model depending on how much data you want to store and who has access to the
Infrastructure.
● Deployment models for cloud computing are categorized based on their location.

Public Cloud

● It is accessible to the public.


● Public deployment models in the cloud are perfect for organizations with growing
and fluctuating demands.
● It also makes a great choice for companies with low-security concerns.
● Thus, you pay a cloud service provider for networking services, compute
virtualization & storage available on the public internet.
● It is also a great delivery model for the teams with development and testing.
● Its configuration and deployment are quick and easy, making it an ideal choice for
test environments.
Benefits of Public Cloud

○ Minimal Investment - As a pay-per-use service, there is no large upfront cost and


is ideal for businesses who need quick access to resources
○ No Hardware Setup - The cloud service providers fully fund the entire
Infrastructure
○ No Infrastructure Management - This does not require an in-house team to utilize
the public cloud.

Limitations of Public Cloud

○ Data Security and Privacy Concerns - Since it is accessible to all, it does not fully
protect against cyber-attacks and could lead to vulnerabilities.
○ Reliability Issues - Since the same server network is open to a wide range of users,
it can lead to malfunction and outages
○ Service/License Limitation - While there are many resources you can exchange
with tenants, there is a usage cap.

Private Cloud

● Companies that look for cost efficiency and greater control over data & resources
will find the private cloud a more suitable choice.
● It means that it will be integrated with your data center and managed by your IT
team.
● The private cloud offers bigger opportunities that help meet specific
organizations' requirements when it comes to customization.
● It's also a wise choice for mission-critical processes that may have frequently
changing requirements.

Benefits of Private Cloud

○ Data Privacy - It is ideal for storing corporate data where only authorized
personnel gets access
○ Security - Segmentation of resources within the same Infrastructure can help with
better access and higher levels of security.
○ Supports Legacy Systems - This model supports legacy systems that cannot
access the public cloud.

Limitations of Private Cloud

○ Higher Cost - With the benefits you get, the investment will also be larger than the
public cloud. Here, you will pay for software, hardware, and resources for staff and
training.
○ Fixed Scalability - The hardware you choose will accordingly help you scale in a
certain direction
○ High Maintenance - Since it is managed in-house, the maintenance costs also
increase.
Community Cloud

● The community cloud operates in a way that is similar to the public cloud.
● There's just one difference - it allows access to only a specific set of users who
share common objectives and use cases.
● This type of deployment model of cloud computing is managed and hosted
internally or by a third-party vendor.
● However, you can also choose a combination of all three.

Benefits of Community Cloud

○ Smaller Investment - A community cloud is much cheaper than the private &
public cloud and provides great performance
○ Setup Benefits - The protocols and configuration of a community cloud must
align with industry standards, allowing customers to work much more efficiently.

Limitations of Community Cloud

○ Shared Resources - Due to restricted bandwidth and storage capacity, community


resources often pose challenges.
○ Not as Popular - Since this is a recently introduced model, it is not that popular or
available across industries

Hybrid Cloud
● Hybrid cloud is a combination of two or more cloud architectures.
● While each model in the hybrid cloud functions differently, it is all part of the same
architecture.
● Further, as part of this deployment of the cloud computing model, the internal or
external providers can offer resources.

Benefits of Hybrid Cloud

○ Cost-Effectiveness - The overall cost of a hybrid solution decreases since it


majorly uses the public cloud to store data.
○ Security - Since data is properly segmented, the chances of data theft from
attackers are significantly reduced.
○ Flexibility - With higher levels of flexibility, businesses can create custom
solutions that fit their exact requirements

Limitations of Hybrid Cloud

○ Complexity - It is complex setting up a hybrid cloud since it needs to integrate two


or more cloud architectures
○ Specific Use Case - This model makes more sense for organizations that have
multiple use cases or need to separate critical and sensitive data

A Comparative Analysis of Cloud Deployment Models


Important Factorsto Public Private Community Hybrid

Consider

Setup and ease of use Easy Requires Requires Requires professional

professional IT professional IT IT Team

Team Team

Data Security and Low High Very High High

Privacy

Scalability and High High Fixed High

flexibility requirements

Cost-Effectiveness Most Most expensive Cost is Cheaper than private

affordable distributed but more expensive

among than public

members

Reliability Low High Higher High

CLOUD SERVICE MODELS:


There are the following three types of cloud service models -
1. Infrastructure as a Service (IaaS)
2. Platform as a Service (PaaS)
3. Software as a Service (SaaS)
Infrastructure as a Service (IaaS)

● IaaS is also known as Hardware as a Service (HaaS).


● It is a computing infrastructure managed over the internet.
● The main advantage of using IaaS is that it helps users to avoid the cost and complexity
of purchasing and managing the physical servers.

Characteristics of IaaS

○ Resources are available as a service


○ Services are highly scalable
○ Dynamic and flexible
○ GUI and API-based access
○ Automated administrative tasks

Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google
Compute Engine (GCE), Rackspace, and Cisco Metacloud.
Platform as a Service (PaaS)

PaaS cloud computing platform is created for the programmer to develop, test, run, and manage
the applications.

Characteristics of PaaS

○ Accessible to various users via the same development application.


○ Integrates with web services and databases.
○ Builds on virtualization technology, so resources can easily be scaled up or down as per
the organization's need.
○ Support multiple languages and frameworks.
○ Provides an ability to "Auto-scale".

Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine,
Apache Stratos, Magento Commerce Cloud, and OpenShift.

Software as a Service (SaaS)

● SaaS is also known as "on-demand software".


● It is a software in which the applications are hosted by a cloud service provider.
● Users can access these applications with the help of internet connection and web
browser.

Characteristics of SaaS

○ Managed from a central location


○ Hosted on a remote server
○ Accessible over the internet
○ Users are not responsible for hardware and software updates. Updates are applied
automatically.
○ The services are purchased on the pay-as-per-use basis

Example: BigCommerce, Google Apps, Salesforce, Dropbox, ZenDesk, Cisco WebEx, ZenDesk,
Slack, and GoToMeeting.

Difference between IaaS, PaaS, and SaaS

IaaS Paas SaaS


It provides a virtual data It provides virtual platforms It provides web software
center to store information and and tools to create, test, and and apps to complete
create platforms for app deploy apps. business tasks.
development, testing, and
deployment.

It provides access to It provides runtime It provides software as a


resources such as virtual environments and service to the end-users.
machines, virtual storage, etc. deployment tools for
applications.

It is used by network It is used by developers. It is used by end users.


architects.

IaaS provides only PaaS provides SaaS provides


Infrastructure. Infrastructure+Platform. Infrastructure Platform
Software.

DRIVING FACTORS AND CHALLENGES:


Driving Factors:
Cost Efficiency:

● Economies of Scale: Cloud providers can offer services at a lower cost


due to their large-scale operations.
● Pay-as-You-Go Model: Users pay only for the resources they
consume, optimizing costs.

Scalability:

● On-Demand Resources: Easily scale up or down based on application


requirements.
● Flexible Capacity: Accommodate varying workloads with ease.

Accessibility:
● Anytime, Anywhere Access: Access resources and applications from
any location with an internet connection.
● Global Reach: Deploy applications across multiple data centers for a
global user base.

Innovation and Agility:

● Rapid Deployment: Accelerate development cycles and quickly bring


new features to market.
● Focus on Core Competencies: Allows organizations to concentrate on
innovation rather than infrastructure management.

Reliability and Availability:

● Redundancy: Cloud providers often have redundant systems,


minimizing downtime.
● Service Level Agreements (SLA): Providers offer SLAs guaranteeing
a certain level of service uptime.

Security:

● Specialized Security Teams: Cloud providers invest in advanced


security measures and employ dedicated teams.
● Compliance Standards: Cloud services often adhere to
industry-specific compliance standards.

Challenges:
Security Concerns:

● Data Privacy: Concerns about the confidentiality and privacy of


sensitive data stored in the cloud.
● Identity Management: Ensuring secure access and authentication
controls.

Compliance and Legal Issues:

● Data Jurisdiction: The location of data and potential conflicts with


data protection laws in different regions.
● Regulatory Compliance: Meeting industry-specific regulations and
standards.

Downtime and Service Reliability:

● Dependency on Internet Connectivity: Reliability is contingent on a


stable internet connection.
● Potential Service Outages: Downtime can occur due to provider
issues or technical glitches.
Data Migration and Portability:

● Data Transfer Speeds: Large-scale data transfers can be


time-consuming.
● Vendor Lock-In: Challenges associated with migrating data and
applications between different cloud providers.

Limited Customization:

● Standardized Services: Some organizations may find it challenging to


customize cloud services to meet specific requirements.
● Dependency on Provider Features: Relying on the features and
configurations provided by the chosen cloud service.

Lack of Control:

● Limited Visibility: Reduced control and visibility into the underlying


infrastructure.
● Dependence on Provider's Policies: Adherence to the policies and
procedures set by the cloud provider.

Cost Management:

● Unanticipated Costs: Difficulty in predicting and managing costs,


especially with fluctuating usage.
● Hidden Costs: Additional charges for certain services or features not
initially considered.

VIRTUALIZATION
● Virtualization is a technique how to separate a service from the underlying physical
delivery of that service.
● It is the process of creating a virtual version of something like computer hardware.
● It was initially developed during the mainframe era.
● 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.

● Virtualization allows sharing of a single physical instance of a resource or an application


among multiple customers and organizations at one time.
● It does this by assigning a logical name to physical storage and providing a pointer to that
physical resource on demand.
● 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.

Host Machine: The machine on which the virtual machine is going to be built is known as Host
Machine.
Guest Machine: The virtual machine is referred to as a Guest Machine.

Work of Virtualization in Cloud Computing


● Virtualization has a prominent impact on Cloud Computing.
● In the case of cloud computing, users store data in the cloud, but with the help of
Virtualization, users have the extra benefit of sharing the infrastructure.
● Cloud Vendors take care of the required physical resources, but these cloud providers
charge a huge amount for these services which impacts every user or organization.
● Virtualization helps Users or Organisations in maintaining those services which are
required by a company through external (third-party) people, which helps in reducing
costs to the company.
● This is the way through which Virtualization works in Cloud Computing.

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.
Types of Virtualization

1. Application Virtualization:
● Application virtualization helps a user to have remote access to an application from a
server.
● The server stores all personal information and other characteristics of the application but
can still run on a local workstation through the internet.
● An example of this would be a user who needs to run two different versions of the same
software.
● Technologies that use application virtualization are hosted applications and packaged
applications.

2. Network Virtualization:
● The ability to run multiple virtual networks with each having a separate control and data
plan.
● It co-exists together on top of one physical network.
● It can be managed by individual parties that are potentially confidential to each other.
● Network virtualization provides a facility to create and provision virtual networks, logical
switches, routers, firewalls, load balancers, Virtual Private Networks (VPN), and workload
security within days or even weeks.
3. Desktop Virtualization:
● Desktop virtualization allows the users’ OS to be remotely stored on a server in the data
center.
● It allows the user to access their desktop virtually, from any location by a different
machine.
● Users who want specific operating systems other than Windows Server will need to have
a virtual desktop.
● The main benefits of desktop virtualization are user mobility, portability, and easy
management of software installation, updates, and patches.

4. Storage Virtualization:
● Storage virtualization is an array of servers that are managed by a virtual storage system.
● The servers aren’t aware of exactly where their data is stored and instead function more
like worker bees in a hive.
● It makes managing storage from multiple sources be managed and utilized as a single
repository.
● storage virtualization software maintains smooth operations, consistent performance, and
a continuous suite of advanced functions despite changes, breaks down, and differences
in the underlying equipment.

5. Server Virtualization:
● This is a kind of virtualization in which the masking of server resources takes place.
● Here, the central server (physical server) is divided into multiple different virtual servers
by changing the identity number, and processors.
● So, each system can operate its operating systems in an isolated manner. Where each
sub-server knows the identity of the central server.
● It causes an increase in performance and reduces the operating cost by the deployment
of main server resources into a sub-server resource.
● It’s beneficial in virtual migration, reducing energy consumption, reducing infrastructural
costs, etc.
6. Data Virtualization:
● This is the kind of virtualization in which the data is collected from various sources and
managed at a single place without knowing more about the technical information like how
data is collected, stored & formatted then arranged that data logically so that its virtual
view can be accessed by its interested people and stakeholders, and users through the
various cloud services remotely.
● Many big giant companies are providing their services like Oracle, IBM, At scale, Cdata,
etc.

Uses of Virtualization
● Data-integration
● Business-integration
● Service-oriented architecture data-services
● Searching organizational data

LOAD BALANCING:
● Load balancing is the method of distributing network traffic equally across a pool of resources that
support an application.
● Modern applications must process millions of users simultaneously and return the correct text, videos,
images, and other data to each user in a fast and reliable manner.
● To handle such high volumes of traffic, most applications have many resource servers with duplicate
data between them.
● A load balancer is a device that sits between the user and the server group and acts as an invisible
facilitator, ensuring that all resource servers are used equally.
Benefits of load balancing
● Load balancing directs and controls internet traffic between the application servers and their
visitors or clients.
● As a result, it improves an application’s availability, scalability, security, and performance.

Application availability

● Server failure or maintenance can increase application downtime, making your application
unavailable to visitors.
● Load balancers increase the fault tolerance of your systems by automatically detecting server
problems and redirecting client traffic to available servers.
● We can use load balancing to make these tasks easier:
○ Run application server maintenance or upgrades without application downtime
○ Provide automatic disaster recovery to backup sites
○ Perform health checks and prevent issues that can cause downtime

Application scalability

● We can use load balancers to direct network traffic intelligently among multiple servers.
● our applications can handle thousands of client requests because load balancing does the
following:
○ Prevents traffic bottlenecks at any one server
○ Predicts application traffic so that you can add or remove different servers, if needed
○ Adds redundancy to your system so that you can scale with confidence

Application security

● Load balancers come with built-in security features to add another layer of security to your
internet applications.
● They are a useful tool to deal with distributed denial of service attacks, in which attackers flood
an application server with millions of concurrent requests that cause server failure.
● Load balancers can also do the following:
○ Monitor traffic and block malicious content
○ Automatically redirect attack traffic to multiple backend servers to minimize impact
○ Route traffic through a group of network firewalls for additional security

Application performance

● Load balancers improve application performance by increasing response time and reducing
network latency.
● They perform several critical tasks such as the following:
○ Distribute the load evenly between servers to improve application performance
○ Redirect client requests to a geographically closer server to reduce latency
○ Ensure the reliability and performance of physical and virtual computing resources
load balancing algorithms
● A load balancing algorithm is the set of rules that a load balancer follows to determine the best
server for each of the different client requests.
● Load balancing algorithms fall into two main categories.

Static load balancing

● Static load balancing algorithms follow fixed rules and are independent of the current server
state.
● The following are examples of static load balancing.
● Round-robin method
○ Servers have IP addresses that tell the client where to send requests.
○ The IP address is a long number that is difficult to remember.
○ To make it easy, a Domain Name System maps website names to servers.
○ When you enter aws.amazon.com into your browser, the request first goes to our name
server, which returns our IP address to your browser.
○ In the round-robin method, an authoritative name server does the load balancing
instead of specialized hardware or software.
○ The name server returns the IP addresses of different servers in the server farm turn by
turn or in a round-robin fashion.
● Weighted round-robin method
○ In weighted round-robin load balancing, you can assign different weights to each server
based on their priority or capacity.
○ Servers with higher weights will receive more incoming application traffic from the name
server.
● IP hash method
○ In the IP hash method, the load balancer performs a mathematical computation, called
hashing, on the client IP address.
○ It converts the client IP address to a number, which is then mapped to individual
servers.

Dynamic load balancing

● Dynamic load balancing algorithms examine the current state of the servers before distributing
traffic.
● The following are some examples of dynamic load balancing algorithms.
● Least connection method
○ A connection is an open communication channel between a client and a server.
○ When the client sends the first request to the server, they authenticate and establish an
active connection between each other.
○ In the least connection method, the load balancer checks which servers have the
fewest active connections and sends traffic to those servers.
○ This method assumes that all connections require equal processing power for all
servers.
● Weighted least connection method
○ Weighted least connection algorithms assume that some servers can handle more
active connections than others.
○ Therefore, you can assign different weights or capacities to each server, and the load
balancer sends the new client requests to the server with the least connections by
capacity.
● Least response time method
○ The response time is the total time that the server takes to process the incoming
requests and send a response.
○ The least response time method combines the server response time and the active
connections to determine the best server.
○ Load balancers use this algorithm to ensure faster service for all users.
● Resource-based method
○ In the resource-based method, load balancers distribute traffic by analyzing the current
server load.
○ Specialized software called an agent runs on each server and calculates usage of
server resources, such as its computing capacity and memory.
○ Then, the load balancer checks the agent for sufficient free resources before
distributing traffic to that server.

Types of load balancing


We can classify load balancing into three main categories depending on what the load balancer checks
in the client request to redirect the traffic.

Application load balancing

● Complex modern applications have several server farms with multiple servers dedicated to a
single application function.
● Application load balancers look at the request content, such as HTTP headers or SSL session
IDs, to redirect traffic.
● For example, an ecommerce application has a product directory, shopping cart, and checkout
functions.
● The application load balancer sends requests for browsing products to servers that contain
images and videos but do not need to maintain open connections.
● By comparison, it sends shopping cart requests to servers that can maintain many client
connections and save cart data for a long time.

Network load balancing

● Network load balancers examine IP addresses and other network information to redirect traffic
optimally.
● They track the source of the application traffic and can assign a static IP address to several
servers.
● Network load balancers use the static and dynamic load balancing algorithms described earlier
to balance server load.

Global server load balancing


● Global server load balancing occurs across several geographically distributed servers.
● For example, companies can have servers in multiple data centers, in different countries, and
in third-party cloud providers around the globe.
● In this case, local load balancers manage the application load within a region or zone.
● They attempt to redirect traffic to a server destination that is geographically closer to the client.
● They might redirect traffic to servers outside the client’s geographic zone only in case of server
failure.

DNS load balancing

● In DNS load balancing, you configure your domain to route network requests across a pool of
resources on your domain.
● A domain can correspond to a website, a mail system, a print server, or another service that is
made accessible through the internet.
● DNS load balancing is helpful for maintaining application availability and balancing network
traffic across a globally distributed pool of resources.

Types of load balancing technology


Load balancers are one of two types: hardware load balancer and software load balancer.

Hardware load balancers

● A hardware-based load balancer is a hardware appliance that can securely process and
redirect gigabytes of traffic to hundreds of different servers.
● You can store it in your data centers and use virtualization to create multiple digital or virtual
load balancers that you can centrally manage.

Software load balancers

● Software-based load balancers are applications that perform all load balancing functions.
● You can install them on any server or access them as a fully managed third-party service.

Hardware balancers vs software load balancers


SCALABILITY AND ELASTICITY

Cloud Elasticity
● Elasticity refers to the ability of a cloud to automatically expand or compress the
infrastructural resources on a sudden up and down in the requirement so that the workload
can be managed efficiently.
● This elasticity helps to minimize infrastructural costs.
● This is not applicable for all kinds of environments, it is helpful to address only those
scenarios where the resource requirements fluctuate up and down suddenly for a specific
time interval.
● It is not quite practical to use where persistent resource infrastructure is required to handle
the heavy workload.

● The versatility is vital for mission basic or business basic applications where any split the
difference in the exhibition may prompts enormous business misfortune.
● Thus, flexibility comes into picture where extra assets are provisioned for such application to
meet the presentation prerequisites.

● It works such a way that when number of client access expands, applications are naturally
provisioned the extra figuring, stockpiling and organization assets like central processor,
Memory, Stockpiling or transfer speed what’s more, when fewer clients are there it will
naturally diminish those as per prerequisite.

● The Flexibility in cloud is a well-known highlight related with scale-out arrangements (level
scaling), which takes into consideration assets to be powerfully added or eliminated when
required.

● It is for the most part connected with public cloud assets which is generally highlighted in
pay-per-use or pay-more only as costs arise administrations.

● The Flexibility is the capacity to develop or contract framework assets (like process, capacity
or organization) powerfully on a case by case basis to adjust to responsibility changes in the
● applications in an autonomic way.

● It makes make most extreme asset use which bring about reserve funds in foundation costs
in general.

● Relies upon the climate, flexibility is applied on assets in the framework that isn’t restricted to
equipment, programming, network, QoS and different arrangements.

● The versatility is totally relying upon the climate as now and again it might become negative
characteristic where execution of certain applications probably ensured execution.

● It is most commonly used in pay-per-use, public cloud services. Where IT managers are
willing to pay only for the duration to which they consumed the resources.

● Example: Consider an online shopping site whose transaction workload increases during
festive season like Christmas. So for this specific period of time, the resources need a spike
up. In order to handle this kind of situation, we can go for a Cloud-Elasticity service rather
than Cloud Scalability. As soon as the season goes out, the deployed resources can then be
requested for withdrawal.

Cloud Scalability
● Cloud scalability is used to handle the growing workload where good performance is also
needed to work efficiently with software or applications.
● Scalability is commonly used where the persistent deployment of resources is required to
handle the workload statically.

● Example: Consider you are the owner of a company whose database size was small in earlier
days but as time passed your business does grow and the size of your database also
increases, so in this case you just need to request your cloud service vendor to scale up your
database capacity to handle a heavy workload.
● It is totally different from what you have read above in Cloud Elasticity.
● Scalability is used to fulfill the static needs while elasticity is used to fulfill the dynamic need of
the organization.
● Scalability is a similar kind of service provided by the cloud where the customers have to
pay-per-use.
● So, in conclusion, we can say that Scalability is useful where the workload remains high and
increases statically.

Types of Scalability:

1. Vertical Scalability (Scale-up) –


In this type of scalability, we increase the power of existing resources in the working environment
in an upward direction.

2. Horizontal Scalability: In this kind of scaling, the resources are added in a horizontal row.

3. Diagonal Scalability –
It is a mixture of both Horizontal and Vertical scalability where the resources are added both
vertically and horizontally.
ELASTICITY VS SCALABILITY
Replication
● Data replication refers to the process of transferring or copying data from a database of your
choice from one server to another.
● It helps boost and maintain high data availability & accessibility, thereby facilitating data
sharing and recovery.
● Organizations leverage the power of data replication to copy their data to the cloud to
eliminate silos while addressing the increasing demand for real-time responsiveness.
● It helps them draw crucial insights and make data-driven decisions to drive growth &
innovation across departments.
● A successful cloud initiative requires organizations to chalk a plan on how they want to
replicate their data to the cloud server.
● To do this, they need to find a cloud-based data replication solution that is reliable,
easy-to-implement, cost-effective, and helps transfer data from on-premises source systems
to cloud-based destination systems with ease.
● By copying on-premises data to the cloud, enterprises can leverage cloud economies of
scale-like data warehousing, application migration, and analytics.

Cloud Vs Traditional Data Replication

● Cloud Replication refers to the process of replicating data from on-premises storage to the
cloud, or from one cloud instance to another.
● Traditional data replication involves replicating data across different physical servers on the
company’s local network.
● The following table provides a comprehensive comparison of the features of these two data
replication strategies:

Cloud Data Replication Traditional Data Replication

Data is replicated from physical storage to the Data is replicated from one physical storage
cloud, or from one cloud instance to another. to another within the company’s local
network.

It uses fully-managed remote servers located It uses in-house hardware and software that
across the town or the county. is owned and managed by the organization.

Cloud-based software and resources follow a On-premise hardware and software, require
subscription-based pricing model, allowing users users to purchase them at once, thereby
to rent them on a monthly/annum basis. These making them a capital expense.
form the operating costs.
It is cost-effective as it only requires you to set It requires you to invest in hardware and
up an account with the cloud service provider to software licenses, and hence it has a high
start the replication process. up-front cost.

It only requires you to have an active internet You may not need an active internet
connection to start the replication process. connection to perform traditional data
replication.

Advantages

The following are some of the advantages of Cloud Data Replication:

● High Availability: Cloud Data Replication keeps your data offsite and away from the
premises. In case the primary instance is destroyed by a major disaster like fire, storm,
flood, etc., your secondary data instance will be safe in the cloud, allowing you to recover
data.
● Cheap: Replicating data to the cloud is much economical than replicating and maintaining
data in your data center. It helps minimize costs associated with managing the data center,
including hardware, software, support cost, etc.
● Scalable: Cloud Replication houses the support for on-demand scalability. It allows users to
either increase or decrease their storage requirements as their business expands or
contracts. It doesn’t require users to purchase additional hardware.
● Secure: Most cloud service providers provide a fully-managed service and are solely
responsible for maintaining physical and network security. It is, therefore, quite beneficial for
a small business that lacks proper security staff.

Disadvantages

The following are some of the challenges associated with Cloud Data Replication:

● An active internet connection is needed to perform Cloud Data Replication.


● Data replicated to the cloud is prone to security breaches as the cloud is easily accessible
from all parts of the globe.
● The enterprise has to develop trust in the third party to store its data.
MONITORING IN CLOUD COMPUTING

Definition and Importance of Cloud Monitoring:


● Definition: Cloud monitoring involves tracking and managing the performance, health,
and security of cloud-based applications and infrastructure.
● Importance: Critical for ensuring reliability, proactively identifying and addressing issues,
optimizing resource utilization, and meeting service-level agreements (SLAs).

Components of Cloud Monitoring:


● Metrics: Track CPU usage, memory utilization, network traffic, and application-specific
performance indicators.
● Logs: Capture and analyze logs for debugging, auditing, and compliance.
● Traces: Use distributed tracing to monitor the flow of requests across multiple services.

Cloud Monitoring Tools:


● Cloud Provider Tools: AWS CloudWatch, Google Cloud Monitoring, Azure Monitor.
● Third-Party Tools: Prometheus, Grafana, Datadog, New Relic, Splunk.

Types of Monitoring:
● Infrastructure Monitoring: Health and performance of virtual machines, storage, and
network components.
● Application Monitoring: Performance metrics, response times, error rates, and
throughput.
● Security Monitoring: Detection and response to security incidents.

Alerting and Notifications:


● Thresholds: Set predefined thresholds for metrics to trigger alerts.
● Notification Channels: Configure alerts via email, SMS, or collaboration tools like Slack.

Automation and Remediation:


● Autoscaling: Automatically adjust resources based on demand for optimal performance.
● Runbook Automation: Automated responses for common issues to reduce manual
intervention.

Compliance and Auditing:


● Audit Trails: Maintain audit trails for monitoring activities for regulatory compliance.
● Data Encryption: Encrypt monitoring data in transit and at rest for security.

Cost Monitoring and Optimization:


● Cost Allocation: Monitor and allocate resource costs to specific projects or departments.
● Resource Right-Sizing: Optimize resource usage to minimize costs without
compromising performance.
Challenges in Cloud Monitoring:
● Complexity: Dynamic and complex cloud environments pose monitoring challenges.
● Multi-Cloud Environments: Monitoring resources across multiple providers adds
complexity.
● Data Security and Privacy: Balancing monitoring needs with data security and privacy
concerns.

Best Practices:
● Define Clear Objectives: Clearly define monitoring objectives based on business and
technical requirements.
● Continuous Improvement: Regularly review and update monitoring strategies for
evolving cloud environments.
● Collaboration: Foster collaboration between development, operations, and security
teams for comprehensive monitoring.

Cloud Services and Platforms: Compute Services

What is compute?

In cloud computing, the term “compute” describes concepts and objects related to software
computation. It is a generic term used to reference processing power, memory, networking, storage,
and other resources required for the computational success of any program.

What is IaaS?

● IaaS, or Infrastructure as a Service, is a cloud computing model that provides on-demand


access to computing resources such as servers, storage, networking, and virtualization.
● IaaS is attractive because acquiring computing resources to run applications or store
data the traditional way requires time and capital.
● Organizations must purchase equipment through procurement processes that can take
months.
● They must invest in physical spaces, typically specialized rooms with power and cooling.
● And after deploying the systems, they need IT professionals to manage and maintain
them.
IaaS defined

● Infrastructure as a service (IaaS) is the on-demand availability of highly scalable


computing resources as services over the internet.
● It eliminates the need for enterprises to procure, configure, or manage infrastructure
themselves, and they only pay for what they use.

How does it work?

● IaaS in cloud computing is when you rent access to cloud infrastructure resources as
individual services from a cloud service provider (CSP), including servers, virtual
machines, networking resources, and storage.
● IaaS helps eliminate much of the complexity and costs associated with building and
maintaining physical infrastructure in an on-premises data center.
● The CSP is responsible for managing and maintaining the infrastructure, so you can
concentrate on installing, configuring, and managing software and keeping your data
secure.
● IaaS providers also offer additional services, such as detailed billing management,
logging, monitoring, storage resiliency, and security.
● In other words, you can easily increase or decrease resources, allowing you to pay less
when needed or instantly provision and scale out resources to meet new demand.

Benefits of IaaS

● It’s economical
○ Because IaaS resources are used on demand and enterprises only have to
pay for the compute, storage, and networking resources that are actually
used, IaaS costs are fairly predictable and can be easily contained and
budgeted for.
● It’s efficient
○ IaaS resources are regularly available to businesses when they need them.
○ As a result, enterprises reduce delays when expanding infrastructure and,
alternatively, don’t waste resources by overbuilding capacity.
● It boosts productivity
○ Because the cloud provider is responsible for setting up and maintaining
the underlying physical infrastructure, enterprise IT departments save time
and money and can redirect resources to more strategic activities.
● It’s reliable
○ IaaS has no single point of failure.
○ Even if any one component of the hardware resources fails, the service will
usually still remain available.
● It’s scalable
○ One of the biggest advantages of IaaS in cloud computing is the capability
to scale the resources up and down rapidly according to the needs of the
enterprise.
● It drives faster time to market
○ Because IaaS offers virtually infinite flexibility and scalability, enterprises
can get their work done more efficiently, ensuring faster development life
cycles.

Advantages of IaaS

● Cost savings
● Increased efficiency
● More innovation
● Reliability
● High scalability
● Lower latency

Storage services:
● Cloud Computing in general is termed as a different service through the Internet.
● It has various resources which include tools and applications like data storage,
databases, servers, networking, etc.
● It has applications, platforms, and infrastructure which is surrounded by servers, laptops,
desktops, phones, and tablets.
Cloud Storage
● In Cloud Computing, Cloud storage is a virtual locker where we can remotely stash any
data.
● When we upload a file to a cloud-based server like Google Drive, OneDrive, or iCloud
that file gets copied over the Internet into a data server that is cloud-based actual physical
space where companies store files on multiple hard drives.
● Most companies have hundreds of the ese servers known as ‘server farms’ spanning
across multiple locations.
● So, if our data gets somehow lost we will not lose our data because it will be backed up
by another location.
● This is known as redundancy which keeps our data safe from being lost.

Features of Cloud Storage System:


● It has a greater availability of resources.
● Easy maintenance is one of the key benefits of using Cloud computing.
● Cloud computing has a Large Network Access.
● It has an automatic system.
● Security is one of the major components and using cloud computing you can secure all
over the networks.

Storage Systems in the Cloud


There are 3 types of storage systems in the Cloud as follows.
● Block-Based Storage System
● File-Based Storage System
● Object-Based Storage System

1. Block-Based Storage System –


● Hard drives are block-based storage systems. Your operating system like Windows or
Linux actually sees a hard disk drive. So, it sees a drive on which you can create a
volume, and then you can partition that volume and format them.
● For example, If a system has 1000 GB of volume, then we can partition it into 800 GB
and 200 GB for local C and local D drives respectively.
● Remember with a block-based storage system, your computer would see a drive, and
then you can create volumes and partitions.
2. File-Based Storage System –
● In this, you are actually connecting through a Network Interface Card (NIC). You are
going over a network, and then you can access the network-attached storage server
(NAS). NAS devices are file-based storage systems.
● This storage server is another computing device that has another disk in it. It is already
created a file system so that it’s already formatted its partitions, and it will share its file
systems over the network. Here, you can actually map the drive to its network location.
● In this, like the previous one, there is no need to partition and format the volume by the
user. It’s already done in file-based storage systems. So, the operating system sees a file
system that is mapped to a local drive letter.
3. Object-Based Storage System –
● In this, a user uploads objects using a web browser and uploads an object to a container
i.e., Object Storage Container. This uses the HTTP Protocols with the rest of the APIs (for
example: GET, PUT, POST, SELECT, DELETE).
● For example, when you connect to any website, you need to download some images,
text, or anything that the website contains. For that, it is a code HTTP GET request. If you
want to review any product then you can use PUT and POST requests.
● Also, there is no hierarchy of objects in the container. Every file is on the same level in an
Object-Based storage system.

Cloud Storage Architecture


● The Cloud Storage Architecture consists of several distributed resources, but still functions
as one, either in a cloud architecture of federated or cooperative storage.
● Durable through the manufacture of copies of versions.
● Ultimately, it is usually compatible with data replication advantages.
● Companies just need to pay for the storage they actually use, normally an average of a
month’s consumption. This does not indicate that cloud storage is less costly, but rather
that operating costs are incurred rather than capital expenses.
● Cloud storage companies can cut their energy usage by up to 70 percent, making them a
greener company.
● Storage and data security is inherent in the architecture of object storage
● The additional infrastructure, effort, and expense to incorporate accessibility and security
can be removed depending on the application.
● Tasks for storage management, such as the procurement of additional storage space, are
offloaded to the service provider’s obligation.
● It provides users with immediate access to a wide variety of tools and software housed in
another organization’s infrastructure through a web service interface.
● Very few backups servers are located in different locations across the globe, cloud storage
may be used as a natural disaster-proof backup.
● With the WebDAV protocol, cloud storage can be mapped as a local drive

Advantages of Cloud Storage


● Scalability – Capacity and storage can be expanded and performance can be enhanced.
● Flexibility – Data can be manipulated and scaled according to the rules.
● Simpler Data Migrations – As it can add and remove new and old data when required and
eliminates disruptive data migrations.
● Recovery -In the event of a hard drive failure or other hardware malfunction, you can
access your files on the cloud.

Disadvantages of Cloud Storage


● Data centers require electricity and proper internet facility to operate their work, failing
which system will not work properly.
● Support for cloud storage isn’t the best, especially if you are using a free version of a
cloud provider.
● When you use a cloud provider, your data is no longer on your physical storage.
● Cloud-based storage is dependent on having an internet connection. If you are on a slow
network you may have issues accessing your storage.

How Cloud Storage Benefits Businesses


● Businesses with handling of the data storage and its needs to save a significant amount of
space and money by eliminating the need for data storage infrastructure on business
premises.
● All necessary hardware and software data are maintained with the help of the storage
provider so the cloud users don’t have to.
● Cloud Storage benefits businesses in all possible ways i.e, ease of work, data retention, data
security and employee benefits are also a perk of using cloud storage.

● Cloud has helped employees to collaborate and work with their colleagues, also remote work
is benefited by the cloud even in business hours At the personal level, cloud storage allows
mobile data and enables digital life in the holistic way we live it today.
● Without the cloud, smartphones would not be able to be the interface of so much data (
photos, documents, information on the go. Cloud storage is used usually to store files and
can also have a positive effect on the environment since it cuts down energy consumption.

Application services
Platform as a Service (PaaS)
● Platform as a Service, also known as PaaS, is a type of cloud computing service model
that offers a flexible, scalable cloud platform to develop, deploy, run, and manage apps.
● PaaS provides everything developers need for application development without the
headaches of updating the operating system and development tools or maintaining
hardware.
● Instead, the entire PaaS environment—or platform—is delivered by a third-party service
provider via the cloud.
● PaaS helps businesses avoid the hassle and cost of installing hardware or software to
develop or host new custom applications.
● Development teams simply purchase pay-as-you-go access to everything they need to
build custom apps, including infrastructure, development tools, operating systems, and
more.
● The result is simpler, faster, and secure app development that gives developers the
freedom to focus on their application code.
Platform as a Service defined

● Platform as a Service (PaaS) is a complete cloud environment that includes everything


developers need to build, run, and manage applications—from servers and operating
systems to all the networking, storage, middleware, tools, and more.

How does PaaS work

● Unlike IaaS or SaaS service models, PaaS solutions are specific to application and
software development and typically include:
○ Cloud infrastructure: Data centers, storage, network equipment, and servers
○ Middleware software: Operating systems, frameworks, development kits (SDK),
libraries, and more
○ User interface: A graphical user interface (GUI), a command line interface (CLI), an
API interface, and in some cases, all three
● Platform as a Service is typically delivered as a secure online platform that developers
can access over the internet, allowing them to work on projects from anywhere and
collaborate freely with other members of their team. Applications are built directly on the
PaaS system and can be immediately deployed once they are completed.

Benefits of PaaS

Faster time to market


● No heavy lifts required.
● Developers have instant access to a complete application development platform that they
don’t have to build or manage, freeing up time to develop and deploy.

Low maintenance

● In-house application stacks come with headaches, especially when it comes to upgrades.
● With PaaS, the provider is responsible for keeping everything up-to-date—and none of the
maintenance pain is yours.

Cost-effective pricing

● PaaS resources are on-demand, so you only pay for what you actually use.
● A PaaS also provides access to advanced development tools and capabilities that might
be too expensive to purchase outright.

Easy scalability

● No more worrying about capacity.


● PaaS lets you scale down for low-traffic periods or scale up immediately to meet
unexpected surges in demand.

Flexible access

● Development and DevOps teams can access shared PaaS services and tools from
anywhere and on any device over an internet connection.
Shared security

● With PaaS, the provider is responsible for securing the infrastructure.


● Most major PaaS service providers also offer guidelines and best practices for building
on their platforms.

You might also like