50

SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 2: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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

Page 3: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Marek, who?

• • JBoss Developer

• Cloud-relatedprojects: (lead), SteamCannon

• Part of • Electronic music lover

Page 4: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Agenda

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

Instance...• SteamCannon overview

• What? Where? How?• Demo time

• Shot an app into the Cloud!

Page 5: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Terminology and background

Page 6: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Two roles

• Developer• User

Page 7: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

Page 8: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

IaaS

Page 9: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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

• User• Talks about: operating system

IaaS

Page 10: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

• Amazon EC2• Rackspace

IaaS examples

Page 11: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Image / appliance

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

images

Page 12: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Instance

• A server launched from an image

Page 13: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

But IaaS is pretty barren...

Page 14: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 15: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 16: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

PaaS

Page 17: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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

• User• Talks about: datasources,

applications

PaaS

Page 18: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

• Google AppEngine• Heroku (Ruby)

PaaS examples

Page 19: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Platform is the contract your

application targets

Page 20: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

IaaS – undifferentiated

servers

Page 21: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

PaaS – servers working together

Page 22: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Platform isn’t only the APIs or the language

Page 23: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Platform is the actual implementation too!

Page 24: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Application

• Collection of components, services and data solving some problem

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

Page 25: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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

Page 26: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

PaaS is way more interesting for

application developer than IaaS

Page 27: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

Page 28: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

SteamCannon

Page 29: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Software(SaaS)

Platform(PaaS)

Infrastructure(IaaS)

SteamCannon

YOU!

Page 30: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Load Balancer

App Server

Database

App ServerApp Server

Page 31: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

How we create these servers?

Page 32: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 33: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

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

Page 35: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

SteamCannon portfolio

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

• Sandbox: JBoss AS + TorqueBox + PostgreSQL

Page 36: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 37: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

SteamCannon

Page 38: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails
Page 39: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

SteamCannon terminology

• Platform• Environment• Artifact

Page 40: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Platforms

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

Page 41: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Environments

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

Page 42: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Artifact

• Application• Datasource

Page 43: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Demo

Page 44: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

How it works

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

Page 45: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

We can deploy Rails apps too!

Page 46: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

SC main features

• Click and deploy even complex, multi-artifacts applications

• Grow your cluster using one click

Page 47: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Future directions• REST API• Private clouds• Additional platforms

• Infinispan• HornetQ

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

Page 48: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Try it!

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

Page 49: SteamCannon€¦ · Artifact • Application • Datasource. Demo. How it works 1.Nodes are launched 2.Nodes are configured 3.Applications are deployed to nodes. We can deploy Rails

Q&A

@marekgoldmann@steamcannon

#steamcannon