Engineering Cloud Applications 1

Similar documents
Cloud Platforms. Various types and their properties. Prof. Balwinder Sodhi. 1 Computer Science and Engineering, IIT Ropar

Deliver a Private Cloud Middleware Platform or Public Cloud Platform as a Service

IBM ICE (Innovation Centre for Education) Welcome to: Unit 1 Overview of delivery models in Cloud Computing. Copyright IBM Corporation

Special thanks to Chad Diaz II, Jason Montgomery & Micah Torres

The Cloud at Your Service

Understanding Cloud. #IBMDurbanHackathon. Presented by: Britni Lonesome IBM Cloud Advisor

From 24/7 infrastructure to 8-to-5 app support with RDS and RDmi on Microsoft Azure

BOC Group Customer Success Story

CLOUD COMPUTING- A NEW EDGE TO TECHNOLOGY

FOUR PRINCIPLES OF DEVOPS FOR CONTINUOUS CLOUD COST CONTROL

Redefining Perspectives A thought leadership forum for technologists interested in defining a new future

10 Ways Oracle Cloud Is Better Than AWS

1. DevOps 2. Application Hosting Options 3. Automating Environment Setup 4. Deployment Scripting 5. Application Monitoring 6. Continuous Deployment

Cloud NDT A Good Mix? Eric Dusablon

The Definitive Guide to the Cloud and Kentico CMS

Bluemix Overview. Last Updated: October 10th, 2017

Migration To the Cloud Using AWS

SATURN th Annual SEI Architecture Technology User Network Conference

Oracle Cloud Blueprint and Roadmap Service. 1 Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Cloud Solutions Infrastructure, Platform or Software: Where should you go?

HYBRID CLOUD MANAGEMENT WITH. ServiceNow. Research Paper

Understanding The Value of Containers in a World of DevOps. Advice that empowers. Technology that enables.

Tough Math for Desktop TCO

How data gravity is pulling your analytics to the cloud

How Can Your Business Benefit from Cloud and Monitoring? Tan Siew Wu, Group Head of Presales, iwv 30 March 2017

AN IPSWITCH EBOOK. Cloud Monitoring and the 9 Best Practices You Need to Adopt

<Insert Picture Here> Cloud: Is it Ready for Prime Time?

Windows Azure What, how and why. Martin Maripuu Net Group OÜ

What is cloud computing and its impact on nonprofit software?

Fast Innovation requires Fast IT

SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other

Cloud Computing An IBM Perspective

Think you're ready for SaaS? Think again!

Cloud Solutions Infrastructure, Platform or Software

JOURNEY TO AS A SERVICE

Supporting Cloud Computing with Professional Services

SHINING A LIGHT ON THE CLOUDS: FINDING A TRUE CLOUD SOLUTION

Cloud Computing & On Demand Services

[Header]: Demystifying Oracle Bare Metal Cloud Services

Distributed Systems Current Trends in Distributed Systems

Application Performance Management for Cloud

Warren Buffett: I don't think there's any company that's done a better job of laying out where they're going to go and then having gone there.

Understanding the Business Value of Docker Enterprise Edition

CloudShell Pro. Self-Service Sandbox Environments for Physical, Virtual, and Hybrid-Cloud D ATA SHEET. The Need for Cloud Sandboxing

Case Study BONUS CHAPTER 2

CLOUD TECHNOLOGY MAXIMIZES ROI BY REDUCING TCO

Cloud Computing, How do I do that?

WHAT IS CLOUD COMPUTING?

Cloud Computing 1/17/2012

A Look at the Future: Market Oriented Cloud Computing

HP Software EMEA Performance Tour Zurich, Switzerland September 18

Introduction to Cloud Computing

Disaster Recovery as a Service (DRaaS) How innovation in the Cloud enables disaster recovery at minimal costs

CLOUDCHECKR ON AWS AND AZURE: A GUIDE TO PUBLIC CLOUD COST MANAGEMENT

Capgemini Cloud Platform. Migrate, operate, and innovate every aspect of your business in the cloud

z Systems The Lowest Cost Platform

Catalogic ECX : Data Center Modernization with In-Place Copy Data Management

Cloud Capacity Management

DRIVING GREATER ONLINE EXPERIENCES WITH CLOUD

Oracle OpenWorld 2018

ACHIEVING A SERVERLESS DEVELOPMENT EXPERIENCE

Fortacs Group, LLC S T R A T E G I C B U S I N E S S A N D I T S O L U T I O N S

Enterprise Cloud Computing

As a Service (XaaS) Business Model for Telecom Industry. Whitepaper

Act! in the Cloud. Finding your path to success with hosted CRM

Applicazioni Cloud native

Enterprise Database Systems for Big Data, Big Data Processing, and Big Data Analytics. Sunnie Chung Cleveland State University 1

Cloud Computing: What s Your Service? Introduction

The Hybrid Enterprise: Working Across On-premises, IaaS, PaaS and SaaS

The Cloud and the TruMethods Way

Introduction to Information Security Prof. V. Kamakoti Department of Computer Science and Engineering Indian Institute of Technology, Madras

Value Beyond Virtualization

Exam C Foundations of IBM DevOps V1

I D C T E C H N O L O G Y S P O T L I G H T. S e r vi c e s f o r Machine Data An a l yt i c s?

Oracle Cloud for the Enterprise John Mishriky Director, NAS Strategy & Business Development

13.0 The Cloud The Cloud The Cloud The Cloud The Cloud 7/16/2010. Distributed Data Management

The Migration of Web Applications to the Cloud Environment By. Pethuru Raj PhD Enterprise Architect Sify Software Ltd. Chennai

AWS Transformation Day. Thomas Blood, EMEA Enterprise Strategist 2017

Platform overview. Platform core User interfaces Health monitoring Report generator

Maturing IoT solutions with Microsoft Azure. Glenn Colpaert Azure/IoT Domain

Meetup DB2 LUW - Madrid. IBM dashdb. Raquel Cadierno Torre IBM 1 de Julio de IBM Corporation

ProSiebenSat1 s Digital Media Transformation AWS Enterprise Summit 2015

<Insert Picture Here> Cloud Computing

Cloud OS Customer-Ready Services

DR. FERRI ABOLHASSAN DIGITAL TRANSFORMATION IS ABOUT MORE THAN JUST CLOUD COMPUTING

WHITEPAPER WHITEPAPER. Processing Invoices in the Cloud or On Premises Pros and Cons

Dan Crook, Enterprise Architect. Intel Corporation

MOVE YOUR BUSINESS TO THE CLOUD

THE FUTURE OF NETWORKS IS OPEN...SOURCE! François Duthilleul EMEA Solution Architect, Telco Technology Office


Executive Summary: Enterprise Cloud Strategy

"Web Age Speaks!" Webinar Series. Introduction to DevOps

Cloud Data Integration and Data Quality: Extending the Informatica Platform to the Cloud

Davide Albo. Architecture for Disruption IBM Corporation

Azure Stack. Unified Application Management on Azure and Beyond

Richard Hill Laurie Hirsch Peter Lake Siavash Moshiri. Guide to Cloud Computing. Principles and Practice. ^ Springer

IBM Cloud Operating Environment

WHITE PAPER Migrating to the Cloud

Bimodal IT. Erfolgreich in zwei Welten unterwegs: Herausforderungen und Lösungsansätze. Sascha Meier CTO Dell EMC Schweiz

HyperCloud. IT s Cloud Dilemma

Transcription:

Engineering Cloud Applications 1 Cloud Computing Dr. Philipp Leitner University of Zurich, Switzerland software evolution & architecture lab

What is Cloud Computing? (1) From a user perspective: Software and data is access over the Internet

What is Cloud Computing? (2) From a user perspective: Software and data is access over the Internet From a software developer perspective: Developer rents computing resources Application is running on the cloud provider s machines Fundamentally about loss of control

Gartner Hype Cycle 2011

Gartner Hype Cycle 2013 Type to enter text

Gartner Hype Cycle 2016 Type to enter text

Why is CC so popular? Let s assume you are a small(ish) company You probably have a Web-based product You probably don t have too much money

In the past, if your application became popular and your systems or your infrastructure did not scale you became a victim of your own success. Conversely, if you invested heavily and did not get popular, you became a victim of your failure. Jinesh Varia, Amazon

Cloud Technology Stack IaaS PaaS SaaS Less Restrictions Application Data Application Data Application Data Application Runtime Application Runtime Application Runtime App Type to enter text Database Server Database App Server Database App Server Virtualization Virtualization Virtualization Hardware Hardware Hardware Managed by Client Managed by Cloud Vendor Higher Abstraction

Example Services IaaS PaaS SaaS Less Restrictions Application Data Application Data Application Data Application Runtime Application Runtime Application Runtime Database App Server Database App Server Database App Server Virtualization Virtualization Virtualization Hardware Hardware Hardware Managed by Client Managed by Cloud Vendor Higher Abstraction

Some Example Cloud Services

AWS EC2 (IaaS)

AWS Elastic Beanstalk (Paas)

AWS Lambda (PaaS as well)

Other Cloud Providers

Basic Cloud Computing Concepts Core concepts: Elasticity Multi-Tenancy Opaque infrastructure Illusion of Infinite Resources Resource virtualization / pay-per-use

Basic Cloud Computing Concepts Core concepts: Elasticity Multi-Tenancy Opaque infrastructure Illusion of Infinite Resources Resource virtualization / pay-per-use

Virtualization of Computing Resources Virtualization is at the core of cloud computing

Network Virtualization Software-Defined Networks (SDN)

Virtualization of Storage Ephemeral Storage Block Storage Virtualized NAS Storage on the same physical host

Basic Cloud Computing Concepts Core concepts: Elasticity Multi-Tenancy Opaque infrastructure Illusion of Infinite Resources Resource virtualization / pay-per-use

On Elasticity

Overprovisioning

Underprovisioning

Elastic Provisioning

Real Example (from Segment) https://segment.com/blog/the-million-dollar-eng-problem/

Pay-Per-Use Granularity In practice, how elastic one can really be depends on three factors: Resource granularity (how fine-grained can we get resources?) Billing granularity ( billing time unit, for instance 1 hour) Provisioning time (how long does it take to get and release resources?) > all of those depend on the service!

Basic Cloud Computing Concepts Core concepts: Elasticity Multi-Tenancy Opaque infrastructure Illusion of Infinite Resources Resource virtualization / pay-per-use

Multi-Tenancy Resources are shared among many independent parties e.g., the physical host that runs your application also hosts VMs for Netflix Fundamentally how the cloud makes money Allows cloud to efficiently use its physical infrastructure and leverage economies of scale

Main Issues Noisy Neighbours (resource inference) Not all computational resources can be cleanly divided Most importantly: I/O and network access Nosy Neighbours (information leakage) E.g., VM placement attacks

Potential Fixes Dedicated instances are guaranteed to be only co-located with resources of the same tenant Not the same as non-virtualized resources Bare Metal Cloud Non-virtualized resources that are served on demand

Basic Models IaaS vs. PaaS vs. SaaS What level of abstraction is provided by the cloud? Public vs. Private vs. Hybrid Cloud Who is hosting the cloud?

Private Cloud So far we have always assumed that cloud computing means public cloud The entity providing the cloud is separate from the consumer Private cloud: Use cloud principles on your own hardware Largely out of scope in this lecture

Cloud Bursting

Hybrid Cloud A hybrid cloud system is a system that makes use of multiple clouds at the same time (typically a combination of private and public clouds)

Cloud Bursting Advantages Best of two worlds: (1) application mostly runs on top of (cheap, fast and relatively reliable) internal data centre > private cloud (2) load spikes can be covered by resources from a public cloud provider > public cloud

Cloud Bursting Disadvantages Technical issues: Network latency between instances in your private cloud and those in the public cloud is very large Technical capabilities of the different clouds may be different Legal issues: Oftentimes, not all data is allowed to be transferred to a public cloud

Opportunities / Benefits Focus on Product, Productivity Faster Delivery, Time-to-market Lower Costs/TCO (Total Cost of Ownership) Cost- and Product-Related 9% 10% 11% Automation, Deployment Pipelines 22% Easier Infrastructure Setup and Maintenance 30% Scalability / Elasiticity 31% 0 5 10 15 20 25 30 Percentages (survey responses of 294 cloud developers) J. Cito, P. Leitner, T. Fritz, and H. C. Gall, The Making of Cloud Applications An Empirical Study on Software Development for the Cloud, in Proceedings of the 10th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE), 2015.

Business Opportunities Lower TCO (presumably) CapEx > OpEx DevOps / NoOps Business Agility Pay little as long as you don t have users Less administration, more building features Faster feedback, continuous delivery

TCO Total Costs of Ownership Acquistion + Operation + Change Costs of buying the hardware + Maintenance and repair + Operational costs (utilities, admin salaries)

Simple Calculation Example https://www.business-case-analysis.com/total-cost-of-ownership.html

CapEx -> OpEx Acquisition costs -> capital expenses (CapEx) Requires money upfront Cashflow problem (especially for startups) Through pay-per-use, you essentially have no CapEx anymore, only operational expenses (OpEx) Compare: car or personell leasing

Opportunities / Benefits Focus on Product, Productivity Faster Delivery, Time-to-market Lower Costs/TCO (Total Cost of Ownership) 9% 10% 11% Technology Related Automation, Deployment Pipelines 22% Easier Infrastructure Setup and Maintenance 30% Scalability / Elasiticity 31% 0 5 10 15 20 25 30 Percentages (survey responses of 294 cloud developers) J. Cito, P. Leitner, T. Fritz, and H. C. Gall, The Making of Cloud Applications An Empirical Study on Software Development for the Cloud, in Proceedings of the 10th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE), 2015.

Automation Central concept in IaaS: Instances are volatile No data stored on instance Can be terminated any time Setup completely automated J. Cito, P. Leitner, T. Fritz, and H. C. Gall, The Making of Cloud Applications An Empirical Study on Software Development for the Cloud, in Proceedings of the 10th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE), 2015.

Example Technology - Opscode Chef Interacts with the IaaS cloud via API Type to enter text Configures the server via Ruby code

Summary (1) (Public) cloud computing is about doing your computing on somebody else s hardware > Loss of control Basic models: IaaS vs. PaaS vs. SaaS Private vs. Public Cloud

Summary (2) Core advantages are technical and economical Economical advantages: Reduced TCO Technical advantages: Elasticity Automation No investment necessary