Vous êtes sur la page 1sur 42

Overview of Cloud Computing

Definition of Computing
any goal-oriented activity requiring, benefiting from, or
creating computers
Fields
computer engineering, software engineering, computer
science, information systems and information technology
Cloud Computing
technologies that enable to perform all of the above
computing related tasks through Internet delivered as
services
computing through the Internet
Cloud Computing Definition
NIST
Gartner
IBM
Open Cloud Manifesto Consortium

"the collection of concepts, technologies, methodologies that enable to dynamically


provision hardware and software resources as services over the Internet on pay-per-use
model with objectives of achieving high resource utilization in a scalable cost effective
manner."
• Features from
– grid computing
– utility computing
– on-demand computing
• Pay-as-you-use
• Metered Use
• Dynamic Provisioning
• Autonomic Computing
• Cloud Service Provider
• Service Deployment, Service Orchestration, Cloud Service Management,
Security and Privacy
• Cloud Consumer
• Functional Interface and Management Interface
• Abstraction
– transparency of implementation details maintained for
users and developers
• Virtualization
– sharing of wide spectrum of IT-related resources that are consolidated as
a pool and shared among multiple users, which are maintained by third
party, and CSPs
• Cloud Service
– Any service or resource that is implemented using
cloud computing technology and delivered over
Internet
– Major Services
• Software as a Service
• Platform as a Service
• Infrastructure as a Service
• Deployment Models
– Who delivers to whom
– private cloud, public cloud, community cloud, and
hybrid cloud
• cloud computing system architecture
– front-end
• system or device or network or application that the user of cloud
uses to get access to cloud
– back-end
• actual cloud that comprises a lot of servers, individual systems,
storage, and other components networked together
– interfaces
• through which front end clients access it
• any standard browser or application is able to access the cloud
interfaces
– middleware
• For efficient functioning of cloud following set of protocols and
standards
Evolution of cloud computing

Examples
Gmail
Facebook
LinkedIn
NIST Cloud Model
NIST - Essential Characteristics of
Cloud
• On-demand self-service

• Broad network access and self-service

• Resource pooling

• Rapid elasticity

• Measured service
NIST - Cloud Enablers
• Virtualization

• Service-oriented architecture

• Web services

• Utility computing

• Grid computing

• Multitenancy
Benefits of Cloud Computing
• Reduced infrastructure cost
• Reduced maintenance cost
• Reduced software cost
• Automatic software updates
• High availability and reliability
• Improved scalability
• Dynamic provisioning
Benefits of Cloud Computing
• Fast execution
• Unlimited storage
• Easy maintenance
• Access from anywhere
• Pay-per-use model
• Rapid deployment
• Improved redundancy
• Greener environment
Challenges of Cloud Computing
• Requirement of continuous connectivity
• Security and privacy issues
• Prone to data breaches
• Governance and regulatory issues
• Lack of standards
• Integration with existing applications
• Service availability and vendor lock-in
Cloud-Enabling Technologies
Cloud-Enabling Technologies
• Service-Oriented Architecture
– an architectural style that supports service
orientation, which is a way of thinking in terms of
services and service-based development and the
outcomes of services
– service is a business functionality that occurs
repeatedly with a specific input and outcome
– loosely coupled interacting software components
• Interface
• Message
• SOA and Cloud Computing
Cloud-Enabling Technologies
• Web Services
– a business or computing functionality implemented and
hosted in a software system that supports machine-to-
machine interaction over the communication network
through standardized messaging system
– Characteristics of Web Services
– Web Service Architecture—Role Based
– Web Services Architecture—Protocol Based

– RESTful Web Services


• an architectural style, developed as an abstract model of the web
architecture to guide the redesign and redefinition of the HTTPs
and URIs
Cloud-Enabling Technologies
• Grid Computing
– a network that facilitates sharing computing resources such as
processor, memory, and network among geographically distributed
multiple users in a coordinated manner
– Characteristics of Grid Computing
– Grid Computing versus Cloud Computing

• Utility Computing
– represents the business model of packaging resources as a metered
services similar to those provided by traditional public utility
companies

• Multitenancy
– a group of users sharing a service
Cloud Strategy
• basis of the location, ownership, access, and
management of cloud services
– NIST
• public cloud
• private cloud
• community cloud
• hybrid cloud
– Virtual Private Cloud
Public Cloud
• offers applications, storage, computing,
network, and other services over the Internet
by the cloud service providers (CSPs) to the
public

• CSPs
– procure the resources
– set up the cloud infrastructure
– manage, and operate
Public Cloud
• Common infrastructure pool sharing
• Service Level Agreements (SLA)
• Simple, easy and cost-effective
• No visibility or control for consumers

• Major CSPs
– Elastic Compute Cloud (EC2), Simple Storage Service
(S3) from Amazon Web Services (AWS)
– Google App Engine
– Windows Azure Services
Public Cloud
• Examples
– e-mail services (e.g., Gmail, Hotmail, etc.)
– social networking (e.g., Facebook, Twitter, etc.)
– cloud storage (e.g., Google Drive, iCloud, Dropbox,
OneDrive, etc.)
– officesuite (e.g., Google Docs, Microsoft Office 365, etc.)

• Benefits
– Flexibility and elasticity
– Self-service
– Availability and reliability
Private Cloud
• offerings within an organization’s boundaries
• services accessible for the designated organization
• Infrastructure located within the organization itself,
either internally or externally
• provisioned exclusively for employees and stakeholders
• operated for the particular organization either by the
organization itself or by a third party
• Enhanced Security and dedicated resources
• Examples: Amazon Virtual Private Cloud, IBM Smart
Cloud, Microsoft Private Cloud, VM ware Cloud
Infrastructure Suite
Private Cloud – Onsite Deployment
• Support for heterogeneous resources and technologies
• Integration of different kinds of management tools
• Integration of applications with middle ware so that
SaaS can be supported by IaaS
• Support for automation of IT and business processes
• Planning for delivery of extended capabilities for
enterprise-wide scalability and global access
• Interoperability with public cloud
Public Cloud vs Private Cloud
Community Cloud
• Used by a community comprising many
organizations with shared interests
• owned by a single or multiple organizations
• hosted internally or externally with a third
party service provider
• benefits from both public and private cloud
• Examples: Google Apps for Government and
Microsoft Government Community Cloud
Community Cloud
• Vertical clouds - contain information and
applications services for particular industries.
Example: Healthcare cloud
• Horizontal clouds - specific-purpose clouds for
development, test collaboration, and
budgeting
• Regional clouds - localized and compliant with
government regulations
Hybrid Cloud
• composition of different cloud types (public,
private, or community) from different service
providers
• Features and benefits based on the hybrid mix
Virtual Private Cloud
• setting up a private cloud on demand, within the
public cloud environment
• necessary isolation between other consumers in
the public cloud
• Isolation is achieved by means of
– allocating private IP subnet
– virtual LAN setup (VLAN)
– encrypted communication channels
– setting up a virtual private network (VPN)
– authentication and encryption, etc
End User Implications on Cloud
Deployment
• Multitenant deployments

• Network configurations and potential


vulnerability threats

• Consistent user management and access controls

• Cloud systems integration and API management


Software as a Service (SaaS)
• software distribution model in which applications are
hosted by a vendor or service provider and made available
to customers over a network, typically the Internet

• Examples:
– E-mail services (e.g., Gmail, Yahoo, Hotmail, etc.)
– Social networks (e.g., Facebook, Linked In, Twitter, YouTube,
Myspace, Vimeo, etc.)
– Collaboration (e.g., Box.net, Dropbox, Huddle, etc.)
– Security (e.g., Cisco, McAfee, etc.)
CRM (e.g., SalesForce, NetSuite, MS Dynamics, etc.)
– HR (e.g., Taleo, SalesForce, SAP, etc.)
Characteristics of SaaS
• On demand, scalable services over the Internet
and well-defined APIs
• No need for the user to have knowledge of the
back-end infrastructure and its management
• Management of complete application stack by
SaaS service provider
• Multitenant model of service provisioning
• Automatic updates on software, technology, and
licenses
• Pay-as-you-go subscription model
Benefits of SaaS
• Cost in terms of time and efforts incurred in developing
and deploying sophisticated software is reduced
• Software updates are made simpler
• Payment is made only for the modules subscribed
• Licensing problems of software can be solved
• Responsibility of identifying and fixing bugs is that of
the SaaS provider
• Technology updates are automated
• Thin clients can also access SaaS without the need to
install the software in their own devices
• Centralized management of data
Limitations of SaaS
• Proper security mechanisms to protect Consumers data,
which might need third party involvements
• Customization of software is hardly possible
• Integration of software procured as a service with that of
existing applications
• Using Web browsers may be limitation when it gets
affected from malware attacks

• SaaS is not a better choice when:


– Country-specific law enforces not to store data outside certain
region
– Applications where extremely fast processing of real time data is
required
Platform as a Service
• a category of cloud computing service delivery model
that provides computing platform and a solution stack
as a service

• Examples:
– Windows Azure: C#, VB, C++, PHP, Java, Python, Ruby, and
SQL Azure, etc.
– Amazon: Simple DB, S3
– Google App Engine: Python, Java
– Force.com: Wizard like languages, process modeler, APEX
– Orange Scape: Excel like language
– VMForce.com: Java (Spring) on Force.com
Characteristics of PaaS
• browser-based multiple development environments
and runtimes
• Users can collaborate, design, develop, integrate, test,
and deploy applications
• Web-based GUI to work with different UI scenarios
• uses multitenant architecture
• common services/packages for database, network, and
payment integrations
• built-in security, scalability, and Web service interfaces
to connect other applications outside the PaaS
Benefits of PaaS
• Development and upgradations within the
control of consumers
• Reduced administrative overhead
• Payment is made only for the usage and
duration
• Facilitates working with multiple platforms
• Applications’ dynamic resource requirements
are taken care automatically
Limitations of PaaS
• Interoperability and portability
• Security
• Scheduling

• PaaS not ideal for:


– An application with portability requirements
– Usage of proprietary languages or approaches
– Requirement for customization of the underlying
hardware and software
Infrastructure as a Service
• provides the complete computing infrastructure that
includes operating systems, security, networking, and
servers for developing applications, services, and for
deploying development tools, databases, etc., as services

• Examples:
– Storage, e.g., Amazon S3, Amazon RDS, SimpleDB, Rackspace
Files, Zetta, and HP Object Storage
– Compute, e.g., Amazon EC2, Microsoft Azure, Rackspace
Servers, HP Cloud Compute, and GoGrid
– Network, e.g., Amazon AWS and Rackspace Cloud
– Cloud management, e.g., Dynect, RightScale, and Cloudways
Characteristics of IaaS
• multitenancy and resource pooling, resulting in
optimum resource utilization
• Cloud bursting resulting in significant cost
reduction
• Data centers are geographically distributed
around the globe
• Reservations can be made for resources in
advance for a specific duration of time
• Elasticity is implemented mainly in IaaS layer to
cater the needs of scalability and are provisioned
dynamically.
Benefits of IaaS
• Consumer has the freedom of taking
responsibility on SaaS or PaaS components built
on top of the rented IaaS
• Consumer can use sophisticated software that
requires high-end servers – no need t buy new
servers
• Developers can utilize IaaS to develop and test
their applications on multiple environments
• Provider, relieving the overhead from consumers,
handles failovers, security, software upgrades,
backup, and recovery automatically.
Limitations of IaaS
• Security vulnerabilities
– Running legacy software in service provider’s
infrastructure

• Virtual machine sprawl


– end user to operates the virtual machine, which may be
out of date with respect to security updates

• Data erase practices


– service provider must ensure that next user to rent the
resource does not observe data residue from previous user
X as a Service
• Anything as a Service or Everything as a
Service
• Communication as a Service
• Database as a Service
• Network as a Service
• Testing as a Service
• Security as a Service

Vous aimerez peut-être aussi