0% found this document useful (0 votes)
35 views17 pages

Comprehensive Guide to Cloud Computing

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views17 pages

Comprehensive Guide to Cloud Computing

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

What is cloud computing?

 “a style of computing in which massively scalable IT-related capabilities

are provided “as a service” using Internet technologies to multiple external customers”

(Gartner 2008b)

 “ Large-scale distributed computing paradigm that is driven by economies of scale, in


which a pool of abstracted, virtualized, dynamically-scalable, managed computing
power, storage, platforms, and services are delivered on demand to external customers
over the Internet.”

Foster et al. (2008)

 Cloud computing is Internet-based computing, whereby shared resources, software, and


information are provided to computers and other devices on demand, like the electricity
grid.

Wikipedia

 A Cloud is a type of parallel and distributed system consisting of a collection of


interconnected and virtualized computers that are dynamically provisioned and
presented as one or more unified computing resources based on service-level
agreements established through negotiation between the service provider and
consumers.

Buyya

NIST Definition of Cloud Computing

The formal definition of cloud computing comes from the National Institute of Standards
and Technology (NIST): “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.

“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. This pool of resources is typically exploited by a pay-per-use model in which
guarantees are offered by the Infrastructure Provider by means of customized SLAs.”

Vaquero et al. (2008)


Motivation for cloud computing

 Cost

 Availability

 Reliability

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

 Broad network access:

 The Computing services are generally provided over standard networks and
heterogeneous devices.

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

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

 Measured service:

 The resource utilization is tracked for each application and occupant, it will
provide both the user and the resource provider with an account of what has
been used. This is done for various reasons like monitoring billing and effective
use of resource

Cloud 4 Models

1. Private cloud: The cloud infrastructure is provisioned for exclusive

use by a single organization comprising multiple consumers (e.g.,

business units). It may be owned, managed, and operated by the

organization, a third party, or some combination of them, and it may


exist on or off premises.

2. Public cloud: The cloud infrastructure is provisioned for open use by

the general public. It may be owned, managed, and operated by a

business, academic, or government organization, or some combination

of them. It exists on the premises of the cloud provider.

3-Community cloud:

The cloud infrastructure is shared by several organizations

and supports a specific community that has shared concerns

(e.g., mission, security requirements, policy, and compliance

considerations). It may be managed by the organizations or a third

Party and may exist on premise or off premise.

4-Hybrid cloud: The cloud infrastructure is a composition of two or

more distinct cloud infrastructures (private, community, or public)

that remain unique entities but are bound together by standardized

or proprietary technology that enables data and application portability

(e.g., cloud bursting for load balancing between clouds).

Public Cloud

 Provisioned for open use by the general public.

 It may be owned, managed, and operated by a business, academic, or government


organization, or some combination of them.

 Characteristics

 Highly scalable

 Affordable

 Less secure

 Highly available

 Strict SLAs

 Advantages
◦ There is no need of establishing infrastructure for setting up a cloud.

◦ There is no need for maintaining the cloud.

◦ They are comparatively less costly than other cloud models.

◦ Strict SLAs are followed.

◦ There is no limit for the number of users.

◦ The public cloud is highly scalable.

 Disadvantages

◦ Security is an issue.

◦ Privacy and organizational autonomy are not possible.

Private Cloud

 Cloud infrastructure that is provisioned for exclusive use by a single organization


comprising multiple consumers (e.g., business units).

 It may be owned, managed, and operated by the organization, a third party, or some
combination of them.

 Private cloud can be deployed using Opensource tools such as Openstack , Eucalyptus.

 Characteristics

 Secure

 Central control

 Weak SLAs

 Advantages

 The cloud is small in size and is easy to maintain.

 It provides a high level of security and privacy to the user.

 It is controlled by the organization.

 Disadvantages

 For the private cloud, budget is a constraint.

 The private clouds have loose SLAs.

Community Cloud
 Cloud infrastructure that is provisioned for exclusive use by a specific community of
consumers from organizations that have shared concerns (e.g., mission, security
requirements policy, and compliance considerations).

 It may be owned, managed, and operated by one or more of the organizations in the
community, a third party, or some combination of them

 Characteristics

 Collaborative and distributive maintenance:

 Partially secure:

 Cost effective:

 Advantages

 It allows establishing a low-cost private cloud.

 It allows collaborative work on the cloud.

 It allows sharing of responsibilities among the organization.

 It has better security than the public cloud.

 Disadvantages

 Autonomy of an organization is lost.

 Security features are not as good as the private cloud.

 It is not suitable if there is no collaboration.

Hybrid Cloud

 Hybrid ClouThe hybrid cloud usually is a combination of both public and private clouds.

 Have a private cloud initially, and then for additional resources, the public cloud is used

 Characteristics

 Scalable

 Partially secure

 Moderate SLAs

 Complex cloud management

 Advantages

 It gives the power of both the private and public clouds.

 It is highly scalable.

 It provides better security than the public cloud.


 Disadvantages

 The security features are not as good as the private cloud.

 Managing a hybrid cloud is complex.

 It has moderate SLAs.

Cloud SaaS: The capability provided to the consumer is to use the

provider’s applications running on a cloud infrastructure, including

network, servers, operating systems, storage, and even individual

application capabilities, with the possible exception of limited

user-specific application configuration settings. The applications are

accessible from various client devices through either a thin client

Cloud PaaS: The capability provided to the consumer is to deploy

onto the cloud infrastructure consumer-created or acquired applications

created using programming languages, libraries, services, and

tools supported by the provider

Cloud IaaS:

The capability provided to the consumer is to provision processing, storage, networks,


and other fundamental computing resources on a pay-per-use basis where he or she is
able to deploy and run arbitrary software, which can include operating systems and
applications.

Common characteristics of Cloud Computing

 Massive scale

 Homogeneity

 Geographic Distribution

 Service oriented (Pay as you go)

 Advanced Security

 Availability
Cloud Advantages

 Economical

 Save the cost of the infrastructure

 Remove the administrative and operational costs.

 Minimize maintenance and licensing software

 Reliability

 Secure data storage

 Several copies of the data are made.

 Redundant IT resources.

 Manageability

 The only thing, which the user has to manage is a device and an internet
connection

 Data Centralization

 The data stored in one location so that it can be accessed from different remote
places

 Proper Security

 The service vendors select the highest level of security of the data. For which a
user can set a proper audition, passwords, and encryption

Risks

 Security & privacy :

◦ Data management and infrastructure management in cloud is provided by third-


party

 Lock-in

◦ It is very difficult for the customers to switch from one Cloud Service Provider
(CSP) to another.

 Isolation Failure

◦ This risk involves the failure of isolation mechanism that separates storage,
memory, routing between the different Tenants

 . Internet access:

◦ no Internet access means no Cloud access


 Insecure or incomplete data deletion

◦ It is possible that the data requested for deletion may not get deleted. It
happens either because extra copies of data are stored but are not available or
disk destroyed also stores data from other tenants.

Architecture

 Front End

 The client interfaces which help to access the cloud computing

 Example- Browser or an app created by the company itself.

 Back End

 Services

 Management

 Infrastructure

Cloud Architecture

 Layer 1 (User/Client Layer)

 . All the users or client belong to this layer.

 This is the place where the client/user initiates the connection.

 Layer 2 (Network Layer)

 Allows the users to connect to the cloud

 This is primarily the Internet in the case of a public cloud/LAN in case of private
cloud.

 Layer 3 (Cloud Management Layer)

 A software that acts as an interface between the resources and the user ( cloud
OS)

 Software that allows resource management (scheduling, provisioning, etc.),


optimization (server consolidation, storage workload consolidation), and
internal cloud governance.

 Layer 4 (Hardware Resource Layer)

 The actual hardware resources ( servers, storage , network components,…)


Components of Cloud Computing Architecture

1. Application:

◦ The upper layer is the application layer. In this layer, any applications are
executed.

2. Platform:

◦ This component consists of platforms that are responsible for the execution of
the application. This platform is between the infrastructure and the application.

3. Virtualized Infrastructure:

◦ The infrastructure consists of resources over which the other components work.
This provides computational capability to the user.

4. Virtualization:

◦ Virtualization is the process of making logical components of resources over the


existing physical resources. The logical components are isolated and
independent, which form the infrastructure.

5. Physical hardware:

◦ The physical hardware is provided by server and storage units.

Cloud Service Models

 Infrastructure as a Service – IaaS

 Computing resources provided by the service provider

 provision processing, storage, networks, and other fundamental computing


resources

 Platform as a Service – PaaS

 The ability given to developers to develop and deploy an application on the


development platform provided by the service provider

 Operating system, database, middleware, and many other services.

 Software as a Service – SaaS

 The ability given to the end users to access an application over the Internet that
is hosted and managed by the service provider.
Infrastructure as a Service – IaaS

 IaaS changes the computing from a physical infrastructure to a virtual infrastructure

 IaaS provides virtual computing, storage, and network resources by abstracting the
physical resources

IaaS Services

 Compute:

 Computing as a Service (CaaS) includes virtual central processing units (CPUs)


and virtual main memory for the VMs that are provisioned to the end users.

 Storage:

 STaaS ( Storage as a Service) provides back-end storage for the VM images.


Some of the IaaS providers also provide the back end for storing files.

 Network:

 Network as a Service (NaaS) provides virtual networking components such as


virtual router, switch, and bridge for the VMs.

 Load balancers:

 Load Balancing as a Service may provide load balancing capability at the


infrastructure layer.

Characteristics of IaaS

 Web access to the resources

 Centralized management

 Elasticity and dynamic scaling

 Shared infrastructure

 Preconfigured VMs

 Metered services
IaaS Pros and cons

Benefits

 Pay-as-you-use model

 Reduced TCO

 Elastic resources

 Better resource utilization

 Supports Green IT

Cons

 Security issues

 Interoperability issues

 Performance issues

Platform as a Service ( PaaS)

 PaaS providers may provide programming languages, application frameworks,


databases, and testing tools,..

 PaaS changes the application development from local machine to online.

 It allows the developers to develop their application online and also allows them to
deploy immediately on the same platform.

Platform as a Service ( PaaS)

 Programming languages:

 Some of the popular programming languages provided by PaaS vendors are


Java, Perl, PHP, Python, Ruby, Scala, Clojure, and Go.

 Application frameworks:

 Some of the popular application development frameworks provided by a PaaS


provider include Node.js, Rails, Drupal, Joomla, WordPress, Django,EE6, Spring,
Play, Sinatra, Rack, and Zend.

 Database:

 The popular databases provided by the popular PaaS vendors are ClearDB,
PostgreSQL, Cloudant, Membase, MongoDB,and Redis.
 Other tools:

 PaaS providers provide all the tools that are required to develop, test, and
deploy an application.

Characteristics of PaaS

 All in one

 Most of the PaaS providers offer services to develop, test, deploy, host, and
maintain applications in the same IDE

 Web access to the development platform

 PaaS provides web access to the development platform.

 Using web UI, any developer can get access to the development platform

 The web-based UI helps the developers create, modify, test, and deploy
different applications on the same platform.

 Offline access

 PaaS providers allow the developer to synchronize their local IDE with the PaaS
services.

 The developers can develop an application locally and deploy it online whenever
they are connected to the Internet.

 Built-in scalability

 PaaS services provide built-in scalability to an application that is developed


using any particular PaaS

 Collaborative platform

 the development team consists of developers who are working from different
places in the same project.

 Diverse client tools

 PaaS providers provide a wide variety of client tools to help the developer.

 The client tools include CLI, web CLI, web UI, REST API, and IDE.

PaaS Pros and cons

Pros

 Quick development and deployment

 Reduces TCO
 Supports agile software development

 Different teams can work together

 Ease of use

 Less maintenance overhead

 Produces scalable applications

cons

 Vendor lock-in

 Security issues

 Less flexibility

 Depends on Internet connection:

Software as a Service (SaaS)

 SaaS changes the way the software is delivered to the customers.

 SaaS is delivered as an on-demand service over the Internet, there is no need to install
the software to the end user’s devices

 SaaS services can be accessed or disconnected at any time based on the end user’s
needs.

 SaaS services can be accessed from any lightweight web browsers on any devices such
as laptops, tablets, and smartphones.

Software as a Service (SaaS)

 Business services

 The business SaaS services include ERP, CRM, billing, sales, and human
resources.

 Social networks

 Facebook, twitter, snapchat,…

 Document management
 SaaS providers started providing services that are used to create, manage, and
track electronic documents.

 Mail services

 Most of the e-mail providers started offering their services as SaaS services.

• Characteristics of SaaS

 One to many

 Web access

 Centralized management

 Multidevice support

 Better scalability

 High availability

 API

SaaS Pros and cons

Pros

 No client-side installation

 Cost savings

 Less maintenance

 Ease of access

 Dynamic scaling

 Disaster recovery

 Multitenancy

Cons

 Security

 Connectivity requirements

 Loss of control
Other Service Models ( XaaS)

 Network as a Service (NaaS)

 NaaS allows network architects to create virtual networks, virtual network


interface cards (NICs), virtual routers, virtual switches, and other networking
components.

 Desktop as a Service (DEaaS)

 ability given to the end users to use desktop virtualization without buying and
managing their own infrastructure.

 Storage as a Service (STaaS)

 Store the data on the storage services provided by the service provider.

 Database as a Service (DBaaS)

 End users can access the database service without the need to install and
maintain it

 Data as a Service (DaaS)

 to access the data that are provided by the service provider over the Internet (
text, images, video,..)

 Security as a Service (SECaaS)

 user can access the security service provided by the service provider on a pay-
per-use basis.

 Identity as a Service ( IDaaS)

 The end users can access the authentica-tion infrastructure that is managed
and provided by the third-party service provider.

Migrating to Cloud

 Moving one or more enterprise applications and their IT environments from the
traditional hosting type to the cloud environment

 Cloud migration presents an opportunity to significantly reduce costs incurred on


applications

 Phases of Cloud Migration

 Evaluation

 for all the components like current infrastructure and application


architecture, environment in terms of compute, storage, monitoring,
and management, SLAs, operational processes, financial
considerations, risk, security, compliance, and licensing.

 Build a business case for moving to the cloud.

 Migration strategy

 Hot-plug strategy: Applications can be operationalized all at once.

 fusion strategy: Applications can be partially migrated.

 Prototyping

 Validate and ensure that a small portion of the applications are tested
on the cloud environment.

 Provisioning

 Provisioning of servers, storage, ..

 Configure the services

 Testing

 Postmigration tests are conducted to ensure that migration has been


successful

 load testing, failure and recovery testing, and scale-out testing are
conducted.

Approaches for Cloud Migration

 Migrate existing applications:

 Rearchitect some or all the applications

 Start from scratch:

 Huge transformation process, then start from the beginning

 Separate company:

 create a whole new company with separate brand

 Buy an existing cloud vendor:

 it removes a competitor

 Speed processes

You might also like