540 likes | 870 Views
CLOUD COMPUTING. Nguyễn Anh Tài Nguyễn Phương Duy Phạm Thanh Phương. C ontents. Introduction to Cloud Computing Cloud Implementations Market-Oriented Clouds Comparing Grids and Clouds. INTRODUCTION (1). Issues before cloud Cost (hardware, software, maintain, …) recession Scalable
E N D
CLOUD COMPUTING Nguyễn Anh Tài Nguyễn Phương Duy Phạm Thanh Phương
Contents • Introduction to Cloud Computing • Cloud Implementations • Market-Oriented Clouds • Comparing Grids and Clouds
INTRODUCTION (1) • Issues before cloud • Cost (hardware, software, maintain, …) • recession • Scalable • Technology • ……
INTRODUCTION (2) “Cloud computing is hinting at a future in which we won’t compute on local computers, but on centralized facilities operated by third party compute and storage utilities.”
DEFINITIONS • “Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet” – Wikipedia. • “A style of Computing where scalable and elastic IT capabilities are provided as a service to multiple customers using Internet technologies” – Gartner. • “A large scale distributed computing paradigm that is driven by economics 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” – Ian Foster.
INTRODUCTION (4) • Users need not have knowledge of, expertise in, or control over the technology infrastructure "in the cloud" that supports them. • Cloud computing services usually provide common business applications online that are accessed from a web browser, while the software and data are stored on the servers.
INTRODUCTION (5) • Cloud computing is often confused with • grid computing • utility computing • autonomic computing • many cloud computing deployments as of 2009 depend on grids, have autonomic characteristics and bill like utilitiescloud computing can be seen as a natural next step from the grid-utility model ≠ P2P networks (BitTorrent), volunteer computing (SETI@home)
INTRODUCTION (6) • Trends
INTRODUCTION (7) • Overview
INTRODUCTION (8) • Economics
INTRODUCTION (9)ISSUES • Cloud computing shines in the recession, vnunet.com, 04/28/2009 • The most popular applications are data storage (27.7% of respondents), financial applications (17%) and email (12.8%) • Issues • Intellectual property • Privacy • Security • Not control • Latency • Enclosure services • Ready • Laws
INTRODUCTION (10) • Companies • IBM (Blue Cloud) • Amazon (EC2) • Google (G. Apps) • Microsoft (M. Azure) • Yahoo • Salesforce • ……
Cloud computing implementations categories • 3 categories of cloud computing services: • Infrastructure-as-a-Service (IaaS): raw infrastructure and associated middleware • Amazon EC2/S3, Elastra (Beta 2.0 2/2009), Nirvanix, AppNexus • Platform-as-a-Service (PaaS): APIs for developing applications on an abstract platform • Mosso (2/2008), Google App Engine, Salesforce, Heroku, Engine Yard • Software-as-a-Service (SaaS): support for running software services remotely • 3Tera (2/2006), Salesforce
CLOUD COMPUTING IMPLEMENTATIONSPRICING MODEL • Pricing model: • Tired pricing: each tier offer fix computing specification (i.e. memory allocation, CPU type and speed, etc.) • Per-unit pricing: is normally applied to data transfers or memory usage, memory allocation is more flexible than tire pricing • Subscription base pricing: most-widely use for SaaS – user predict periodic expenses of using cloud application (lack of accuracy)
CLOUD COMPUTING IMPLEMENTATIONSAMAZONE ELASTIC COMPUTE CLOUD (EC2) • Infrastructure-as-a-Service • Compute, Storage • Instance: Xen Virtual machine • 5 instance types: CPU, RAM, Arch, I/O performance, Disk • Cost (each instance - $/h) • User requires instances (instance type & VM Image)
Cloud computing implementations GoGrid • Infrastructure-as-a-Service • "world's first multi-server control panel” provide server image with preinstalled software • Load balancer (virtual IP), Web-based control panel, API, and .NET SDK • 1 Server RAM-hour = 1GB of RAM deployed for 1 Hour
CLOUD COMPUTING IMPLEMENTATIONSMICROSOFT LIVE MESH • Infrastructure-as-a-Service • Compute • OS Level • Provide a centralized location for a user to store applications and data that can be accessed across required devices (such as computers and mobile phones) • User access interface: Web-based Live Desktop and any Live Mesh installed devices
CLOUD COMPUTING IMPLEMENTATIONSSUN GRID (NETWORK.COM) • Infrastructure-as-a-Service • Compute • Job management system • Sun Grid Engine • User access interface: Job submission scripts, Sun Grid Web portal
Cloud computing implementations Google App Engine • Platform-as-a-Service • Platform • Lets user run web app on Google’s infrastructure • These apps run in a sandbox: • No local files, App Engine datastore request within a limited period • AppLogic: appliances run inside VM, configured by user • Hadoop (implementation of MapReduce) vast amount of data
Cloud computing implementationsSalesforce Software-as-a-Service Platform-as-a-Service • AppExchange • On-demand application sharing service • Applications that run entirely within a web browse • Force.com • On-demand platform • Provide Web Service API: • Force.com Web Services API • Salesforce Object Query Language (SOQL) • Salesforce Object Search Language (SOSL) • Etc.
CLOUD COMPUTING IMPLEMENTATIONS3TERA • Software-as-a-Service • Launch AppLogic (grid OS) • package an entire N-tier application or service into a logical entity and manage it as a single system • Application run on a grid of commodity servers
CLOUD COMPUTING IMPLEMENTATIONSRIGHTSCALE • Multiple Clouds Work (9/2007) • Managing clouds: • Amazon’s Web Service • GoGrid • FlexiScale • Mosso • 4/2009 extend to Private and Hybrid Cloud • 3 types of Cloud • Public cloud (external cloud): traditional mainstream sense • Private cloud • Hybrid cloud: consisting of multiple internal and/or external providers
Cloud computingMarket Oriented (1) • Consumers determine the required service level through • Quality of Service (QoS) parameters • Service Level Agreements (SLAs) • Cloud providers will need to consider and meet different QoS as negotiated in specific SLAs • Traditional system-centric resource management architecture • Market-oriented resource management: • regulate the supply and demand of Cloud resources • provide feedback in terms of economic incentives for both Cloud consumers and providers • promote QoS-basedresource allocation mechanisms
CLOUD COMPUTINGMARKET ORIENTED (2) • User/Broker • SLA Resource Allocator • Interface • External Users/Brokers • Cloud service Provider • Virtual Machines (VM) • Physical Machines
CLOUD COMPUTINGMARKET ORIENTED (3) - SLA RESOURCE ALLOCATOR • Service Request Examiner and Admission Control ensure nooverloading • Pricing decide charge fee (time, rate, availbility) • Accounting maitain usage of resource • VM Monitor keep VMtrack • Dispatcher execute progress of service on VM • Service Request Monitor keep track of executing service
CLOUD COMPUTINGMARKET ORIENTED (4)RESOURCE MANAGEMENT STRATEGIES • Customer: keep inform and obtain feedback • Management risk: establish context of risk and identify the risks involved • User requirement change overtime: • Dynamically change service demand • User can broke system acting to select suitable provider and negotiation • Virtualization: configure VM as different partitions of resources
GRIDS AND CLOUDS OVERVIEW • Is “Cloud Computing” just a newname for Grid ? • Yes: They are the same – to reduce the cost of computing, increase reliability, flexibility by transforming computers from something that we buy and operate ourselves to something that is operated by third party. • No: Things are different now than they were 10 years ago. • So we are operating at a different scale, and operating at these new, more massive scales can demand fundamentally different approaches to tackling problems.
GRIDS AND CLOUDS OVERVIEW • The definition of Cloud Computing overlaps with many existing technologies, such as Grid Computing, Utility Computing, Services Computing, and Distributed Computing in general.
COMPARING GRIDS AND CLOUDS Business Model 1 Architecture 2 Resource Management 3 Programming Model 4 Application Model 5 Security Model 6
BUSINESS MODEL • The business model for Clouds: • User will pay the provider on a consumption basis, such as electricity, gas, and water. • The prospect of needing only a credit card to get on demand access to 100000+ processors in tens of data centers distributed throughout the world. • The business model for Grids: • It is project-oriented in which users or community represented by that proposal have certain number of services units (i.e. CPU hours) they can spend. • A Grid economy for a global Grid ?
ARCHITECTURE • Grids started off in the mid-90s to address large scale computation problems using a network of resource sharing commodity machines • Focus on integrating existing resources. • Clouds are developed to address Internet scale computing problems (homogeneous). • Usually referred to as a large pool of computing and/or storage resource.
Architecture Application Application Collective Platform Resource Unified Resource Connectivity Fabric Fabric Cloud protocol Architecture Grid protocol Architecture
RESOURCE MANAGEMENT • Compute Model • Data Model • Data Locality • Combining compute and data management • Virtualization • Monitoring • Provenance
RESOURCE MANAGEMENT • Compute Model • Most Grids use a batch-scheduled compute model. A grid site use a local resource manager such as PBS, Condor, SGE. • Resources in Cloud Computing are shared by all users at the same time (in contrast to dedicated resources governed by a queuing system). one of the major challenges for Cloud Computing
Data Cloud Computing Client Computing RESOURCE MANAGEMENT • Data Model • Cloud Computing • Storage, computing and all kind of other resources will mainly be provisioned by the Cloud !!! • Grid Computing • Data Grids have been designed to tackle data intensive applications in Grid environment.
RESOURCE MANAGEMENT • Data Locality • In Grids: • Data storage usually relies on a shared file systems (NFS, GPFS, PVFS…) where data locality cannot be easily applied. • In Clouds: • One approach is to improve schedulers to be data-aware, and to be able to leverage data locality information when scheduling computational tasks.
RESOURCE MANAGEMENT • Combine compute and data management • Data-aware schedulers and dispersing data close to processors is critical in achieving good scalability and performance. • Grids have been making progress in combining compute and data management with data-aware scheduler. • Clouds will face significant challenges in handling data-intensive applications.
RESOURCE MANAGEMENT • Virtualization • Clouds need to run multiple applications, and all the applications appear to the users as if they were running simultaneously and could use all the available resources in the Cloud. • Grids do not rely on virtualization as much as Clouds do, but that might be more due to policy and having each individual organization maintain full control of their resources. (i.e. by not virtualizing them).
RESOURCE MANAGEMENT • Monitoring • Grids in general have a different trust model in which users via their identity delegation can access and browse resources at different Grid sites and Grid resources are not highly abstracted and virtualized as in Clouds. • Example: Ganglia-distributed monitoring system. • Virtualization brings to Clouds the potential difficulty in fine-control over the monitoring of resources. • A significant challenge for Clouds, but it will become less important as Clouds become more sophisticated and more less self-maintained and self-healing.
RESOURCE MANAGEMENT • Provenance • Provenance refers to the derivation history of a data product, including all the data sources, intermediate data products, and the procedures that were applied to produce the data product. • Ex: Scientists can debug workflow execution, validate or invalidate scientific results. • In Grids, provenance management has been in general built into a workflow system. • Provenance is still an unexplored area in Cloud environments.
PROGRAMMING MODEL • Clouds have generally adopted Web Services APIs where users access, configure and program Cloud services using pre-defined APIs. • Although Clouds adopted some common communication protocols such as HTTP and SOAP, the integration and interoperability of all the services and applications remain the biggest challenges.
APPLICATION MODEL • Grids generally support many different kinds of applications: from high performance computing (HPC) to high throughput computing (HTC). • Loosely coupled and tightly coupled applications • Cloud computing can support a similar set of applications. • The one exception that will be hard to achieve in Cloud Computing are HPC applications that require fast and low latency network interconnects for efficient scaling to many processors
APPLICATION MODEL • “ A Science Gateway is a community-developed set of tools, applications and data collections that are integrated via a portal or a suite of applications. ” • Grid gateways interact with services and provide rich user interactivity. • Cloud gateways have almost no interaction between end-user.
SECURITY MODEL • Clouds mostly comprise dedicated data centers belonging to the same organization. • Clouds environments is more homogeneous than Grids is. • The security model for Clouds seems to be relatively simpler and less secure than the security model adopted by Grids. • Security is one of the largest concerns for the adoption of Cloud Computing. • Seven risks a Cloud user should raise with vendors before committing ?
SECURITY MODEL Privileged user access Data segregation Security Regulatory compliance Recovery Data Location Investigative support Long-term viability
SECURITY MODEL • Privileged user access: sensitive data processed outside the enterprise needs the assurance that they are only accessible and propagated to privileged users. • Regulatory compliance: a customer needs to verify if a Cloud provider has external audits and security certifications and if their infrastructure complies with some regulatory security requirements. • Data location: It is important that a Cloud provider commit to storing and processing data in specific jurisdictions and to obey local privacy requirements on behalf of the customer.