Unit - 1 Introduction to Cloud Computing
Unit - 1 Introduction to Cloud Computing
There are the following operations that we can do using cloud computing:
1) Agility
The availability of servers is high and more reliable because the chances
of infrastructure failure are minimum.
3) High Scalability
Cloud offers "on-demand" provisioning of resources on a large scale,
without having engineers for peak loads.
4) Multi-Sharing
With the help of cloud computing, multiple users and applications can
work more efficiently with cost reductions by sharing common
infrastructure.
Cloud computing enables the users to access systems using a web browser
regardless of their location or what device they use e.g. PC, mobile phone,
etc. As infrastructure is off-site (typically provided by a third-party) and
accessed via the Internet, users can connect from anywhere.
6) Maintenance
7) Low Cost
By using cloud computing, the cost will be reduced because to take the
services of cloud computing, IT company need not to set its own
infrastructure and pay-as-per usage of resources.
1. Internet Technologies
2. Distributed computing
3. Hardware
4. System management
What are the Roots of Cloud Computing? (2023)
There are mainly four roots of cloud computing internet technologies,
distributed computing, hardware, and system management. These roots help
computers to extend their capacities and make them more powerful.
There are also four types of cloud available on the base of a cloud platform:
free, public, hybrid, and platform.
In this article, we will see what is cloud computing and the roots of cloud
computing to determine the potential of the technology.
1️⃣ First Root: Internet Technologies
The first root is Internet Technologies from the roots of cloud computing
which contains service-oriented architecture (SOA), web 2.0, and web
services.
Internet technologies are widely accessible to the public. People can access the
content and run applications that depend on the network connection.
Hence, a person can host any website anywhere in the world. In addition,
because of the network servers, anyone can create lots of different websites.
Web Services like XML and HTTP are providing web delivery services by
using common mechanisms. It is a universal concept of web service all over the
world.
WEB 2.0 Services are more convenient for the users, as they do not have to
learn more about coding and concepts to work with it.
Predefined blocks or templates make their work easy and they can work
together by the centralized cloud computing system.
Some examples of WEB 2.0 services are host services like Google Maps,
microblogging sites like Twitter, and social networking sites like Facebook.
However, all cloud computing applications suffer from the inherent unreliability
of the Internet. This is because the Internet is a shared public resource that is
subject to a variety of problems, including congestion, outages, and security
threats.
Now, when someone visits your website over the internet, the person browses
through the files on the browser without downloading them.
This means users can access the files to the specific location after processing;
they can also send that file back to the server.
With the help of this root, all the related resources like memory space,
processor speed, and hard drive space are utilized in the best possible
manner.
A company using this technology will never face a problem and will always
stay in competition with other companies.
3️⃣ Third Root: Hardware
The third root is Hardware from the roots of cloud computing which
contains multi-core chips and virtualization.
When we talk about Hardware for cloud computing, it is usually virtual and
people do not need to buy it.
If you are using a large amount of data then it becomes very difficult for your
computer to manage the constant increase in data.
On the other hand, the cloud stores data on its own computers rather than
having the computer that holds the data physically.
To achieve this system management ensures all the employees have easy access
to all the necessary information.
This makes it possible for the system admin to respond to any user demand
instantly. Moreover, the admin can restrict or deny access for the different
users.
Based on that data, the system responses perform various tasks such
as optimization, adaptation, configuration, and protection.
Hence, at this root, human involvement is less and the computing system
handles most of the operations.
Infrastructure as a Service
Offering virtualized resources (computation, storage, and communication)
on demand is known as Infrastructure as a Service (IaaS) . A cloud
infrastructure enables on-demand provisioning of servers running several
choices of operating systems and a customized software stack. Infrastructure
services are considered to be the bottom layer of cloud computing systems .
Platform as a Service
In addition to infrastructure-oriented clouds that provide raw computing
and storage services, another approach is to offer a higher level of abstraction to
make a cloud easily programmable, known as Platform as a Service (PaaS)..
Google AppEngine, an example of Platform as a Service, offers a scalable
environment for developing and hosting Web applications, which should be
written in specific programming languages such as Python or Java, and use the
services’ own proprietary structured object data store.
Software as a Service
Applications reside on the top of the cloud stack. Services provided by this layer can
be accessed by end users through Web portals. Therefore, consumers are increasingly
shifting from locally installed computer programs to on-line software services that
offer the same functionally. Traditional desktop applications such as word processing
and spreadsheet can now be accessed as a service in the Web.
Features of Cloud Computing
Cloud computing is becoming popular day by day. Continuous business expansion and
growth requires huge computational power and large-scale data storage systems. Cloud
computing can help organizations expand and securely move data from physical locations to
the 'cloud' that can be accessed anywhere.
Cloud computing has many features that make it one of the fastest growing industries
at present. The flexibility offered by cloud services in the form of their growing set of tools
and technologies has accelerated its deployment across industries. This blog will tell you about
the essential features of cloud computing.
1. Resources Pooling
Resource pooling is one of the essential features of cloud computing. 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
It is one of the important and essential features of cloud computing. 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
This is one of the best cloud features. 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.
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.
7. Security
Data security is one of the best features of cloud computing. 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
Automation is an essential feature of cloud computing. The ability of cloud computing to
automatically install, configure and maintain a cloud service is known as automation in cloud
computing. In simple words, it is the process of making the most of the technology and
minimizing the manual effort. 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.
1. Programming languages
PaaS providers provide various programming languages for the developers to
develop the applications. Some popular programming languages provided by
PaaS providers are Java, PHP, Ruby, Perl, and Go.
2. Application frameworks
PaaS providers provide application frameworks to easily understand the
application development. Some popular application frameworks provided by
PaaS providers are Node.js, Drupal, Joomla, WordPress, Spring, Play, Rack, and
Zend.
3. Databases
PaaS providers provide various databases such as ClearDB, PostgreSQL,
MongoDB, and Redis to communicate with the applications.
4. Other tools
PaaS providers provide various other tools that are required to develop, test, and
deploy the applications.
2) Lower risk
No need for up-front investment in hardware and software. Developers only need
a PC and an internet connection to start building applications.
Some PaaS vendors also provide already defined business functionality so that
users can avoid building everything from very scratch and hence can directly start
the projects only.
4) Instant community
PaaS vendors frequently provide online communities where the developer can get
the ideas to share experiences and seek advice from others.
5) Scalability
Applications deployed can scale from one to thousands of users without any
changes to the applications.
Disadvantages of PaaS cloud computing layer
1) Vendor lock-in
One has to write the applications according to the platform provided by the PaaS
vendor, so the migration of an application to another PaaS vendor would be a
problem.
2) Data Privacy
It may happen that some applications are local, and some are in the cloud. So
there will be chances of increased complexity when we want to use data which in
the cloud with the local data.
Providers Services
Google App Engine App Identity, URL Fetch, Cloud storage client library,
(GAE) Logservice
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.
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. 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.
1. Application –
Application in backend refers to a software or platform to which client
accesses. Means it provides the service in backend as per the client
requirement.
2. 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.
3. Runtime Cloud-
Runtime cloud in backend provides the execution and Runtime
platform/environment to the Virtual machine.
4. Storage –
Storage in backend provides flexible and scalable storage service and
management of stored data.
5. Infrastructure –
Cloud Infrastructure in backend refers to the hardware and software
components of cloud like it includes servers, storage, network devices,
virtualization software etc.
6. Management –
Management in backend refers to management of backend components like
application, service, runtime cloud, storage, infrastructure, and other security
mechanisms etc.
7. 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.
8. Internet –
Internet connection acts as the medium or a bridge between frontend and
backend and establishes the interaction and communication between
frontend and backend.
Benefits of Cloud Computing Architecture :
Makes overall cloud computing system simpler.
Improves data processing requirements.
Helps in providing high security.
Makes it more modularized.
Results in better disaster recovery.
Gives good user accessibility.
Reduces IT operating costs.
2. Cost Management
Even as almost all cloud service providers have a “Pay As You Go” model, which
reduces the overall cost of the resources being used, there are times when there
are huge costs incurred to the enterprise using cloud computing. When there is
under optimization of the resources, let’s say that the servers are not being used
to their full potential, add up to the hidden costs. If there is a degraded application
performance or sudden spikes or overages in the usage, it adds up to the overall
cost. Unused resources are one of the other main reasons why the costs go up. If
you turn on the services or an instance of cloud and forget to turn it off during the
weekend or when there is no current use of it, it will increase the cost without
even using the resources.
3. Multi-Cloud Environments
Due to an increase in the options available to the companies, enterprises not only
use a single cloud but depend on multiple cloud service providers. Most of these
companies use hybrid cloud tactics and close to 84% are dependent on multiple
clouds. This often ends up being hindered and difficult to manage for the
infrastructure team. The process most of the time ends up being highly complex
for the IT team due to the differences between multiple cloud providers.
4. Performance Challenges
When an organization uses a specific cloud service provider and wants to switch
to another cloud-based solution, it often turns up to be a tedious procedure since
applications written for one cloud with the application stack are required to be re-
written for the other cloud. There is a lack of flexibility from switching from one
cloud to another due to the complexities involved. Handling data movement,
setting up the security from scratch and network also add up to the issues
encountered when changing cloud solutions, thereby reducing flexibility.
Due to the complex nature and the high demand for research working with the cloud
often ends up being a highly tedious task. It requires immense knowledge and wide
expertise on the subject. Although there are a lot of professionals in the field they need
to constantly update themselves. Cloud computing is a highly paid job due to the
extensive gap between demand and supply. There are a lot of vacancies but very few
talented cloud engineers, developers, and professionals. Therefore, there is a need for
upskilling so these professionals can actively understand, manage and develop cloud-
based applications with minimum issues and maximum reliability.
Types of Cloud
Cloud computing is Internet-based computing in which a shared pool of
resources is available over broad network access, these resources can be
provisioned or released with minimum management efforts and service-provider
interaction.
Types of Cloud
1. Public cloud
2. Private cloud
3. Hybrid cloud
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.
Public cloud
Advantages of using a Public cloud are:
1. High Scalability
2. Cost Reduction
3. Reliability and flexibility
4. Disaster Recovery
Disadvantages of using a Public cloud are:
1. Loss of control over data
2. Data security and privacy
3. Limited Visibility
4. Unpredictable cost
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.
Private Cloud
Hybrid Cloud
1. It’s possible that businesses lack the internal knowledge necessary to create
such a hybrid environment. Managing security may also be more
challenging. Different access levels and security considerations may apply in
each environment.
2. Managing a hybrid cloud may be more difficult. With all of the alternatives
and choices available today, not to mention the new PaaS components and
technologies that will be released every day going forward, public cloud and
migration to public cloud are already complicated enough. It could just feel
like a step too far to include hybrid.