Introduction To Cloud Computing

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

Chapter 1: Introduction to Cloud Computing

1.1 What is Cloud Computing?

Cloud computing refers to the on-demand delivery of IT resources – including servers, storage,
databases, networking, software, analytics, intelligence, and more – over the internet with pay-
as-you-go pricing. These resources are delivered as services, eliminating the need for companies
to invest in and maintain their own physical infrastructure. Think of it as renting computing
power instead of buying your own computer.

1.2 Key Concepts

 Utility Computing: Treats computing resources like a utility (e.g., electricity) where you
pay for what you use.
 Service Orientation: Focuses on delivering IT capabilities as well-defined services with
clear interfaces.
 Grid Computing: Harnesses the combined processing power and resources of multiple
computers to tackle large-scale tasks.
 Hardware Virtualization: Creates virtual machines that mimic the functionality of a
physical computer, allowing for efficient resource utilization on a single physical
machine.

1.3 A NIST Definition

The National Institute of Standards and Technology (NIST) defines cloud computing as a model
for enabling ubiquitous, on-demand network access to a shared pool of configurable computing
resources (e.g., networks, servers, storage, applications, and services) that can be rapidly
provisioned and released with minimal management effort or service provider interaction. This
definition highlights several key characteristics:

 On-demand self-service: Users can provision and configure resources as needed without
human interaction.
 Broad network access: Resources are accessible over the internet from various devices.
 Resource pooling: Resources are dynamically allocated and shared among multiple
users.
 Rapid elasticity: Resources can be scaled up or down quickly to meet changing
demands.
 Measured service: Resource usage is metered for pay-as-you-go billing.

1.4 Service Models

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

 Software as a Service (SaaS): SaaS enables consumers to use the software of the service
provider on demand. The consumer does not have to manage any server- or network-
related issues, except possibly certain configuration settings.

 Platform as a Service (PaaS): PaaS gives cloud users the tools to develop applications on
the underlying cloud infrastructure from the cloud provider. The cloud user does not have
to manage the infrastructure itself.

 Infrastructure as a Service (IaaS). The deepest layer, in which the user is able to manage
the operating system, storage and sometimes the network. The applications that are
deployed determine how these resources are used. Figure 2.3 shows examples of these
applications

1.5 Deployment Models

Cloud Deployment Model functions as a virtual computing environment with a deployment


architecture that varies depending on the amount of data you want to store and who has access to
the infrastructure.

Types of Cloud Computing Deployment Models

The cloud deployment model identifies the specific type of cloud environment based on
ownership, scale, and access, as well as the cloud’s nature and purpose. The location of the
servers you’re utilizing and who controls them are defined by a cloud deployment model. It
specifies how your cloud infrastructure will look, what you can change, and whether you will be
given services or will have to create everything yourself. Relationships between the
infrastructure and your users are also defined by cloud deployment types.

i. Public Cloud

The public cloud makes it possible for anybody to access systems and services. The public cloud
may be less secure as it is open to everyone. The public cloud is one in which cloud
infrastructure services are provided over the internet to the general people or major industry
groups. The infrastructure in this cloud model is owned by the entity that delivers the cloud
services, not by the consumer. It is a type of cloud hosting that allows customers and users to
easily access systems and services. This form of cloud computing is an excellent example of
cloud hosting, in which service providers supply services to a variety of customers. In this
arrangement, storage backup and retrieval services are given for free, as a subscription, or on a
per-user basis. For example, Google App Engine etc.

Advantages of the Public Cloud Model


 Minimal Investment: Because it is a pay-per-use service, there is no substantial upfront
fee, making it excellent for enterprises that require immediate access to resources.
 No setup cost: The entire infrastructure is fully subsidized by the cloud service providers,
thus there is no need to set up any hardware.
 Infrastructure Management is not required: Using the public cloud does not necessitate
infrastructure management.
 No maintenance: The maintenance work is done by the service provider (not users).
 Dynamic Scalability: To fulfill your company’s needs, on-demand resources are
accessible.

Disadvantages of the Public Cloud Model

 Less secure: Public cloud is less secure as resources are public so there is no guarantee of
high-level security.
 Low customization: It is accessed by many public so it can’t be customized according to
personal requirements.

ii. Private Cloud

The private cloud deployment model is the exact opposite of the public cloud deployment model.
It’s a one-on-one environment for a single user (customer). There is no need to share your
hardware with anyone else. The distinction between private and public clouds is in how you
handle all of the hardware. It is also called the “internal cloud” & it refers to the ability to access
systems and services within a given border or organization. The cloud platform is implemented
in a cloud-based secure environment that is protected by powerful firewalls and under the
supervision of an organization’s IT department. The private cloud gives greater flexibility of
control over cloud resources.

Advantages of the Private Cloud Model

 Better Control: You are the sole owner of the property. You gain complete command
over service integration, IT operations, policies, and user behavior.
 Data Security and Privacy: It’s suitable for storing corporate information to which only
authorized staff have access. By segmenting resources within the same infrastructure,
improved access and security can be achieved.
 Supports Legacy Systems: This approach is designed to work with legacy systems that
are unable to access the public cloud.
 Customization: Unlike a public cloud deployment, a private cloud allows a company to
tailor its solution to meet its specific needs.

Disadvantages of the Private Cloud Model

 Less scalable: Private clouds are scaled within a certain range as there is less number of
clients.
 Costly: Private clouds are more costly as they provide personalized facilities.
iii. Hybrid Cloud

By bridging the public and private worlds with a layer of proprietary software, hybrid cloud
computing gives the best of both worlds. With a hybrid solution, you may host the app in a safe
environment while taking advantage of the public cloud’s cost savings. Organizations can move
data and applications between different clouds using a combination of two or more cloud
deployment methods, depending on their needs.

Advantages of the Hybrid Cloud Model

 Flexibility and control: Businesses with more flexibility can design personalized
solutions that meet their particular needs.
 Cost: Because public clouds provide scalability, you’ll only be responsible for paying for
the extra capacity if you require it.
 Security: Because data is properly separated, the chances of data theft by attackers are
considerably reduced.

Disadvantages of the Hybrid Cloud Model

 Difficult to manage: Hybrid clouds are difficult to manage as it is a combination of both


public and private cloud. So, it is complex.
 Slow data transmission: Data transmission in the hybrid cloud takes place through the
public cloud so latency occurs.

iv. Community Cloud

It allows systems and services to be accessible by a group of organizations. It is a distributed


system that is created by integrating the services of different clouds to address the specific needs
of a community, industry, or business. The infrastructure of the community could be shared
between the organization which has shared concerns or tasks. It is generally managed by a third
party or by the combination of one or more organizations in the community.

Advantages of the Community Cloud Model

 Cost Effective: It is cost-effective because the cloud is shared by multiple organizations


or communities.
 Security: Community cloud provides better security.
 Shared resources: It allows you to share resources, infrastructure, etc. with multiple
organizations.
 Collaboration and data sharing: It is suitable for both collaboration and data sharing.

Disadvantages of the Community Cloud Model


 Limited Scalability: Community cloud is relatively less scalable as many organizations
share the same resources according to their collaborative interests.
 Rigid in customization: As the data and resources are shared among different
organizations according to their mutual interests if an organization wants some changes
according to their needs they cannot do so because it will have an impact on other
organizations.

v. Multi-Cloud

We’re talking about employing multiple cloud providers at the same time under this paradigm, as
the name implies. It’s similar to the hybrid cloud deployment approach, which combines public
and private cloud resources. Instead of merging private and public clouds, multi-cloud uses many
public clouds. Although public cloud providers provide numerous tools to improve the reliability
of their services, mishaps still occur. It’s quite rare that two distinct clouds would have an
incident at the same moment. As a result, multi-cloud deployment improves the high availability
of your services even more.

Advantages of the Multi-Cloud Model

 You can mix and match the best features of each cloud provider’s services to suit the
demands of your apps, workloads, and business by choosing different cloud providers.
 Reduced Latency: To reduce latency and improve user experience, you can choose cloud
regions and zones that are close to your clients.
 High availability of service: It’s quite rare that two distinct clouds would have an incident
at the same moment. So, the multi-cloud deployment improves the high availability of
your services.

Disadvantages of the Multi-Cloud Model

 Complex: The combination of many clouds makes the system complex and bottlenecks
may occur.
 Security issue: Due to the complex structure, there may be loopholes to which a hacker
can take advantage hence, makes the data insecure.

What is the Right Choice for Cloud Deployment Model?

As of now, no such approach fits picking a cloud deployment model. We will always consider
the best cloud deployment model as per our requirements. Here are some factors which should be
considered before choosing the best deployment model.

1) Cost: Cost is an important factor for the cloud deployment model as it tells how much
amount you want to pay for these things.
2) Scalability: Scalability tells about the current activity status and how much we can scale
it.
3) Easy to use: It tells how much your resources are trained and how easily can you manage
these models.
4) Compliance: Compliance tells about the laws and regulations which impact the
implementation of the model.
5) Privacy: Privacy tells about what data you gather for the model.

Each model has some advantages and some disadvantages, and the selection of the best is only
done on the basis of your requirement. If your requirement changes, you can switch to any other
model.

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

 Frontend
 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

I. 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.
II. 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.
III. 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.
IV. Runtime Cloud: Runtime cloud in backend provides the execution and Runtime
platform/environment to the Virtual machine.
V. Storage: Storage in backend provides flexible and scalable storage service and
management of stored data.
VI. Infrastructure: Cloud Infrastructure in backend refers to the hardware and software
components of cloud like it includes servers, storage, network devices, virtualization
software etc.
VII. Management: Management in backend refers to management of backend components like
application, service, runtime cloud, storage, infrastructure, and other security mechanisms
etc.
VIII. Security: Security in backend refers to implementation of different security mechanisms
in the backend for secure cloud resources, systems, files, and infrastructure to end-users.
IX. Internet: Internet connection acts as the medium or a bridge between frontend and
backend and establishes the interaction and communication between frontend and
backend.
X. Database: Database in backend refers to provide database for storing structured data, such
as SQL and NOSQL databases. Example of Databases services include Amazon RDS,
Microsoft Azure SQL database and Google CLoud SQL.
XI. Networking: Networking in backend services that provide networking infrastructure for
application in the cloud, such as load balancing, DNS and virtual private networks.
XII. Analytics: Analytics in backend service that provides analytics capabilities for data in the
cloud, such as warehousing, business intelligence and machine learning.

Conclusion

Cloud Computing architecture provides a structural framework for designing, implementing and
managing cloud-based solutions. Cloud Computing Architecture provides benefits like
scalability, flexibility, and cost-effectiveness. It also solve related to security, reliability, and
performance.

You might also like