50

Java Night 2010 SteamCannon

Embed Size (px)

Citation preview

Page 1: Java Night 2010 SteamCannon
Page 2: Java Night 2010 SteamCannon

SteamCannonPlatform-as-a-Service by JBossMarek Goldmann | Java Night 2010 | Utrecht, NL

Page 3: Java Night 2010 SteamCannon

Marek, who?

• • JBoss Developer

• Cloud-relatedprojects: (lead), SteamCannon

• Part of • Electronic music lover

Page 4: Java Night 2010 SteamCannon

Agenda

• Some terminology• IaaS, PaaS, EC2, Image, WTF,

Instance...• SteamCannon overview

• What? Where? How?• Demo time

• Shot an app into the Cloud!

Page 5: Java Night 2010 SteamCannon

Terminology and background

Page 6: Java Night 2010 SteamCannon

Two roles

• Developer• User

Page 7: Java Night 2010 SteamCannon

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

Page 8: Java Night 2010 SteamCannon

IaaS

Page 9: Java Night 2010 SteamCannon

• Developer (hidden role)• Has: hardware• Talks about: disk, network, CPU• Installs: operating system

• User• Talks about: operating system

IaaS

Page 10: Java Night 2010 SteamCannon

• Amazon EC2• Rackspace

IaaS examples

Page 11: Java Night 2010 SteamCannon

Image / appliance

• Complete VM• A template• We use to build our

images

Page 12: Java Night 2010 SteamCannon

Instance

• A server launched from an image

Page 13: Java Night 2010 SteamCannon

But IaaS is pretty barren...

Page 14: Java Night 2010 SteamCannon
Page 15: Java Night 2010 SteamCannon
Page 16: Java Night 2010 SteamCannon

PaaS

Page 17: Java Night 2010 SteamCannon

• Developer• Has: operating system• Talks about: partitions, users• Installs: application server, database

• User• Talks about: datasources,

applications

PaaS

Page 18: Java Night 2010 SteamCannon

• Google AppEngine• Heroku (Ruby)

PaaS examples

Page 19: Java Night 2010 SteamCannon

Platform is the contract your

application targets

Page 20: Java Night 2010 SteamCannon

IaaS – undifferentiated

servers

Page 21: Java Night 2010 SteamCannon

PaaS – servers working together

Page 22: Java Night 2010 SteamCannon

Platform isn’t only the APIs or the language

Page 23: Java Night 2010 SteamCannon

Platform is the actual implementation too!

Page 24: Java Night 2010 SteamCannon

Application

• Collection of components, services and data solving some problem

• May be Java, Ruby, PHP, ... or a mixture!

Page 25: Java Night 2010 SteamCannon

Don’t get hung up on .wars and .ears!

Page 26: Java Night 2010 SteamCannon

PaaS is way more interesting for

application developer than IaaS

Page 27: Java Night 2010 SteamCannon

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

Page 28: Java Night 2010 SteamCannon

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

SteamCannon

Page 29: Java Night 2010 SteamCannon

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

SteamCannon

YOU!

Page 30: Java Night 2010 SteamCannon

Load Balancer

App Server

Database

App ServerApp Server

Page 31: Java Night 2010 SteamCannon

How we create these servers?

Page 32: Java Night 2010 SteamCannon
Page 33: Java Night 2010 SteamCannon

name: appserverversion: 1release: 5summary: SteamCannon back-end appliancehardware: memory: 2048 partitions: "/": size: 4appliances: - _basepackages: includes: - jboss-as6 - jboss-as6-cloud-profiles - torquebox-jruby - torquebox-deployers - torquebox-cloud-profiles-deployerspost: base: - "echo -e '\n - JBossAS' >> /etc/sysconfig/steamcannon-agent"

Page 34: Java Night 2010 SteamCannon

$ boxgrinder-build \ appserver.appl -p ec2 -d ami

Page 35: Java Night 2010 SteamCannon

SteamCannon portfolio

• Front-end: Apache HTTPD, mod_cluster• Appserver: JBoss AS 6 + TorqueBox• Database: PostgreSQL

• Sandbox: JBoss AS + TorqueBox + PostgreSQL

Page 36: Java Night 2010 SteamCannon
Page 37: Java Night 2010 SteamCannon

SteamCannon

Page 38: Java Night 2010 SteamCannon
Page 39: Java Night 2010 SteamCannon

SteamCannon terminology

• Platform• Environment• Artifact

Page 40: Java Night 2010 SteamCannon

Platforms

• JBoss 2-Tier• JBoss 3-Tier• Developer Standalone

Page 41: Java Night 2010 SteamCannon

Environments

• My Sandbox• Chicken• Staging• Bacon• Production• Steven• Experimental

Page 42: Java Night 2010 SteamCannon

Artifact

• Application• Datasource

Page 43: Java Night 2010 SteamCannon

Demo

Page 44: Java Night 2010 SteamCannon

How it works

1.Nodes are launched2.Nodes are configured3.Applications are deployed to nodes

Page 45: Java Night 2010 SteamCannon

We can deploy Rails apps too!

Page 46: Java Night 2010 SteamCannon

SC main features

• Click and deploy even complex, multi-artifacts applications

• Grow your cluster using one click

Page 47: Java Night 2010 SteamCannon

Future directions• REST API• Private clouds• Additional platforms

• Infinispan• HornetQ

• Improved UI/UX/Workflows• Bundling artifacts as applications• Movement between environments

Page 48: Java Night 2010 SteamCannon

Try it!

• http://steamcannon.org/• http://boxgrinder.org/• http://steamcannon.org/try/• Download the VMware image• Boot the AMI

Page 49: Java Night 2010 SteamCannon

Q&A

@marekgoldmann@steamcannon

#steamcannon