Jimma Institute of Technology: Cloud Computing Unit - 1: Cloud Computing Fundamentals
Jimma Institute of Technology: Cloud Computing Unit - 1: Cloud Computing Fundamentals
DEPARTMENT OF COMPUTING
M.Sc in Computer Networking
CLOUD COMPUTING
Unit – 1 : Cloud Computing Fundamentals
1.1 Introduction
Definition of Cloud Computing
Layers of Cloud Computing
Types of Cloud Computing
Cloud Computing Vs Cloud Services
1.2 Enabling Technologies
1.3 Cloud Computing Features
1.4 Cloud Computing Characteristics
1.5 Challenges of Cloud Computing
1.6 Cloud Computing in the Feature.
1.1 INTRODUCTION
Cloud computing has become a significant technology trend, and many experts expect that
cloud computing will reshape information technology (IT) processes and the IT
marketplace. With the cloud computing technology, users use a variety of devices, including
PCs, laptops, smartphones, and PDAs to access programs, storage, and application-
development platforms over the Internet, via services offered by cloud computing providers.
Advantages of the cloud computing technology include cost savings, high availability, and
easy scalability.
1
Goal of cloud computing
The goal of cloud computing is to apply traditional supercomputing, or high-performance
computing power, normally used by military and research facilities, to perform tens of
trillions of computations per second, in consumer-oriented applications such as financial
portfolios, to deliver personalized information, to provide data storage or to power large,
immersive online computer games.
To do this, cloud computing uses networks of large groups of servers typically running low-
cost consumer PC technology with specialized connections to spread data-processing chores
across them. It shared IT infrastructure contains large pools of systems that are linked
together. in cloud, virtualization techniques are used to maximize the power of cloud
computing.
Advantages of cloud computing
1. Worldwide Access. Cloud computing increases mobility, as you can access your
documents from any device in any part of the world. For businesses, this means that
employees can work from home or on business trips, without having to carry around
documents. This increases productivity and allows faster exchange of information.
Employees can also work on the same document without having to be in the same
place.
2. More Storage. In the past, memory was limited by the particular device in question.
If you ran out of memory, you would need a USB drive to backup your current
device. Cloud computing provides increased storage, so you won’t have to worry
about running out of space on your hard drive.
3. Easy Set-Up. You can set up a cloud computing service in a matter of minutes.
Adjusting your individual settings, such as choosing a password or selecting which
devices you want to connect to the network, is similarly simple. After that, you can
immediately start using the resources, software, or information in question.
4. Automatic Updates. The cloud computing provider is responsible for making sure
that updates are available – you just have to download them. This saves you time,
and furthermore, you don’t need to be an expert to update your device; the cloud
computing provider will automatically notify you and provide you with instructions.
5. Reduced Cost. Cloud computing is often inexpensive. The software is already
installed online, so you won’t need to install it yourself. There are numerous cloud
computing applications available for free, such as Dropbox, and increasing storage
size and memory is affordable. If you need to pay for a cloud computing service, it is
paid for incrementally on a monthly or yearly basis. By choosing a plan that has no
contract, you can terminate your use of the services at any time; therefore, you only
pay for the services when you need them.
2
Disadvantages of cloud computing
1. Security. When using a cloud computing service, you are essentially handing over
your data to a third party. The fact that the entity, as well as users from all over the
world, is accessing the same server can cause a security issue. Companies handling
confidential information might be particularly concerned about using cloud
computing, as data could possibly be harmed by viruses and other malware. That
said, some servers like Google Cloud Connect come with customizable spam
filtering, email encryption, and SSL enforcement for secure HTTPS access,
among other security measures.
2. Privacy. Cloud computing comes with the risk that unauthorized users might access
your information. To protect against this happening, cloud computing services offer
password protection and operate on secure servers with data encryption technology.
3. Loss of Control. Cloud computing entities control the users. This includes not only
how much you have to pay to use the service, but also what information you can
store, where you can access it from, and many other factors. You depend on the
provider for updates and backups. If for some reason, their server ceases to operate,
you run the risk of losing all your information.
4. Internet Reliance. While Internet access is increasingly widespread, it is not
available everywhere just yet. If the area that you are in doesn’t have Internet access,
you won’t be able to open any of the documents you have stored in the cloud.
The following figure shows six phases of computing paradigms, from dummy terminals or
mainframes, to PCs, networking computing, to grid and cloud computing.
In phase 1, many users shared powerful mainframes using dummy terminals.
In phase 2, stand-alone PCs became powerful enough to meet the majority of users’ needs.
In phase 3, PCs, laptops, and servers were connected together through local networks to
share resources and increase performance.
In phase 4, local networks were connected to other local networks forming a global
network such as the Internet to utilize remote applications and resources.
In phase 5, grid computing provided shared computing power and storage through a
distributed computing system.
In phase 6, cloud computing further provides shared resources on the Internet in a scalable
and simple way.
Comparing these six computing paradigms, it looks like that cloud computing is a return to
the original mainframe computing paradigm. However, these two paradigms have several
important differences. Mainframe computing offers finite computing power, while cloud
computing provides almost infinite power and capacity.
3
Layers (Services) of Cloud Computing:-
Cloud computing can be viewed as a collection of services, which can be presented as a
layered cloud computing architecture, as shown in Figure.
4
The services offered through cloud computing usually include IT services referred as to
SaaS (Software-as-a-Service), which is shown on top of the stack. SaaS allows users to run
applications remotely from the cloud.
Platform-as-a-Service (PaaS) is similar to IaaS, but also includes operating systems and
required services for a particular application. In other words, PaaS is IaaS with a custom
software stack for the given application.
The data-Storage-as-a-Service (dSaaS) provides storage that the consumer is used including
bandwidth requirements for the storage.
Public Cloud:-
Public cloud services are available to clients from a third party service provider via internet.
It provides an elastic, cost effective mean to deploy solutions and take care of deploying,
managing and securing the infrastructure. Companies can use if on demand and pay-per-
usage option.
Public Cloud allows systems and services to be easily accessible to general public. The IT
giants such as Google, Amazon and Microsoft offer cloud services via Internet. The
Public Cloud Model is shown in the diagram below.
5
Advantages:-
There are many benefits of deploying cloud as public cloud model. The following diagram
shows some of those benefits:
Cost Effective
Since public cloud shares same resources with large number of customers it turns out
inexpensive.
Reliability
The public cloud employs large number of resources from different locations. If any of the
resources fails, public cloud can employ another one.
Flexibility
The public cloud can smoothly integrate with private cloud, which gives customers a
flexible approach.
Location Independence
Public cloud services are delivered through Internet, ensuring location independence.
High Scalability
Cloud resources are made available on demand from a pool of resources, i.e., they can be
scaled up or down according the requirement.
6
Disadvantages:-
Here are some disadvantages of public cloud model:
Low Security
In public cloud model, data is hosted off-site and resources are shared publicly, therefore
does not ensure higher level of security.
Less Customizable
It is comparatively less customizable than private cloud.
Private Cloud:
Private cloud are made inside company’s firewall can premise datacentre and traditionally
run by onsite servers. It also offers benefits of public cloud. Private cloud provider better
control on cloud infrastructure, improved security because user access and networks used
are restricted and designated.
Private Cloud allows systems and services to be accessible within an organization. The
Private Cloud is operated only within a single organization. However, it may be managed
internally by the organization itself or by third-party. The private cloud model is shown in
the diagram below.
7
Benefits:
There are many benefits of deploying cloud as private cloud model. The following diagram
shows some of those benefits:
More Control
The private cloud has more control on its resources and hardware than public cloud
because it is accessed only within an organization.
Disadvantages
Here are the disadvantages of using private cloud model:
High Priced
Purchasing new hardware in order to fulfil the demand is a costly transaction.
Limited Scalability
The private cloud can be scaled only within capacity of internal hosted resources.
8
Services:
Virtualization and Security and access control
Hybrid cloud:
It is a combination of an interoperability public and private cloud. In this model users
outsource non business critical information and processing to the public cloud, while
keeping business critical services and data in their control. This model allows
Elasticity, Security, Pay per usage pricing
Benefits:
There are many benefits of deploying cloud as hybrid cloud model. The following diagram
shows some of those benefits:
Scalability
It offers features of both, the public cloud scalability and the private cloud scalability.
9
Flexibility
It offers secure resources and scalable public resources.
Cost Efficiency
Public clouds are more cost effective than private ones. Therefore, hybrid clouds can be
cost saving.
Security
The private cloud in hybrid cloud ensures higher degree of security.
Disadvantages
Networking Issues
Networking becomes complex due to presence of private and public cloud.
Security Compliance
It is necessary to ensure that cloud services are compliant with security policies of the
organization.
Infrastructure Dependency
The hybrid cloud model is dependent on internal IT infrastructure; therefore it is
necessary to ensure redundancy across data centers.
10
In Key attributes of cloud services are summarized below
Key technologies that enabled cloud computing are described here; they include
virtualization, Web service and service-oriented architecture, service flows and workflows,
and Web 2.0 and mashup.
Virtualization
The advantage of cloud computing is the ability to virtualize and share resources among
different applications with the objective for better server utilization.
In non-cloud computing three independent platforms exist for three different applications
running on its own server. In the cloud, servers can be shared, or virtualized, for operating
systems and applications resulting in fewer servers (in specific example two servers).
11
Virtualization technologies include virtual machine techniques such as VMware and Xen,
and virtual networks, such as VPN.
Web Service and Service Oriented Architecture
Web Services and Service Oriented Architecture (SOA) are not new concepts; however they
represent the base technologies for cloud computing. Cloud services are typically designed
as Web services, which follow industry standards including WSDL, SOAP, and UDDI. A
Service Oriented Architecture organizes and manages Web services inside clouds . A SOA
also includes a set of cloud services, which are available on various distributed platforms.
The concept of service flow and workflow refers to an integrated view of service based
activities provided in clouds. Workflows have become one of the important areas of
research in the field of database and information systems
Web 2.0 and Mashup
Web 2.0 is a new concept that refers to the use of Web technology and Web design to
enhance creativity, information sharing, and collaboration among users. On the other hand,
Mashup is a web application that combines data from more than one source into a single
integrated storage tool. Both technologies are very beneficial for cloud computing.
12
The figure shows a cloud computing architecture in which an application reuses various
components. The components in this architecture are dynamic in nature, operate in a SaaS
model, and leverage SOA. The components closer to the user are smaller in nature and more
reusable. The components in the center contain aggregate and extend services via mashup
servers and portals. Data from one service (such as addresses in a database) can be mashed
up with mapping information (such as Yahoo or Google maps) to produce an aggregated
view of the information.
Cloud computing brings a number of new features compared to other computing paradigms.
There are briefly described in this section.
• User-centric interface
Cloud interfaces are location independent and can be accesses by well established interfaces
such as Web services and Internet browsers.
13
• Autonomous system
The cloud computing systems are autonomous systems managed transparently to users.
However, software and data inside clouds can be automatically reconfigured and
consolidated to a simple platform depending on user’s needs.
• Pricing
Cloud computing does not require up-from investment. No capital expenditure is required.
Users pay for services and capacity as they need them.
One of the critical issues in implementing cloud computing is taking virtual machines,
which contain critical applications and sensitive data, to public and shared cloud
environments. Therefore, potential cloud computing users are concerned about the
following security issues.
• Will the users still have the same security policy control over their applications and
services?
• Can it be proved to the organization that the system is still secure and meets SLAs?
• Is the system complaint and can it be proved to company’s auditors?
In traditional data centers, the common approaches to security include perimeter firewall,
demilitarized zones, network segmentation, intrusion detection and prevention systems, and
network monitoring tools.
14
The security requirements for cloud computing providers begins with the same techniques
and tools as for traditional data centers, which includes the application of a strong network
security perimeter. However, physical segmentation and hardware based security cannot
protect against attacks between virtual machines on the same server. Cloud computing
servers use the same operating systems, enterprise and Web applications as localized virtual
machines and physical servers. Therefore, an attacker can remotely exploit vulnerabilities in
these systems and applications. In addition, co-location of multiple virtual machines
increases the attack surface and risk to MV-to-VM compromise. Intrusion detection and
prevention systems need to be able to detect malicious activity in the VM level, regardless
of the location of the VM within the virtualized cloud environment.
In summary, the virtual environments that deploy the security mechanisms on virtual
machines including firewalls, intrusion detection and prevention, integrity monitoring, and
log inspection, will effectively make VM cloud secure and ready for deployment.
Note 1: Cloud computing is still an evolving paradigm. Its definitions, use cases, underlying
technologies, issues, risks, and benefits will be refined in a spirited debate by the public and
private sectors. These definitions, attributes, and characteristics will evolve and change over
time.
Note 2: The cloud computing industry represents a large ecosystem of many models,
vendors, and market niches. This definition attempts to encompass all of the various cloud
approaches.
Cloud computing is a model for enabling convenient, 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.
15
Essential Characteristics:
Broad network access. Capabilities are available over the network and accessed
through standard mechanisms that promote use by heterogeneous thin or thick client
platforms (e.g., mobile phones, laptops, and PDAs).
Resource pooling. The provider’s computing resources are pooled to serve multiple
consumers using a multi-tenant model, with different physical and virtual resources
dynamically assigned and reassigned according to consumer demand. There is a
sense of location independence in that the customer generally has no control or
knowledge over the exact location of the provided resources but may be able to
specify location at a higher level of abstraction (e.g., country, state, or datacenter).
Examples of resources include storage, processing, memory, network bandwidth, and
virtual machines.
Measured Service. Cloud systems automatically control and optimize resource use
by leveraging a metering capability at some level of abstraction appropriate to the
type of service (e.g., storage, processing, bandwidth, and active user accounts).
Resource usage can be monitored, controlled, and reported providing transparency
for both the provider and consumer of the utilized service.
16
1.5 CLOUD COMPUTING CHALLENGES
The new paradigm of cloud computing provides a number of benefits and advantages over
the previous computing paradigms and many organizations are adopting it. There are
number of challenges, which are currently addressed by researchers and practitioners in the
field.
Performance
The major issue in performance can be for some intensive transaction-oriented and other
data-intensive applications, in which cloud computing may lack adequate performance.
Also, users who are at a long distance from cloud providers may experience high latency
and delays.
Security and Privacy
Companies are still concerned about security when using cloud computing. Customers are
worried about the vulnerability to attacks, when information and critical IT resources are
outside the firewall. The solution for security assumes that that cloud computing providers
follow standard security practices.
Control
Some IT departments are concerned because cloud computing providers have a full control
of the platforms. Cloud computing providers typically do not design platforms for specific
companies and their business practices.
Bandwidth Costs
With cloud computing, companies can save money on hardware and software; however they
could incur higher network bandwidth charges. Bandwidth cost may be low for smaller
Internet-based applications, which are not data intensive, but could significantly grow for
data-intensive applications.
17
Reliability
Cloud computing still does not always offer round-the-clock reliability. There were cases
where cloud computing services suffered a few-hours outages. In the future, we can expect
more cloud computing providers, richer services, established standards, and best practices.
In the research arena, HP Labs, Intel, and Yahoo have launched the distributed Cloud
Research Test Bad, with facilities in Asia, Europe, and North America, with the objective to
develop innovations including cloud computing specific chips. IBM has launched the
Research Computing Cloud, which is an on-demand, globally accessible set of computing
resources that support business processes.
According to this scenario, the enterprise will use the core applications on its private cloud,
while some other applications will be distributed on several private clouds, which are
optimized for specific applications.
18