Platform
as a
Service
Roger Leite
About Me
@rogerleite
1up4dev.org
rogerleite
About Me
Commiter of some projects like
* Openruko (link)
* HTTPI (link)
* HttpMonkey (link)
Slides based on my
experience with OpenRuko
Disclaimer
Cloud
Definitions
* as a Service
Cloud “classic” Pyramid
IaaS
PaaS
SaaS
CloudIaas
Infrastructure
as a Service
CloudPaas
Platform
as a Service
CloudSaas
Software
as a Service
Outsource
headache
the
Bynary assets
aren' hard ...
Storing metrics
and rendering
graphs ...
Scale
everything is
easy ...
until you need
No Bullet!Silver
Silver bullet
you say?
Inside with love
Heroku
Reality
$ git push
# open The Doors
# provision
# deploy
# check if is not on Limbo
$ open http...
on your terminal
Dreamlvl1
* check user keys
* handle git stream
* Api Server will provision
and deploy
* output all logs
open The Doors
Dreamlvl2
* start a build container
* identify buildpack
* on Ruby buildpack
** bundle install
** generates a Foreman file if necessary
** set env vars
* on success, release
provision ...
Dreamlvl3
* start a base container
* download the new slug
* start worker via
Foreman
* notify http routing
about the new route
deploy ...
Openruko - overview
git push
provision
deploy
Openruko - overview
Limbo
on
failure
goes
to
Logs!
your only
chance to
escape
from Limbo
are
Philosophies
* Unix Process Model to
Web Apps
* Ephemeralization
* Twelve-Factor App
Unix Process Model
to web apps
Process types
vs
Processes
http://adam.heroku.
com/past/2011/5/9/applying_the_unix_process_model_to_web_apps
Ephemeralization
"The ability of technological
advancement to do 'more and
more with less and less until
eventually you can do everything
with nothing'" by Wiki
http://adam.heroku.com/past/2011/4/7/ephemera
Twelve-factor app
Methodology for building software-
as-a-service apps
* Dependencies
* Config
* Backing Services
Even if is not your case, is a great
read!
http://12factor.net/
Mentions!
Cloud computing
http://en.wikipedia.org/wiki/Cloud_computing
How Heroku Works
https://devcenter.heroku.com/articles/how-heroku-works
Openruko
https://github.com/openruko
The twelve factor apps and openruko
http://www.slideshare.net/nuxlli/the-twelve-factor-apps-and-openruko
Applying the unix process model to web apps
http://adam.heroku.
com/past/2011/5/9/applying_the_unix_process_model_to_web_apps/
Ephemeralization
http://adam.heroku.com/past/2011/4/7/ephemeralization/
Cloud Services by Adam Wiggins http://www.slideshare.net/adamwiggins/cloud-
services?from=ss_embed
The Twelve-Factor App http://12factor.net/
kirby Ferguson: Embrace the remix http://www.ted.
com/talks/kirby_ferguson_embrace_the_remix.html
Obrigado!
(thank you!)
@rogerleite
1up4dev.org
rogerleite
we’re hiring!
desenvolvimento@akatus.com

Internals of OpenRuko PaaS, an open source Heroku clone implementation