Ch-1. Introduction To Cloud Computing
Ch-1. Introduction To Cloud Computing
Computing
What is cloud computing
Characteristics of cloud computing
Advantages and Disadvantage of cloud computing
Cloud Computing Architecture
What are the Service providers
Types of clouds
Roots Of Cloud computing
Cloud Computing: In a Glance
What Is Cloud Computing?
• Cloud computing is a general term for anything that involves delivering hosted/computing
services over the Internet.
• Cloud computing refers to the use of hosted services, such as data storage, servers, databases,
networking, and software over the internet.
• The data is stored on physical servers ,which are maintained by a cloud service provider.
• Cloud computing refers to the “servers” that are accessed over the internet.
Cloud Benefits
• Pay as you go
• Focus on business rather than IT
• Elasticity - Scale up and down based on business need
What is Cloud Computing
• The term cloud refers to a group of computers on the network.
• It is a technology that uses remote servers on the internet to store, manage and access
data online rather than local drives.
• The data can be anything such as files, images, documents, audio, video and more.
• Vanquero
• clouds are a large pool of easily usable and accessible virtualized resources (such as
hardware, development platforms and/or services). These resources can be
dynamically reconfigured to adjust to a variable load (scale), allowing also for an
optimum resource utilization.
• McKinsey
• Clouds are hardware based services offering compute, network, and storage capacity
where: Hardware management is highly abstracted from the buyer, buyers incur
infrastructure costs, and infrastructure capacity is highly elastic
Characteristics of cloud computing
• On demand self services
• The Cloud computing services does not require any human administrators, user themselves are able to
provision, monitor and manage computing resources as needed.
• Resource pooling
• The IT resource (e.g., networks, servers, storage, applications, and services) present are shared across
multiple applications and occupant in an uncommitted manner.
• Multiple clients are provided service from a same physical resource.
• Rapid elasticity:
• The Computing services should have IT resources that are able to scale out and in quickly and on as
needed basis.
• Whenever the user require services it is provided to him and it is scale out as soon as its requirement gets
over.
Characteristics of cloud computing
• Measured service:
Pay according to the services you use.
• Security:
Cloud providers invest heavily in security measures to protect their users’ data and
ensure the privacy of sensitive information.
Advantages of cloud computing
Advantages of cloud computing
• Back-up and restore data
Once the data is stored in the cloud, it is easier to get back-up and restore that data
using the cloud
• Improved collaboration
Cloud applications improve collaboration by allowing groups of people to quickly and
easily share information in the cloud via shared storage
• Excellent accessibility
Cloud allows us to quickly and easily access store information anywhere, anytime in
the whole world, using an internet connection.
Cloud infrastructure increases organization productivity and efficiency by ensuring
that our data is always accessible.
• Low maintenance cost
Cloud computing reduces both hardware and software maintenance costs for
organizations.
Advantages of cloud computing
• Mobility
Cloud computing allows us to easily access all cloud data via mobile
• Services in the pay-per-use mode
Cloud computing offers Application Programming Interfaces (APIs) to the users for
access services on the cloud and pays the charges as per the usage of service.
• Unlimited storage capacity
Cloud offers us a huge amount of storing capacity for storing our important data such
as documents, images, audio, video, etc. in one place.
• Data security
Data security is one of the biggest advantages of cloud computing.
Cloud offers many advanced features related to security and ensures that data is
securely stored and handled.
Disadvantages of cloud computing
• Internet Connectivity
• In cloud computing, every data (image, audio, video, etc.) is stored on the cloud, and
we access these data through the cloud by using the internet connection.
• If you do not have good internet connectivity, you cannot access these data.
• However, we have no any other way to access data from the cloud.
• Vendor lock-in
• Vendor lock-in is the biggest disadvantage of cloud computing.
• Organizations may face problems when transferring their services from one
vendor to another.
• As different vendors provide different platforms, that can cause difficulty moving
from one cloud to another.
Disadvantages of cloud computing
• Limited Control
• Cloud infrastructure is completely owned, managed, and monitored by the service
provider, so the cloud users have less control over the function and execution of services
within a cloud infrastructure.
• Security
• Although cloud service providers implement the best security standards to store
important information.
• But, before adopting cloud technology, you should be aware that you will be sending all
your organization's sensitive information to a third party, i.e., a cloud computing service
provider.
• While sending the data on the cloud, there may be a chance that your
organization's information is hacked by Hackers.
Cloud Computing Architecture
Cloud Computing Architecture
• CC architecture mainly contains 2 components:
1) front end 2) Back end
• Front end mainly refers to the client part of cloud computing system.
• It consists of interfaces and applications that are required to access the cloud platform.
• Ex: web browser
• The physical computer is called the host machine and virtual machines are guest machines.
• Multiple virtual machines can run on a single physical machine.
• Virtual machines are abstracted from the computer hardware by a hypervisor.
Ex:
• The traditional way the business operates is by having one machine for one application.
• Organization have 3 servers.
• 1. one server is dedicated for windows O.S and used for E-mail services.
• 2. Another server that is used for running a website and it has Linus O.S
• 3. Another server that is running a Database and it is using UNIX O.S.
• i.e. one machine for one application. Instead of having 3 servers, one is not enough?
• Virtualization is basically consolidating all of these physical servers with their different O.S and
applications and running them on just one physical server in a virtual environment.
• So now this one server is running 3 VMS, which running 3 different applications like e-mail, website and
Data base and all are running side by side on one machine.
• The S/W that creates and runs virtualization is called Hypervisor. It allows one machine to run multiple
VM.
• It allocates and controls sharing of resources such as storage space, RAM,CPU so on.
Hypervisor
• The hypervisor is a software component that manages multiple virtual machines in a
computer.
• It ensures that each virtual machine gets the allocated resources and does not interfere
with the operation of other virtual machines.
• There are two types of hypervisors.
• Type 1 hypervisor
• A type 1 hypervisor, or bare-metal hypervisor, is a hypervisor program installed directly
on the computer’s hardware instead of the operating system. Therefore, type 1
hypervisors have better performance and are commonly used by enterprise
applications.
• Type 2 hypervisor : Also known as a hosted hypervisor, the type 2 hypervisor is installed on
an operating system. Type 2 hypervisors are suitable for end-user computing.
• Virtualization plays a very important role in the cloud computing technology, normally in the cloud computing,
users share the data present in the clouds like application etc, but actually with the help of virtualization
users shares the Infrastructure.
• Virtualization is a foundational element of cloud computing and enables multiple users to share a single
physical instance of a resource at a time.
2. Internet Technologies
• Web service is a software program that uses XML to exchange the information with other
software via internet protocol.
• Grid computing is often used to solve complex problems or perform large tasks that are
difficult to do on a single computer.
• Grid Computing breaks complex task into smaller pieces, which are distributed to CPUs that
reside within the grid.
• Grid computing helped to establish the concept of resource pooling, which is a fundamental
principle of cloud computing
Utility computing is based on Pay-per-Use model.
• It offers computing resources on demand as a metered service.
• It minimizes the associated costs and maximizes the efficient use of resources.
• Large organizations such as Google and Amazon established their own utility services for
computing storage and application.
4. System Management: It includes Autonomic computing is a computers ability to manage
itself automatically.
Autonomic computing is a cloud computing concept that allows computer systems to manage
themselves, with little or no human intervention. Which was developed by IBM.
Make the cloud infrastructure to work in more effective way without any human assistance.
• No need of human interface
• Machines know itself, what next task to do.
• If any problem comes then it heals by it self.
• It provides the basic building blocks for computing, such as servers, storage, networking
hardware, firewalls, load balancers, and virtualization software.
• Users can rent these resources on-demand and scale them up or down as needed.
• Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE)
Platform as a Service (PaaS)
• It is also known as cloud platform services.
• The PaaS layer sits on top of the IaaS layer and provides a platform for developing, deploying,
and managing applications.
• It includes tools for building applications, databases, middleware, development tools, and
runtime environments.
• PaaS removes the need for users to manage the underlying infrastructure, allowing them to focus
on developing and deploying their applications
• Developers create and deploy applications, do not necessarily need to know how many
processors or how much memory that applications will be using.
• Users access these applications through a web browser or a mobile app and pay for them on a
subscription basis.
• SaaS eliminates the need for users to install and maintain software on their own devices.
• web based email services such as Gmail, Hotmail etc are SaaS applications.
• Hybrid Cloud: A hybrid cloud combines a public cloud with a private cloud. This
allows organizations to leverage the benefits of both models, such as the
scalability and cost-effectiveness of the public cloud and the security and control
of the private cloud.
• Multi-Cloud(Community): A community cloud is a cloud computing infrastructure
that's shared by multiple organizations within a specific community. These organizations
usually have a common purpose or mission, and want to share the responsibilities of
maintaining the cloud.
1.4 Desired Features of cloud
(i) self-service
(ii) per-usage metered and billed
(iii) elastic
(iv) customizable.
Self-service
• Consumers of cloud computing services expect on-demand, and instant access to
resources.
• To support this expectation, clouds must allow self-service access so that customers can
request, customize, pay, and use services without intervention of human operators
Per-Usage Metering and Billing
• Services must be priced on a short term basis (e.g., by the hour), allowing users to
release (and not pay for) resources as soon as they are not needed .
• For these reasons, clouds must implement features to allow efficient trading of
service such as pricing, accounting, and billing .
• Metering should be done accordingly for different types of service (e.g., storage,
processing, and bandwidth).
Elasticity
• Cloud computing gives the illusion of infinite computing resources available on demand
.
• Therefore users expect clouds to rapidly provide resources in any quantity at any time.
• Other service classes (PaaS and SaaS) offer less flexibility and are not suitable for general-
purpose computing , but still are expected to provide a certain level of customization.
1.5 Cloud Infrastructure Management
• Infrastructure of the cloud is considered to be backbone of the cloud. This component is mainly
responsible for the QOS factor.
• If the infrastructure is not properly managed, then the whole cloud can fail and QOS would be badly
affected.
• Resource management involves several internal tasks such as, resource scheduling, provisioning, and
Load balancing.
• These tasks are mainly managed by cloud service provider’s core S/W such as the cloud OS.
• Cloud OS is responsible for providing services to the cloud and that internally control the cloud.
1.5 Cloud Infrastructure Management contd.,
• A key challenge IaaS providers face when building a cloud infrastructure is managing physical
and virtual resources, namely servers, storage, and networks, in a complete fashion.
• The software toolkit responsible for this arrangement is called a virtual infrastructure
manager (VIM) .
• This type of software look like a traditional operating system—but instead of dealing with a
single computer, it aggregates resources from multiple computers, presenting a uniform view
to user and applications.
• The term “cloud operating system” is also used to refer to it. Other terms include
“infrastructure sharing software” and “virtual infrastructure engine.”
Features
List of both basic and advanced features that are available in VIM’s:
1. Virtualization Support.
• The multi-tenancy aspect of clouds requires multiple customers with different
requirements to be served by a single hardware infrastructure.
• Virtualized resources (CPUs, memory, etc.) can be sized and resized with certain
flexibility. These features make hardware virtualization to create a virtual infrastructure
that partitions a data center among multiple tenants.
• the most common types are graphical user interfaces (GUI), command-line tools (CLI), and Web service
(WS) APIs.
• GUIs are preferred by end users who need to launch, customize, and monitor a few virtual servers.
• CLIs offer more flexibility and the possibility of automating repetitive tasks via scripts (e.g., start and
shutdown a number of virtual servers at regular intervals).
• WS APIs offer programmatic access to a cloud using standard HTTP requests, thus allowing complex
services to be built on top of IaaS clouds.
• Advance Reservation of Capacity.
• Advance reservations allow users to request for an IaaS provider to reserve resources for a
specific time frame in the future, thus ensuring that cloud resources will be available at that
time.
• Automatic Scaling and Load Balancing.
• Elasticity is a key characteristic of the cloud computing model.
• Applications often need to scale up and down to meet varying load conditions.
• It allow users to set conditions for when they want their applications to scale up and down,
based on application-specific metrics such as transactions per second, number of
simultaneous users, request latency, and so forth.
• When the number of virtual servers is increased by automatic scaling, incoming traffic must
be automatically distributed among the available servers.
• Service-Level Agreement.
• Service-level agreements (SLAs) are offered by IaaS providers to express their commitment to
delivery of a certain QoS.
• To customers it serves as a warranty.
• An SLA usually include availability and performance guarantees.
• Additionally, metrics must be agreed upon by all parties as well as penalties for violating
these expectations.
• Most IaaS providers focus their SLA terms on availability guarantees, specifying the minimum
percentage of time the system will be available during a certain period.
1.7 PLATFORM AS A SERVICE PROVIDERS
• Limited Customization:
• While Public PaaS offers flexibility, there might be limitations on how extensively users can customize the underlying
infrastructure.
• This can be a drawback for applications with very specific requirements.
Application Deployment and Management:
• Public PaaS platforms provide tools for deploying, managing, and monitoring applications.
• This includes features for version control, continuous integration/continuous delivery
(CI/CD), and application logging.
Security:
• Public PaaS providers take care of core infrastructure security.
• They offer features like firewalls, intrusion detection, and access control to safeguard
applications and data.
• However, users might still be responsible for securing their specific applications and data
within the platform.
Cost-Effectiveness:
• Public PaaS typically follows a pay-as-you-go model.
• Users only pay for the resources they use, making it a cost-effective solution for
development projects of various sizes.