DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2



Similar documents
ur skills.com

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

Cloud Computing. Adam Barker

Cloud Models and Platforms

Amazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida

Cloud computing - Architecting in the cloud

Scalable Architecture on Amazon AWS Cloud

Scaling in the Cloud with AWS. By: Eli White (CTO & mojolive) eliw.com - mojolive.com

References. Introduction to Database Systems CSE 444. Motivation. Basic Features. Outline: Database in the Cloud. Outline

Introduction to Database Systems CSE 444

Where We Are. References. Cloud Computing. Levels of Service. Cloud Computing History. Introduction to Data Management CSE 344

Amazon EC2 Product Details Page 1 of 5

An Introduction to Cloud Computing Concepts

Cloud Computing and Amazon Web Services

Last time. Today. IaaS Providers. Amazon Web Services, overview

Amazon Elastic Compute Cloud Getting Started Guide. My experience

TECHNOLOGY WHITE PAPER Jun 2012

Amazon Elastic Beanstalk

TECHNOLOGY WHITE PAPER Jan 2016

Oracle Applications and Cloud Computing - Future Direction

Cloud Computing and Amazon Web Services. CJUG March, 2009 Tom Malaher

Using ArcGIS for Server in the Amazon Cloud

CompTIA Cloud+ 9318; 5 Days, Instructor-led

How To Choose Between A Relational Database Service From Aws.Com

CompTIA Cloud+ Course Content. Length: 5 Days. Who Should Attend:

Amazon Web Services Student Tutorial

Designing Apps for Amazon Web Services


How AWS Pricing Works May 2015

Virtual Data Centre Public Cloud Simplicity Private Cloud Security

Web Application Hosting in the AWS Cloud Best Practices

Lecture 02a Cloud Computing I

Chapter 11 Cloud Application Development

Cloud Computing Trends

Running Oracle Applications on AWS

Data Centers and Cloud Computing

How AWS Pricing Works

Web Application Hosting in the AWS Cloud Best Practices

Cloud 101. Mike Gangl, Caltech/JPL, 2015 California Institute of Technology. Government sponsorship acknowledged

ArcGIS for Server: In the Cloud

Drupal in the Cloud. Scaling with Drupal and Amazon Web Services. Northern Virginia Drupal Meetup

Web Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity

Assignment # 1 (Cloud Computing Security)

Amazon Web Services Yu Xiao

Threat Modeling Cloud Applications

Introduction to Cloud Computing

How To Understand Cloud Computing

Cloud Computing with Amazon Web Services and the DevOps Methodology.

9/26/2011. What is Virtualization? What are the different types of virtualization.

GeoCloud Project Report GEOSS Clearinghouse

How To Use Arcgis For Free On A Gdb (For A Gis Server) For A Small Business

Fault-Tolerant Computer System Design ECE 695/CS 590. Putting it All Together

Building an AWS-Compatible Hybrid Cloud with OpenStack

Last time. Today. IaaS Providers. Amazon Web Services, overview

Cloud Computing. Technologies and Types

Unit 10b: Introduction to Cloud Computing

Cloud powered services composition using Public Cloud PaaS platform

Cloud Computing For Bioinformatics

Data Centers and Cloud Computing. Data Centers

The Cloud is Not Enough Why Hybrid Infrastructure is Shaping the Future of Cloud Computing

Cloud Compu)ng. [Stephan Bergemann, Björn Bi2ns] IP 2011, Virrat

ArcGIS 10.3 Server on Amazon Web Services

Public Cloud Offerings and Private Cloud Options. Week 2 Lecture 4. M. Ali Babar

Cloud Computing. Chapter 1 Introducing Cloud Computing

Why Private Cloud? Nenad BUNCIC VPSI 29-JUNE-2015 EPFL, SI-EXHEB

Scalable Application. Mikalai Alimenkou

Building Fault-Tolerant Applications on AWS October 2011

What is Cloud Computing? Why call it Cloud Computing?

ArcGIS for Server in the Amazon Cloud. Michele Lundeen Esri

CHAPTER 8 CLOUD COMPUTING

Migration Scenario: Migrating Batch Processes to the AWS Cloud

Cloud Computing; What is it, How long has it been here, and Where is it going?

Amazon AWS in.net. Presented by: Scott Reed

OTM in the Cloud. Ryan Haney

CSE543 Computer and Network Security Module: Cloud Computing

Cloud Computing: Making the right choices

Architectural Implications of Cloud Computing

Cloud Computing Technology

RemoteApp Publishing on AWS

White Paper on CLOUD COMPUTING

Introduction to Engineering Using Robotics Experiments Lecture 18 Cloud Computing

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

EEDC. Scalability Study of web apps in AWS. Execution Environments for Distributed Computing

Design for Failure High Availability Architectures using AWS

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

Cloud Security Introduction and Overview

Simone Brunozzi, AWS Technology Evangelist, APAC. Fortress in the Cloud

Cloud Based Application Architectures using Smart Computing

OCR LEVEL 3 CAMBRIDGE TECHNICAL

Planning the Migration of Enterprise Applications to the Cloud

Deploying for Success on the Cloud: EBS on Amazon VPC Session ID#11312

Dimension Data Enabling the Journey to the Cloud

Deploying for Success on the Cloud: EBS on Amazon VPC. Phani Kottapalli Pavan Vallabhaneni AST Corporation August 17, 2012

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

Transcription:

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing Slide 1 Slide 3 A style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet. [Wikipedia] ➀ What is Cloud Computing? ➁ X as Service ➂ Key Challenges ➃ Developing for the Cloud WHAT IS CLOUD COMPUTING? Slide 2 Slide 4 Why is it called Cloud? services provided on virtualised resources virtual machines spawned on demand location of services no longer certain similar to network cloud WHAT IS CLOUD COMPUTING? 1 WHAT IS CLOUD COMPUTING? 2

Slide 5 Flavours of Cloud Computing: http://www.mazikglobal.com/blog/cloud-computing-stack-saas-paas-iaas/ Slide 7 KEY CHARACTERISTICS OF CLOUD COMPUTING SP 800-145. The NIST Definition of Cloud Computing: ➀ On-demand, self-service get resources (CPU, storage, bandwidth etc), automated: as needed, right now! ➁ Network access services accessible over the network, standard protocols ➂ Pooled resources provider: multi-tenant pool of resources dynamically assigned and reassigned per customer demand ➃ Elasticity Scalability: rapidly adjust resource usage as needed ➄ Measured service monitor resource usage billing for resources used BENEFITS Slide 6 Slide 8 Flexibility: Flexible provisioning Add machines on demand Add storage on demand Effort: Low barrier to entry Initial effort: no need to spec and set up physical infrastructure Continuing effort: no need to maintain physical infrastructure Figure from Hiroshi Wada KEY CHARACTERISTICS OF CLOUD COMPUTING 3 BENEFITS 4

Public vs Private Clouds? Cost: Low initial capital expenditure Avoid costs of over-provisioning for scalability Pay for what you use Slide 9 Slide 11 Public: open services available to everyone Private: owned, operated, and available to specific organisation Is this still cloud computing? in Developing and Extending Applicationsfor Windows Azure with Visual Studio Hybrid: system uses some private cloud services and some public cloud services. http://blog.nskinc.com/it-services-boston/bid/32590/private-cloud-or-public-cloud INFRASTRUCTURE AS A SERVICE: IAAS Service provider provides: Slide 10 Reliability: Redundancy Trust reliability of provider Data backups What happens when provider goes down? What about Security? Privacy? Slide 12 Server and network hardware Virtual machines IP addresses Services to manage VMs (create, start, stop, migrate) Optional: storage, database, synchronisation, communication Client provides: OS and OS environment Web server, DBMS, etc. Middleware Application software BENEFITS 5 INFRASTRUCTURE AS A SERVICE: IAAS 6

Challenges Client: Slide 13 Transparency (naming, redirection) Scalability: replication and load balancing decisions Synchronisation and coordination Security Fault tolerance Software maintenance and sys admin Challenges Provider: Hardware provisioning and maintenance Load management IP address management, DNS management Infrastructure fault tolerance Monitoring, logging, billing Slide 15 Elastic Compute Cloud: Instances: virtual cores, memory, storage instance types (cpu,memory,net, storage options): t, m, c, g, r, i, d micro, small, medium, large, xlarge,... Cost: free tier: limited instances, free CPU hours on-demand: $0.02 - $6.84 per hour reserved: 1-3 years, fixed cost Launch Amazon Machine Image (AMI) on instances Preconfigured or custom images Storage EXAMPLE 1: AMAZON WEB SERVICES (AWS) USING EC2 Slide 14 Slide 16 Elastic Compute Cloud (EC2) Figures from Hiroshi Wada Simple Storage Solution (S3) Simple DB Simple Queue Service http://vmtoday.com/2013/07/introduction-to-amazon-web-services-aws/ EXAMPLE 1: AMAZON WEB SERVICES (AWS) 7 USING EC2 8

Slide 17 Slide 19 Slide 18 Slide 20 USING EC2 9 USING EC2 10

Slide 21 Slide 23 Slide 22 Slide 24 USING EC2 11 RELIABILITY 12

RELIABILITY Slide 25 Slide 27 http://docs.aws.amazon.com/awsec2/latest/userguide/using-regions-availability-zones.html Regions and Availability Zones: 99.95% availability per service region Regions: geographically dispersed, independent Availability zones: contained in Regions Availability zones: isolated from failures in other zones, but connected Auto Scaling: Automatically start or stop new instances User-defined conditions manual (minimum group size), schedule instance health, CloudWatch input http://docs.aws.amazon.com/autoscaling/latest/developerguide/as-scale-based-on-demand.html Slide 26 Elastic IP addresses: IP address associated with account Dynamic remapping to specific instances instance has private IP address and public IP address Elastic IP can be mapped (and re-mapped) to private IP Slide 28 Security: Infrastructure Security Data centre physical security Software and hardware maintenance Monitoring and Testing (automatic and manual) Application Security Elastic Load Balancing: Distributes traffic across instances Monitors health of instances: customisable Routes to healthy instances API access control (access keys) Firewall settings for instances (security groups) Virtual Private Cloud (VPC): private or public subnetworks Encrypted storage support Logging RELIABILITY 13 STORAGE 14

Snapshots: Point in time copy of EBS volume STORAGE Stored in S3 Slide 29 Elastic Block Store: Network Attached Storage (NAS) (servers with disks) Block level storage volumes Mounted as block device (e.g. disk) on an instance Servers and Disks shared by customers (no caching, competing for disk and net IO) Slide 31 Differential Can be used to bootstrap image Simple Database Service (SimpleDB): Non-relational database: key-value Partitioned into domains Consistency Replicated in Availability zone highly replicated Cost: per GB/per month + IO request costs eventual consistency Typical uses: logging, indexing S3 data Erlang! COMMUNICATION Simple Storage Service (S3): Buckets: store objects Can be placed in specific regions Objects: data and metadata metadata: key-value pairs describing the object Slide 30 identified by key (unique within a bucket) versioned Slide 32 Consistency: highly replicated eventual consistency, no locking atomic object update Access control Simple Queue Service (SQS): Message-queue oriented communication service Persistent, asynchronous messaging At-least once delivery guarantee No ordering guarantee Access control http://docs.amazonaws.cn/en_us/autoscaling/latest/developerguide/as-using-sqs-queue.html STORAGE 15 PLATFORM AS A SERVICE 16

EXAMPLE 2: APP ENGINE PLATFORM AS A SERVICE Service provider provides: Hardware infrastructure Slide 33 OS and platform software (middleware) Distributed storage management Load balancing, replication, migration Management and Monitoring services Client provides: Application Slide 35 Various development languages (Python, Java, PHP, Go)... and runtime environments Storage based on Big Table Optimisation via Memcache Lots of APIs Per use billing Transparent scaling Figures from Hiroshi Wada Challenges Client: Learn new API and environment Follow API Optimise to limits of API and platform Security for own app Slide 34 Challenges Provider: Transparency (naming, redirection) Scalability: replication and load balancing decisions Synchronisation and coordination Security Fault tolerance Monitoring Software maintenance and sys admin Slide 36 EXAMPLE 2: APP ENGINE 17 EXAMPLE 2: APP ENGINE 18

Slide 37 Slide 39 SOFTWARE AS A SERVICE Service provider provides: Hardware infrastructure OS and platform software (middleware) Distributed storage management Load balancing, replication, migration Management and Monitoring services Application Client provides: Data Slide 38 Slide 40 Challenges Client: Learn new application Deal with potential restrictions Web interface, restricted functionality No offline access, no local storage Challenges Provider: Transparency (naming, redirection) Scalability: replication and load balancing decisions Synchronisation and coordination Security Fault tolerance Monitoring Software maintenance and sys admin Application development and maintenance SOFTWARE AS A SERVICE 19 KEY CHALLENGES OF CLOUD COMPUTING 20

KEY CHALLENGES OF CLOUD COMPUTING Scalability: Design for failure: Chaos Monkey test how well system deals with failure regularly and randomly kill system services Datacentre vs Global Partitioning Slide 41 Services and Data Slide 43 Replication Consistency: Dealing with consequences of CAP Theorem Dealing with un-usability of eventual consistency Security and Privacy: Slide 42 Reliability: SLA (Service Level Agreement): guarantees given by provider How reliable are the guarantees? What is the consequence if they aren t met? Redundancy and Replication Slide 44 External threats Denial of Service Infrastructure or platform service compromise SaaS compromise: data theft Co-located threats: other customers Isolation: but, covert channels, bugs in isolation within same provider (e.g. Availability Zones, Regions, etc.) migration across providers Geographically distributed architecture Privacy: data collected by providers IaaS and PaaS providers: encryption only helps a bit SaaS providers: at mercy of service provider Governments and others: where is your data stored or processed? Which laws apply? KEY CHALLENGES OF CLOUD COMPUTING 21 DEVELOPING FOR THE CLOUD 22

DEVELOPING FOR THE CLOUD Slide 45 Examples from Amazon: http://aws.amazon.com/architecture/ DEVELOPING FOR THE CLOUD 23