cloud computing and eclipse technology - how does it fit together?

28
© 2009 by Kornmayer, Knauer; made available under the EPL v1.0 | 29.10.2009 Cloud Computing and Eclipse How does it fit together? Markus Knauer (EclipseSource) Harald Kornmayer (NEC Laboratories Europe)

Upload: markus-knauer

Post on 10-May-2015

3.842 views

Category:

Technology


2 download

DESCRIPTION

Today, many companies, such as Amazon, Google, Microsoft, and others claim to provide the one and only cloud solution, but their offerings are different, aren’t they? Or do they have more in common than we think? Our talk starts with an introduction to cloud technology as it exists today by comparing the different products from the cloud providers. Next we will outline how technology from the Eclipse Runtime projects can contribute to a combined ’Cloud Stack’ and discuss currently available and possible future scenarios.

TRANSCRIPT

Page 1: Cloud Computing and Eclipse technology - how does it fit together?

© 2009 by Kornmayer, Knauer; made available under the EPL v1.0 | 29.10.2009

Cloud Computing and Eclipse

How does it fit together?

Markus Knauer (EclipseSource)Harald Kornmayer (NEC Laboratories Europe)

Page 2: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Outline

• Cloud computing

• Jump on the Cloud – Demo: Orchestration of Cloud infrastructure

• Cloud providers – A ‘non-complete’ Overview

• Equinox on the Cloud– Demo: Provisioning of a Cloud application with Eclipse

• Summary

Page 3: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

The Cloud

• Today: No announcement in IT without the cloud

The market

and manymore!!

Page 4: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Individual Cloud experience?!

Page 5: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Individual Cloud experience?!

• Cloud examples are Google mail accounts

Do you use it for your mails? Amazon Simple Storage

Service (S3) Did you know that you

downloaded Eclipse Galileo from S3?

Salesforce.com (CRM)

Amazon Elastic Cloud Computing (EC2)

Google AppEngine

Page 6: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Cloud Definition

• Many definition exists!!

• NIST definition

“Cloud computing is a model for enabling available, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”

(National Institute of Standards and Technology).

• Essential characteristics On-demand self service Ubiquitous network access Location independent resource

pooling Rapid elasticity Measured services

• Delivery Models IaaS PaaS SaaS

• Deployment models Private Community Public Hybrid

Page 7: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

The cloud from 10000 ft

Infrastructure as a Service (IaaS)

Software as a Service (SaaS)

Platform as a Service (PaaS)

User front ends

Page 8: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Platform development in Eclipse

Embedded Mobile Desktop Server Cloud (?)

Page 9: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Cloud challenges

• What is common in all cloud systems?

• What are the basic requirements? - Choice- Flexibility - Speed and agility - Skills

• How can the Open Source community overcome the proprietary cloud systems?

• Can Eclipse contribute technology today?

Page 10: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Orchestrate a Cloud application with Eclipse

Botto

m u

p

g-Eclipse

Page 11: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

• Eclipse Technology Project

• Intuitive and easy access for Grid users, Grid resource providers Grid application developers

• Extensible framework including a Grid model for seamless integration of Grid/Cloud resources

• Supports different Cloud/Grid middleware gLite, GRIA (middleware from EC projects) Amazon Web Service (AWS)

• Can run in headless mode as API

Page 12: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Cloud Demo – Infrastructure as a Service

• Prerequisites: AWS Account from aws.amazon.com

Access Key and Secret Key registered for EC2 and S3 A valid security group (preconfigured firewall)

• Use g-Eclipse to access AWS resources Create a Grid Project Access to S3 data

EFS Implementation for S3 protocol Start EC2 instances

Page 13: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

The cloud from 10000 ft

Infrastructure as a Service (IaaS)

Software as a Service (SaaS)

Platform as a Service (PaaS)

User front ends

Page 14: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Amazon Web Services – an example in details

Infrastructure

Application

Servers

Clients

Infrastructure [ IaaS ]

Compute Storage

Application / Software [ SaaS ]

UserInterface MachineInterface

Servers

Clients

Platform [ PaaS ]

Components Services

NetworkSimple DB +Amazon RDSSimple DB +Amazon RDS

Simple Storage Service (S3)

Simple Storage Service (S3)Elastic Compute

Cloud (EC2)Elastic Compute

Cloud (EC2)

Cloud FrontCloud Front

Elastic MapReduce

Elastic MapReduce

Simple Queue Service (SQS)

Simple Queue Service (SQS)

Virtual Private Cloud

Virtual Private Cloud

DevPayDevPayFlexible Payments Service (FPS)

Flexible Payments Service (FPS)

Alexa Top SitesAlexa Top Sites

DevPayDevPay

Alexa Web Information Serv.

Alexa Web Information Serv.

Page 15: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Amazon Web Services – in a nutshell!?!

• Simple Storage Service (S3)– Simple file system accessible via the internet

• Elastic Compute Cloud (EC2)– Virtual computer accessible via SSH– Linux or Windows– Equinox can run on these resources!

Page 16: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Amazon Web Services – a common model?

NimbusScience Clouds

Simple DB +Amazon RDSSimple DB +Amazon RDS

Simple Storage Service (S3)

Simple Storage Service (S3)

Simple Queue Service (SQS)

Simple Queue Service (SQS)

Virtual Private Cloud

Virtual Private Cloud

DevPayDevPay

Alexa Top SitesAlexa Top Sites

DevPayDevPay

Elastic Compute Cloud (EC2)

Elastic Compute Cloud (EC2)

Cloud FrontCloud Front

Elastic MapReduce

Elastic MapReduce

Flexible Payments Service (FPS)

Flexible Payments Service (FPS)

Alexa Web Information Serv.

Alexa Web Information Serv.

Page 17: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Tooling for Amazon Web Services

• Amazon EC2 management perspective– Starts, stops EC2 instances– Connects to Elastic Block storage– Bundles EC2 images– No connection to S3

• Support for Web application deployment– Integration with WTP

• http://aws.amazon.com/eclipse

Page 18: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

GoGrid.com – another example in details

Infrastructure

Application

Servers

Clients

Infrastructure [ IaaS ]

Compute Storage

Application / Software [ SaaS ]

UserInterface MachineInterface

Servers

Clients

Platform [ PaaS ]

Components Services

NetworkCloud StorageCloud Storage

Cloud Server ImagesCloud Server Images Cloud ConnectCloud Connect

F5 BigIP Load Balancing

F5 BigIP Load Balancing

Page 19: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

GoGrid.com – in a nutshell!?!

• Cloud Storage – Simple file system – NOT accessible via the internet!

• only from GoGrid Cloud Server Images

• Cloud Server Images– Virtual computer accessible via SSH– Linux or Windows– Equinox can run on these resources!

Page 20: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Google App Engine – Web apps on Google's infrastructure

Infrastructure

Application

Servers

Clients

Infrastructure [ IaaS ]

Compute Storage

Application / Software [ SaaS ]

UserInterface MachineInterface

Servers

Clients

Platform [ PaaS ]

Components Services

Network

Memcache Memcache

Datastore / BigTable

Datastore / BigTable

Google App Engine PythonGoogle App

Engine Python

Google App Engine JVMGoogle App Engine JVM

Goggle DocsGoggle Docs

Page 21: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Google AppEngine – in a nutshell!?!

• Storage– GoogleDocs– Big Table / Datastore

• Google AppEngine– Run applications in a JVM with limited capabilities

• Cannot create new threads• Read-only access to file system• Only a subset of the classes from the JRE standard edition

– Equinox can NOT run currently!• Can this be changed?

Page 22: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Orchestrate a Cloud application with Eclipse (II)

Botto

m u

p

g-Eclipse

Equinox

P2

Page 23: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Equinox, p2 – the Eclipse “platform”

Equinox • is the core of Eclipse• is an implementation of the OSGi R4 core specifications• is a set of bundles that implement various OSGi services• used on server side already

Dynamic management of applications

p2• Provisioning of components • Compose complex applications

Page 24: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Cloud Demo – Platform as a ServiceEC2 Instance

Java VMTomcat App Server

Equinox Servlet Bridge

Equinox / OSGi

consoleconsole

p2p2

Everything built with Eclipse technology

Page 25: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Cloud Demo – Software provisioning

EC2 InstanceJava VM

Tomcat App ServerEquinox Servlet

BridgeEquinox / OSGi

consoleconsole

p2p2

RAP applicationRAP application

p2metadata repository

Application metadataApplication metadata

p2artifact repository

Application artifactsApplication artifacts

Page 26: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Orchestrate a Cloud application with Eclipse

Botto

m u

p

g-Eclipse

Equinox

P2

RAP

RT

Page 27: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Summary

• A full XaaS story on the cloud was demonstrated by combining results from different Eclipse projects

• Interoperability and vendor lock-in?• Amazon provides Eclipse Tools for AWS (EclipseCon 2009)• Microsoft announced Eclipse Tools for Azure (EclipseSummit 2009)• g-Eclipse provides a middleware/infrastructure independent framework

• enables interoperability, choice, flexibility, …

• Equinox and its related projects can support Cloud applications• p2, RAP and other RT projects• Equinox can become the Cloud Operating System • Eclipse offers an Open Source Eco System for Cloud computing today!

Eclipse on the Cloud has a bright future!

Page 28: Cloud Computing and Eclipse technology - how does it fit together?

Cloud computing and Eclipse technology | © 2009 by Kornmayer, Knauer; made available under the EPL v1.0

Resources

• http://www.eclipse.org/geclipse– http://wiki.eclipse.org/G-Eclipse/AWS_Cloud_Getting_Started– http://live.eclipse.org/node/820

• http://www.eclipse.org/equinox/

• http://www.eclipse.org/rap

• http://www.theserverside.com/blogs/thread.tss?thread_id=57194