public clouds overview

66
Public Clouds Overview Amazon, Google App Engine, Azure, Rackspace, … Svetlin Nakov Telerik Software Academy academy.telerik.com Manager Technical Training http://www.nakov.com ttp://clouddevcourse.telerik.com

Upload: tait

Post on 13-Feb-2016

35 views

Category:

Documents


1 download

DESCRIPTION

http://clouddevcourse.telerik.com. Public Clouds Overview. Amazon, Google App Engine, Azure, Rackspace, …. Svetlin Nakov. Telerik Software Academy. academy.telerik.com. Manager Technical Training. http://www.nakov.com. Table of Contents. What is a Public Cloud? Public PaaS Clouds - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Public Clouds Overview

Public Clouds Overview

Amazon, Google App Engine, Azure, Rackspace, …

Svetlin Nakov

Telerik Software Academyacademy.telerik.com

Manager Technical Traininghttp://www.nakov.com

http://clouddevcourse.telerik.com

Page 2: Public Clouds Overview

Table of Contents What is a Public Cloud? Public PaaS Clouds

Amazon Web Services (AWS) Google App Engine (GAE) Microsoft Windows Azure Rackspace PHP Fog Heroku Engineyard

2

Page 3: Public Clouds Overview

Table of Contents (2) Force.com AppForce AppHarbor Red Hat OpenShift CloudBees OpenLogic CloudSwing VMware Cloud Foundry Oracle Public Cloud

Choosing a Public Cloud

3

Page 4: Public Clouds Overview

What is a Public Cloud?Hot It Works?

Page 5: Public Clouds Overview

What is a Public Cloud? Public clouds

Provide computing resources on demand Publicly in Internet, for everyone Paid or free of charge (to some limit) Could be IaaS, PaaS, SaaS or mix of

them Examples of public clouds

Amazon AWS, Google App Engine, Windows Azure, Rackspace, PHP Fog, Heroku, Force.com AppForce, Engineyard, AppHarbor, OpenShift, CloudBees, CloudSwing, Cloud Foundry, Oracle Public Cloud, Salesforce, WordPress.com, …

5

Page 6: Public Clouds Overview

Amazon Web Services (AWS)

Page 7: Public Clouds Overview

Amazon Web Services Amazon Web Services (AWS)

The pioneer of the public clouds Provides cloud platform and

services from 2002 Provides IaaS and PaaS on demand

Amazon Elastic Compute Cloud (Amazon EC2) Virtual machines on demand

Runs Windows / Linux / other OS Multiple locations: US, EU, Japan,

Brazil, … http://aws.amazon.com/ec2/

7

Page 8: Public Clouds Overview

Amazon Web Services (2)

Amazon Elastic Block Store (Amazon EBS) Virtual hard disk (HDD) volumes Used with the EC2 to keep the OS

file system http://aws.amazon.com/ebs/

Amazon Simple Storage Service (Amazon S3) Hosting binary data (files, images,

videos, etc.) Accessible through the Web

With or without authentication http://aws.amazon.com/s3/

8

Page 9: Public Clouds Overview

Amazon Web Services (3)

Amazon DynamoDB / SimpleDB Managed NoSQL cloud database Highly scalable, fault-tolerant DynamoDB is newer and faster than

SimpleDB http://aws.amazon.com/dynamodb/

Amazon Relational Database Service (RDS) Managed MySQL and Oracle

databases Scalability, automated backup,

replication http://aws.amazon.com/rds/

9

Page 10: Public Clouds Overview

Amazon Web Services (4)

Other AWS services Amazon SQS (message queue) Amazon CloudFront (content

delivery network) Amazon ElastiCache (caching) Amazon Route 53 (cloud DNS) Amazon SES (email)

Pricing On-demand pricing (per hour / per

GB) Has 1-year free trial (credit card

required)

10

Page 11: Public Clouds Overview

Google App Engine (GAE)

Page 12: Public Clouds Overview

Google App Engine Google App Engine (GAE)

Leading Java and Python PaaS public cloud

Infrastructure similar to the one driving GMail and Google Docs operated by Google

http://code.google.com/appengine/ App Engine has a completely free version Provides CPU / bandwidth / storage

capable to serve 5 000 000 page views / month

Instant registration with SMS confirmation

12

Page 13: Public Clouds Overview

Google App Engine Services

App Engine instances Computing units that host the

applications Fully managed sandboxes (they are

not VMs!) Provide CPU + RAM + storage +

language runtime https://appengine.google.com

App Engine backends Like the App Engine instances

But provides higher computing resources

Used for background processing

13

Page 14: Public Clouds Overview

Google App Engine Services (2)

App Engine datastores Provide NoSQL schemaless object

database Supports transacts and a query-

engine (GQL) High-replication datastore (HRD) Master-slave datastore (faster but

less-reliable) Cloud SQL

Managed MySQL in the App Engine cloud

Blobstore / Cloud Storage Store files / blobs, has with ACL and

REST API

14

Page 15: Public Clouds Overview

Google App Engine Services (3)

MapReduce API Highly-scalable parallel computing

API for heavy computing tasks (based on Hadoop)

Channel API Push notifications for JavaScript

applications Task Queues

Services for execution of background work

Memcache Distributed in-memory data cache

15

Page 16: Public Clouds Overview

App Engine for Java & Python

Google App Engine for Java Java 6 in a sandbox environment Java Web apps ( WARs) / Servlets /

JSPs + GWT Persistence with JPA and JDO in the

datastore java.net, JavaMail and JCache +

Eclipse plugin Google App Engine for Python

Python 2.5 in a sandbox environment

Supports rich frameworks like Django

Persistence API for the datastore service

16

Page 17: Public Clouds Overview

MicrosoftWindows

Azure

Page 18: Public Clouds Overview

Windows Azure Microsoft Windows Azure

Fast-growing public cloud Operated by Microsoft Provides IaaS cloud (Windows VMs) Provides rich PaaS platform

Mainly for .NET developers Provides also Java, PHP and Node.js

APIs No free version, only 3 months trial

Bulgarian citizens cannot register! 18

Page 19: Public Clouds Overview

Windows Azure Services

Windows Azure Compute Computing instances run Windows

OSand applications (CPU + RAM + HDD)

Web role Internet Information Services (IIS)

machine for hosting Web applications and WCF services

Worker role Long-running computations

VM role Windows virtual machine (non-

persistent)

19

Page 20: Public Clouds Overview

Windows Azure Services (2)

Azure data storage services Azure Table Storage

Distributed highly-scalable clouddatabase (stores entities with properties)

Azure Queue Storage Message queue service

Azure Blobs / Drives Blob / file storage NTFS volumes

20

Page 21: Public Clouds Overview

Windows Azure Services (3)

SQL Azure SQL Server in the cloud Highly-available and scalable

relational DB Azure Business Analytics

Create reports with tables, charts, maps, etc.

Azure CDN Content delivery network

Azure Caching Distributed, in-memory, application

cache

21

Page 22: Public Clouds Overview

RackspaceIaaS Platform for Cloud Hosting

Page 23: Public Clouds Overview

Rackspace Rackspace is mainly IaaS cloud

hosting provider Provide Linux / Windows VMs on

demand Scalable on demand, pricing by hour Data centers worldwide

Provides few other cloud services Cloud Files – cloud file storage, like

Amazon S3 Cloud Sites – SaaS hosting for

WordPress, Joomla, OSCommerce, ASP.NET apps, etc.

Cloud Load Balancers, Cloud DNS Has 25-days free trial (credit card required)

23

Page 24: Public Clouds Overview

PHP FogPHP Cloud Platform

Page 25: Public Clouds Overview

PHP Fog PHP Fog (www.phpfog.com)

Well-developed and stable cloudplatform for PHP applications

Combines PaaS and SaaS models Supports standard LAMP stack for

PHP PHP + MySQL + PHP frameworks like

CakePHP, Zend Framework, Yii Framework, Code Igniter

One-click install for many PHP applications WordPress, Joomla, Drupal,

MediaWiki, SugarCRM, etc.

25

Page 26: Public Clouds Overview

PHP Fog Add-Ons PHP Fog Add-Ons (phpfog.com/addons) MongoHQ database Mailgun mail server Blitz performance testing IronWorker task queue IronMQ message queue MongoLab MongoDB NewRelic performance monitoring http://phpfog.com/addons 26

Page 27: Public Clouds Overview

The PHP Fog Platform PHP Fog uses Git source control system Developers work locally and commit

in Git The committed code is

automatically deployed The platform

Nginx load balancer Varnish caching Apache web server + mod_php MySQL highly-available database

PHP fog has completely free limited version

27

Page 28: Public Clouds Overview

HerokuRich and Powerful Cloud Platform

Page 29: Public Clouds Overview

Heroku Heroku is a leading public PaaS platform Supports very broad stack of

technologies Everything except .NET and PHP

(officially) Development stacks

Java + Spring + Hibernate + PostgreSQL / MySQL / MongoDB + Memcache + Tomcat / Jetty

Ruby + Rails + MongoDB / MySQL + Memcache

Python + Django + Memcache + PostgreSQL

JavaScript + Node.js + MySQL / MongoDB

29

Page 30: Public Clouds Overview

Routing HTTP load balancers

Dynos – managed workers Web / Worker / Cron

Back-ends systems DB: MySQL / PostgreSQL Add-ons: MongoDB, Redis

Auto-scaling technology Logging and monitoring (Logplex) Git-based deployment

The Heroku Platform

30

Page 31: Public Clouds Overview

Heroku Add-Ons Large set of add-ons for developers

Airbrake, Amazon RDS, Apigee for Facebook, Apigee for Twitter, Appoxy SimpleWorker, Blitz, Chargify, ClearDB MySQL, Cloudant (CouchDB + MapReduce), CloudMailin, Cron, Custom Domains, DbInsights, Deploy Hooks, DocRaptor, DynectSMB, Exceptional, Flying Sphinx, Heroku PG Backups, Heroku PostgreSQL, Heroku Scheduler, Heroku Shared PostgreSQL, Hoptoad, IndexTank, IronMQ

31

Page 32: Public Clouds Overview

Heroku Add-Ons (2) Large set of add-ons for developers

IronWorker, JustOneDB, Loggly, Mailgun, Memcache, MongoHQ, MongoLab, Moonshado SMS, Neo4j, New Relic, Panda Stream, Progstr Logger, PubNub, Pusher, RabbitMQ, Ranger, Redis To Go, RESTful Metrics, RhoConnect, Searchify IndexTank, Sendgrid, SimpleGeo, SSL, Stackmob, StatsMix, StatsMix Heroku, Integration Tutorial, StillAlive, Tddium, Treasure Data Hadoop, Tronprint, Websolr, Xeround, Zencoder, Zerigo DNS, …

32

Page 33: Public Clouds Overview

More about Heroku Heroku

Runs millions of applications Owned by Salesforce.com Founded in 2007, fast growing and

mature Heroku has a completely free limited version 750 computing hours 100 MB storage + 5 MB database Credit card not required 33

Page 34: Public Clouds Overview

EngineyardCloud Platform for Ruby on Rails and

PHP

Page 35: Public Clouds Overview

Engineyard Engineyard

Cloud PaaS platform for Ruby and PHP

Build on top of Amazon AWS Managed Ruby on Rails stack Orchestra PHP Cloud Free 500-hours trial (without credit

card) Built-in load balancer (Nginx) Deploy with Git and Subversion Rich set of add-ons (platform services)

35

Page 36: Public Clouds Overview

Engineyard Platform Services

Engineyard Platform Services (Add-Ons) Airbrake, Appcelerator, Blitz,

CloudFlare, CloudKick, CloudMailin, DNSimple, DocRaptor, Exceptional, Iron.io, Logentries, Loggly, MailGun, MongoHQ, MongoLab, New Relic, OneSky, ReportGrid API, Pusher, SendGrid, StillAlive, SpacialDB, SimpleWorker, Twilio, Xeround, Zencoder, …

engineyard.com/partners/platform-services

36

Page 37: Public Clouds Overview

Force.com AppForceApplication Development for Business

Users

Page 38: Public Clouds Overview

Force.com and AppForce

What is Force.com? Platform for creating and deploying

applications for the social enterprise

Build social and mobile functionality, business processes, reporting, and search

What is Force.com AppForce? Application development for

business users Drag-and-drop tools, pre-built

components, pre-designed user interfaces

Launch new apps in minutes

38

Page 39: Public Clouds Overview

AppForce Development Applications are developed in a Web-based editor + the Force.com IDE (Eclipse based tool) Proprietary languages, APIs,

frameworks, tools

39

Page 40: Public Clouds Overview

AppForce Development Platform

40

Proprietary programming language (Apex)

Proprietary database + reporting + analytics

Proprietary UI technology (Visualforce MVC)

Proprietary Web site builder, Mobile app builder, …

Page 41: Public Clouds Overview

AppForce DevelopmentPlatform (2)

41

Page 42: Public Clouds Overview

AppHarbor .NET Cloud Made Easy

Page 43: Public Clouds Overview

AppHarbor AppHarbor – public cloud platform

for .NET apps Supports a classical .NET

development stack C#, .NET Framework, ASP.NET (Web

Forms and MVC), WCF, WWF, ADO.NET Entity Framework, …

Deployment through Git / SVN / TFS Automated build process (compile +

unit tests) Build-in load balancing Built on top of Amazon AWS

infrastructure Rich set of add-on services

43

Page 44: Public Clouds Overview

AppHarbor: Add-On Services

Airbrake (error logging) Blitz (performance monitoring) CloudAMQP (RabbitMQ) Cloudant (CouchDB) CloudMailin (incoming email) Dedicated SQL Server JustOneDB (NoSLQ database) Logentries (log management) Mailgun (email send / receive) 44

Page 45: Public Clouds Overview

AppHarbor: Add-On Services (2)

Memcacher (in-memory caching) MongoHQ (managed MongoDB) MongoLab (managed MongoDB) MySQL (shared MySQL DB) RavenHQ (NoSQL database) Redis To Go (key-value store) SendGrid (email delivery) StillAlive (app monitoring) Shared SQL Server (managed instance)

45

Page 46: Public Clouds Overview

Red Hat OpenShiftPublic Cloud for LAMP and Java

Applications

Page 47: Public Clouds Overview

OpenShift What is OpenShift?

A free, auto-scaling platform-as-a-service for Java, Ruby, PHP, Perl and Python applications

Developed and supported by Red Hat

Can be installed locally or in the cloud

Deployment through Git push OpenShift Express

Completely free version, hosted in a shared cloud server infrastructure

47

Page 48: Public Clouds Overview

OpenShift Development Stacks

OpenShift runs hosted Red Hat Linux You have SSH console

Java + JEE 6 + CDI/Weld + Spring + Seam

PHP + Zend / CakePHP / Symfony / CodeIgniter

Python + Pylons / Turbogears / Django

Ruby + Rails / Sinatra Perl + PerlDancer Databases (relational + NoSQL)

MySQL, PostgreSQL, SQLite, MongoDB

48

Page 49: Public Clouds Overview

CloudBeesPublic PaaS Cloud for Java Developers

Page 50: Public Clouds Overview

CloudBees CloudBees is end-to-end Java cloud platform for development and deployment Supports Java and Java EE Java Web applications, Servlets, JSP,

JavaServer faces (JSF), Spring, JPA, Liferay portal, …

Databases: MySQL, MongoDB, CouchDB

Jenkins Continuous Integration Built on top of Amazon AWS Provides limited free edition

50

Page 51: Public Clouds Overview

The CloudBees Platform

51

Page 52: Public Clouds Overview

CloudBees Add-Ons Sauce Labs OnDemand (cross-browser

testing) New Relic (app monitoring) Cloudant (managed Apache CouchDB) SonarSource (source code inspection) MongoHQ (managed MongoDB) XWiki Cloud (cloud wiki) Papertrail (log management) Codesion (Subversion, Git and ALM) SendGrid (email sender) Websolr (search engine) 52

Page 53: Public Clouds Overview

OpenLogic CloudSwingPowerful Cloud for Almost any

Technology

Page 54: Public Clouds Overview

OpenLogic CloudSwing CloudSwing – flexible PaaS cloud platform Very broad range of technologies Linux, Apache, MySQL, Perl, PHP,

Python, LAMP, Java, Tomcat, Ruby, Rails, JavaScript, Node.js, Unicorn, NGinx

Highly-customizable, deployable on Amazon AWS and Rackspace

Has highly-limited free edition 30 free Amazon hours

54

Page 55: Public Clouds Overview

VMware Cloud Foundry

PaaS cloud for Java, Ruby and Node.js

Page 56: Public Clouds Overview

VMware Cloud Foundry VMware Cloud Foundry

Open-source cloud computing platform as a service (PaaS) software

Developed by VMware Pricing model is still unclear

How Cloud Foundry works? You develop and run cloud apps

locally (in a VM) Later you can deploy apps to the

public cloud E.g. in Amazon AWS, Rackspace,

CloudFoundry.com, etc.

56

Page 57: Public Clouds Overview

Cloud Foundry Architecture

57

Page 58: Public Clouds Overview

Oracle Public CloudPublic Cloud for Java EE and Oracle

Page 59: Public Clouds Overview

Oracle Public Cloud Oracle Public Cloud

Run Java EE + Oracle database ina managed cloud environment

Combines PaaS and SaaS Oracle PaaS offerings

Java + Java EE (JSP, JSF, Servlet, EJB, JPA, JAX-RS and JAX-WS) + WebLogic App Server + clustering + ADF + ADF Faces + …

Oracle Database + high-availability + data analysis + data loading + RESTful API

59

Page 60: Public Clouds Overview

Oracle Public Cloud (2) Oracle SaaS offerings

Fusion CRM on demand Customer relationship management

Fusion HCM on demand Human capital management

Oracle Social Network on demand Oracle Public Cloud

Pricing model is still unclear

60

Page 61: Public Clouds Overview

Other Public Clouds

C#

Java

HTML 5

PHPPython

coding

Ruby

Page 62: Public Clouds Overview

Other Public Clouds / Services

SAP NetWeaver Cloud Should combine SaaS and PaaS

Just like Oracle, but for the SAP platform

Still under development Cloud9 IDE online (http://c9.io)

Powerful cloud-based JavaScript IDE Supports also editing PHP / C# /

Java / … / code Jelastic (jelastic.com)

Highly scalable Java cloud

62

Page 63: Public Clouds Overview

Choosing a Public CloudGuidelines for Choosing a Public Cloud

PublicCloud

s

Page 64: Public Clouds Overview

Choosing a Public Cloud How to choose a public cloud for your app? PHP PHP Fog / Engineyard .NET Azure / AppHarbor Java Google App Engine / Heroku /

OpenShift / CloudBees / Oracle Public Cloud

Ruby Engineyard / Heroku / OpenShift

Python App Engine / Heroku / OpenShift

Always consider using IaaS clouds And build your own platform on top

of them

64

Page 65: Public Clouds Overview

форум програмиране, форум уеб дизайнкурсове и уроци по програмиране, уеб дизайн – безплатно

програмиране за деца – безплатни курсове и уроцибезплатен SEO курс - оптимизация за търсачки

уроци по уеб дизайн, HTML, CSS, JavaScript, Photoshop

уроци по програмиране и уеб дизайн за ученициASP.NET MVC курс – HTML, SQL, C#, .NET, ASP.NET MVC

безплатен курс "Разработка на софтуер в cloud среда"

BG Coder - онлайн състезателна система - online judge

курсове и уроци по програмиране, книги – безплатно от Наков

безплатен курс "Качествен програмен код"

алго академия – състезателно програмиране, състезанияASP.NET курс - уеб програмиране, бази данни, C#, .NET, ASP.NET

курсове и уроци по програмиране – Телерик академия

курс мобилни приложения с iPhone, Android, WP7, PhoneGapfree C# book, безплатна книга C#, книга Java, книга C# Дончо Минков - сайт за програмиране

Николай Костов - блог за програмиранеC# курс, програмиране, безплатно

?? ? ?

??? ?

?

? ?

??

?

?

? ?

Questions?

?

Public Clouds Overview

http://academy.telerik.com

Page 66: Public Clouds Overview

Free Trainings @ Telerik Academy

“Cloud Development" course @ Telerik Academy clouddevcourse.telerik.com

Telerik Software Academy academy.telerik.com

Telerik Academy @ Facebook facebook.com/TelerikAcademy

Telerik Software Academy Forums forums.academy.telerik.com