0% found this document useful (0 votes)
30 views16 pages

Imp Cloud Computing

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
0% found this document useful (0 votes)
30 views16 pages

Imp Cloud Computing

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 16

What is cloud computing?

"The cloud" refers to servers that are accessed over the Internet, and the software
and databases that run on those servers. Cloud servers are located in data centers all
over the world. By using cloud computing, users and companies do not have to
manage physical servers themselves or run software applications on their own
machines.

The cloud enables users to access the same files and applications from almost any
device, because the computing and storage takes place on servers in a data center,
instead of locally on the user device. This is why a user can log in to their Instagram
account on a new phone after their old phone breaks and still find their old account in
place, with all their photos, videos, and conversation history. It works the same way
with cloud email providers like Gmail or Microsoft Office 365, and with cloud
storage providers like Dropbox or Google Drive.

The components of cloud computing include:


 Hardware: Physical devices such as servers, routers, firewalls, load balancers,
networking equipment, and storage arrays
 Virtualization: Abstracts resources from hardware devices
 Storage: A component of cloud infrastructure
 Network: A component of cloud infrastructure that can be an internet, intranet, or
intercloud
 Front end: Includes the user interface and client devices
 Back end: Includes servers, storage, and databases
 Cloud services: Includes the software applications and services delivered over the
internet
 Cloud-based delivery model: A component of cloud architecture
Cloud computing architecture allows individuals and organizations to access,
store, and share data from anywhere. It hides the complexities of how
computers communicate, the physical machines they run on, and security
measures.

What are the types of Cloud Services?


The following are the types of cloud also known as cloud deployment models
as follows:
1. Public cloud
2. Private cloud
3. Hybrid cloud
4. Community cloud
5.
1. Public Cloud
 Public clouds are managed by third parties which provide cloud services
over the internet to the public, these services are available as pay-as-you-
go billing models.
 They offer solutions for minimizing IT infrastructure costs and become a
good option for handling peak loads on the local infrastructure. Public
clouds are the go-to option for small enterprises, which can start their
businesses without large upfront investments by completely relying on
public infrastructure for their IT needs.
 The fundamental characteristics of public clouds are multitenancy. A
public cloud is meant to serve multiple users, not a single customer. A
user requires a virtual computing environment that is separated, and
most likely isolated, from other users.
Examples: Amazon EC2, IBM, Azure, GCP

2. Private cloud
 Private clouds are distributed systems that work on private infrastructure
and provide the users with dynamic provisioning of computing resources.
Instead of a pay-as-you-go model in private clouds, there could be other
schemes that manage the usage of the cloud and proportionally billing of
the different departments or sections of an enterprise. Private cloud
providers are HP Data Centers, Ubuntu, Elastic-Private cloud, Microsoft,
etc.
Examples: VMware vCloud Suite, OpenStack, Cisco Secure Cloud, Dell Cloud
Solutions, HP Helion Eucalyptus

3. Hybrid cloud
 A hybrid cloud is a heterogeneous distributed system formed by
combining facilities of the public cloud and private cloud. For this reason,
they are also called heterogeneous clouds.
 A major drawback of private deployments is the inability to scale on-
demand and efficiently address peak loads. Here public clouds are
needed. Hence, a hybrid cloud takes advantage of both public and private
clouds.
 Examples: AWS Outposts, Azure Stack, Google Anthos, IBM Cloud
Satellite, Oracle Cloud at Customer
4. Community Cloud
 Community clouds are distributed systems created by integrating the
services of different clouds to address the specific needs of an industry, a
community, or a business sector. But sharing responsibilities among the
organizations is difficult.
 In the community cloud, the infrastructure is shared between
organizations that have shared concerns or tasks. An organization or a
third party may manage the cloud.
 Examples: CloudSigma, Nextcloud, Synology C2, OwnCloud, Stratoscale
Vision of cloud computing
The vision of cloud computing revolves around providing on-demand access to
computing resources like storage, servers, databases, networking, software, and more
over the internet, rather than relying on local servers or personal devices. Here’s a
breakdown of the key aspects of this vision:

1. Accessibility and Availability:


 Anywhere, Anytime Access: Users can access their data and applications from anywhere in
the world as long as they have an internet connection. This enables remote work and global
collaboration.
 High Availability: Cloud services aim for minimal downtime, ensuring that applications and
services are available around the clock. This is achieved through redundant systems and
disaster recovery protocols.

2. Scalability:
 Elasticity: Cloud computing allows organizations to scale resources up or down based on
demand. This means you can quickly expand or shrink storage, computing power, or
bandwidth to accommodate varying levels of usage.
 Cost Efficiency: Pay-as-you-go pricing models mean that users only pay for the resources
they consume, avoiding upfront investments in hardware and infrastructure.
3. Resource Optimization:
 Multi-Tenancy: Cloud platforms can host multiple users (tenants) on the same physical
infrastructure, optimizing resource utilization and reducing costs.
 Automation: Many cloud services automate routine tasks like software updates, backups,
and maintenance, freeing up time for businesses to focus on their core activities.

4. Innovation and Agility:


 Rapid Deployment: New applications and services can be developed, tested, and deployed
quickly without the need for extensive setup of physical infrastructure.
 Access to Advanced Technologies: Cloud providers offer cutting-edge tools like machine
learning, big data analytics, and IoT services, which can be integrated into applications
without the need for specialized hardware or software.

5. Security and Compliance:


 Shared Responsibility Model: Cloud providers manage the security of the cloud
infrastructure, while users are responsible for securing their data and applications within the
cloud. This division allows for more robust security measures at the infrastructure level.
 Compliance Support: Many cloud services help organizations meet regulatory requirements
by providing compliance certifications and features that align with industry standards.

6. Interoperability and Hybrid Solutions:


 Hybrid Cloud: The ability to integrate on-premises infrastructure with cloud resources allows
businesses to leverage the benefits of both. This approach supports legacy systems while
taking advantage of cloud scalability.
 Interoperability: Cloud computing envisions a world where different platforms and services
can work together seamlessly, allowing data and applications to move between
environments without friction.

7. Empowering Data-Driven Decisions:


 Big Data and Analytics: Cloud computing makes it easier to process and analyze large
volumes of data. Organizations can use these insights for better decision-making,
personalized customer experiences, and predicting trends.
 AI and Machine Learning Integration: Cloud platforms often provide AI and ML services that
can be used to build intelligent applications without the need for specialized infrastructure.

In summary, the vision of cloud computing is to create a flexible, scalable, and


accessible ecosystem for computing resources that empower businesses and
individuals to innovate and operate efficiently, without the constraints of traditional
IT infrastructure.

The Cloud Computing Reference Model provides a framework for understanding


the different components, services, and layers of cloud computing. It helps to define
the interactions and responsibilities between different roles and services in the cloud
ecosystem. Here are the core layers and components typically described in a cloud
computing reference model:
1. Service Models (Cloud Delivery Models):

These are the primary ways in which cloud services are offered. Each model
represents a different level of abstraction and user responsibility.

Infrastructure as a Service (IaaS):


o Provides virtualized computing resources over the internet, such as virtual
machines, storage, and networks.
o Users manage operating systems, applications, and data but rely on the provider for
physical hardware.
o Examples: Amazon EC2, Google Compute Engine, Microsoft Azure.

Platform as a Service (PaaS):

o Offers a platform and environment for developers to build, deploy, and manage
applications without dealing with underlying infrastructure.
o It includes servers, storage, databases, and development tools.
o Examples: Google App Engine, Microsoft Azure App Service, Heroku.

Software as a Service (SaaS):

o Delivers software applications over the internet, which are accessible through a web
browser or API.
o Users do not manage the underlying infrastructure, just the software configuration.
o Examples: Google Workspace, Salesforce, Microsoft 365.

2. Deployment Models:

These describe how cloud services are deployed based on the level of accessibility
and management.

Public Cloud:

o Services are offered over the public internet by third-party providers. They are
accessible to anyone who wants to use or purchase them.
o Suitable for scalable and cost-effective solutions.
o Examples: Amazon Web Services (AWS), Google Cloud Platform (GCP).

Private Cloud:

o The cloud infrastructure is operated solely for a single organization. It may be


hosted on-premises or by a third party.
o Offers more control and customization, often used by organizations with strict
security or compliance requirements.
o Examples: VMware vSphere, OpenStack.

Hybrid Cloud:

o Combines elements of public and private clouds, allowing data and applications to
be shared between them.
o Offers flexibility, enabling businesses to keep sensitive data in a private environment
while utilizing the scalability of the public cloud.
o Example: AWS Outposts, Microsoft Azure Stack.

Community Cloud:

o Shared by multiple organizations with similar needs or interests, such as compliance


or security.
o It is managed by the organizations or a third party and designed for a specific
community or industry.

3. Cloud Computing Architecture Layers:

The architecture layers help define the core components and how they interact within
the cloud environment.

User Layer:

o Interfaces with users, providing access through web portals, mobile apps, or APIs.
o This is where users interact with SaaS applications or manage services provided by
IaaS or PaaS.


Application Layer:

o Hosts applications that are deployed in the cloud.


o This includes various web services, business applications, and databases that
leverage the underlying infrastructure and platform.

Platform Layer:

o Provides services for developing, testing, and deploying applications.


o Includes middleware, databases, runtime environments, and other tools that
simplify application management.

Infrastructure Layer:

o Manages the core computing resources such as servers, storage, network


components, and virtualization technology.
o This is the foundation layer that abstracts physical hardware to provide virtualized
resources for higher layers.

Physical Layer:

o The actual physical servers, storage systems, and networking hardware that make
up the cloud data centers.
o Managed and maintained by the cloud provider.

4. Management and Orchestration:


 Cloud Management Platform (CMP): Tools that help in managing the provisioning,
automation, and monitoring of cloud services. CMPs ensure resources are properly allocated,
performance is monitored, and usage is tracked for billing.
 Orchestration Tools: Automate the deployment, coordination, and scaling of cloud
resources. Examples include Kubernetes for managing containers and Terraform for
infrastructure as code (IaC).

5. Security and Compliance:


 Security mechanisms are embedded across all layers of the reference model.
 Identity and Access Management (IAM), encryption, firewalls, intrusion
detection/prevention, and compliance tools help ensure that data and applications in the
cloud are secure.
 Compliance frameworks ensure that cloud services adhere to regulations like GDPR, HIPAA,
or PCI DSS.

6. Network Model:
 Network Services: Includes connectivity options like VPNs, direct connect services, and
virtual private clouds (VPCs).
 It handles traffic routing between different cloud services, data centers, and external users.
 This layer ensures low latency, high throughput, and secure data transmission.

+------------------+
| User Layer | (End-User Interface)
+------------------+
| Application | (SaaS)
+------------------+
| Platform | (PaaS)
+------------------+
| Infrastructure | (IaaS - VM, Storage, Network)
+------------------+
| Physical | (Data Center Hardware)
+------------------+
| Security & Mgmt | (IAM, Monitoring, Automation)
+------------------+
| Network | (Connectivity, VPCs)
+------------------+

Cloud Computing Architecture


Architecture of cloud computing is the combination of both SOA (Service
Oriented Architecture) and EDA (Event Driven Architecture). Client
infrastructure, application, service, runtime cloud, storage, infrastructure,
management and security all these are the components of cloud computing
architecture.
The cloud architecture is divided into 2 parts, i.e.
1. Frontend
2. Backend
The below figure represents an internal architectural view of cloud
computing.
Architecture of Cloud Computing

1. Frontend

Frontend of the cloud architecture refers to the client side of cloud


computing system. Means it contains all the user interfaces and applications
which are used by the client to access the cloud computing
services/resources. For example, use of a web browser to access the cloud
platform.

2. Backend

Backend refers to the cloud itself which is used by the service provider. It
contains the resources as well as manages the resources and provides
security mechanisms. Along with this, it includes huge storage, virtual
applications, virtual machines, traffic control mechanisms, deployment
models, etc.

Components of Cloud Computing Architecture


Following are the components of Cloud Computing Architecture
1. Client Infrastructure – Client Infrastructure is a part of the frontend
component. It contains the applications and user interfaces which are
required to access the cloud platform. In other words, it provides a
GUI( Graphical User Interface ) to interact with the cloud.
2. Application : Application is a part of backend component that refers to a
software or platform to which client accesses. Means it provides the
service in backend as per the client requirement.
3. Service: Service in backend refers to the major three types of cloud
based services like SaaS, PaaS and IaaS . Also manages which type of
service the user accesses.
4. Runtime Cloud: Runtime cloud in backend provides the execution and
Runtime platform/environment to the Virtual machine.
5. Storage: Storage in backend provides flexible and scalable storage
service and management of stored data.
6. Infrastructure: Cloud Infrastructure in backend refers to the hardware
and software components of cloud like it includes servers, storage,
network devices, virtualization software etc.

Economics of Cloud Computing


Economics of Cloud Computing is based on the PAY AS YOU GO method.
Users/Customers must have to pay only for their way of the usage of the
cloud services. It is definitely beneficial for the users. So the Cloud is
economically very convenient for all. Another side is to eliminate some
indirect costs which is generated by assets such as license of the software
and their support. In the cloud, users can use software applications on a
subscription basis without any cost because the property of the software
providing service remains to the cloud provider.
Economical background of the cloud is more useful for developers in the
following ways:
 Pay as you go model offered by cloud providers.
 Scalable and Simple.
Cloud Computing Allows:
Reduces the capital costs of infrastructure.
Removes the maintenance cost.
Removes the administrative cost.
What is Capital Cost?
It is cost occurred in the purchasing infrastructure or the assets that is
important in the production of goods. It takes a long time to generate profit.
In the case of start-ups, there is no extra budget for the infrastructure and
its maintenance. So cloud can minimizes expenses of any small organization
in terms of economy. It leads to the developers can only focus on the
development logic and not on the maintenance of the infrastructure.

There are three different Pricing Strategies that are introduced by Cloud
Computing: Tiered Pricing, Per-unit Pricing, and Subscription-based Pricing.
These are explained as following below.
1. Tiered Pricing: Cloud Services are offered in the various tiers. Each tier
offers to fix service agreements at a specific cost. Amazon EC2 uses this
kind of pricing.
2. Per-unit Pricing: The model is based upon the unit-specific service
concept. Data transfer and memory allocation include in this model for
specific units. GoGrid uses this kind of pricing in terms of RAM/hour.
3. Subscription-based Pricing: In this model, users are paying periodic
subscription fees for the usage of the software.

Approach of parallel computing


Parallel computing is a computing architecture that uses multiple processors
or cores to simultaneously perform computations. The approach
involves breaking down a problem into smaller tasks and running them
concurrently.

Here are some approaches to parallel computing:



Breaking down problems

Parallel computing breaks down a problem into smaller parts that can be solved
simultaneously. Each part is then broken down into a series of instructions that are
executed simultaneously on different processors.


Using a control mechanism

An overall control or coordination mechanism is employed to manage the parallel
computing process.


Using barriers

Many parallel programs require subtasks to act in synchrony, which can be achieved
using a barrier. Barriers are typically implemented using a lock or a semaphore.


Using lock-free and wait-free algorithms

These algorithms avoid the use of locks and barriers, but they can be difficult to
implement and require correctly designed data structures.


Parallel computing is used in a wide range of applications, including: Big data
analytics, Artificial intelligence, Weather forecasting, Scientific research, and
The Internet of Things (IoT)

Parallel Computing :
It is the use of multiple processing elements simultaneously for solving any
problem. Problems are broken down into instructions and are solved
concurrently as each resource that has been applied to work is working at
the same time.
Advantages of Parallel Computing over Serial Computing are as follows:
1. It saves time and money as many resources working together will reduce
the time and cut potential costs.
2. It can be impractical to solve larger problems on Serial Computing.
3. It can take advantage of non-local resources when the local resources are
finite.
4. Serial Computing ‘wastes’ the potential computing power, thus Parallel
Computing makes better work of the hardware.

Types of Parallelism:
1. Bit-level parallelism –
It is the form of parallel computing which is based on the increasing
processor’s size. It reduces the number of instructions that the system
must execute in order to perform a task on large-sized data.
Example: Consider a scenario where an 8-bit processor must compute the
sum of two 16-bit integers. It must first sum up the 8 lower-order bits,
then add the 8 higher-order bits, thus requiring two instructions to
perform the operation. A 16-bit processor can perform the operation with
just one instruction.
2. Instruction-level parallelism –
A processor can only address less than one instruction for each clock
cycle phase. These instructions can be re-ordered and grouped which are
later on executed concurrently without affecting the result of the
program. This is called instruction-level parallelism.
3. Task Parallelism –
Task parallelism employs the decomposition of a task into subtasks and
then allocating each of the subtasks for execution. The processors
perform the execution of sub-tasks concurrently.
4. Data-level parallelism (DLP) –
Instructions from a single stream operate concurrently on several data –
Limited by non-regular data manipulation patterns and by memory
bandwidth
Why parallel computing?
 The whole real-world runs in dynamic nature i.e. many things happen at a
certain time but at different places concurrently. This data is extensively
huge to manage.
 Real-world data needs more dynamic simulation and modeling, and for
achieving the same, parallel computing is the key.
 Parallel computing provides concurrency and saves time and money.
 Complex, large datasets, and their management can be organized only
and only using parallel computing’s approach.
 Ensures the effective utilization of the resources. The hardware is
guaranteed to be used effectively whereas in serial computation only
some part of the hardware was used and the rest rendered idle.
 Also, it is impractical to implement real-time systems using serial
computing.
Applications of Parallel Computing:
 Databases and Data mining.
 Real-time simulation of systems.
 Science and Engineering.
 Advanced graphics, augmented reality, and virtual reality.
Limitations of Parallel Computing:
 It addresses such as communication and synchronization between
multiple sub-tasks and processes which is difficult to achieve.
 The algorithms must be managed in such a way that they can be handled
in a parallel mechanism.
 The algorithms or programs must have low coupling and high cohesion.
But it’s difficult to create such programs.
 More technically skilled and expert programmers can code a parallelism-
based program well.

You might also like