Stateless Deis Cluster on AWS

@jpizarrom

About Me

@jpizarrom

Lead Software Engineer @ Admetricks.com

About Deis

  • Multi-Host Docker PAAS
  • Heroku-inspired workflow
  • 100% open source

Docker PaaS

  • Bullet One
  • Bullet Two
  • Bullet Three

Heroku-inspired workflow

  • Git-Push-Deploy
  • Buidpacks

Buidpacks

  • https://github.com/heroku/heroku-buildpack-ruby

  • https://github.com/heroku/heroku-buildpack-nodejs

  • https://github.com/heroku/heroku-buildpack-clojure

  • https://github.com/heroku/heroku-buildpack-python

  • https://github.com/heroku/heroku-buildpack-java

  • https://github.com/heroku/heroku-buildpack-gradle

  • https://github.com/heroku/heroku-buildpack-grails

  • https://github.com/heroku/heroku-buildpack-scala

  • https://github.com/heroku/heroku-buildpack-play

  • https://github.com/heroku/heroku-buildpack-php

  • https://github.com/heroku/heroku-buildpack-go

Open Source

Build Release Run

System Diagram

Control Plane

Data Plane

Router Mesh

Stateless

Default CF stack

ETCD isolation

CF stacks

  • deis control
  • deis data plane

Deis Control

"  etcd2:",
"    advertise-client-urls: http://$private_ipv4:2379",
"    data-dir: /var/lib/etcd2",
"    discovery: https://discovery.etcd.io/XXX",
"    initial-advertise-peer-urls: http://$private_ipv4:2380",
"    listen-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001",
"    listen-peer-urls: http://$private_ipv4:2380,http://$private_ipv4:7001",
"  fleet:",
"    metadata: controlPlane=true,routerMesh=true",
"    public-ip: $private_ipv4",

Deis DataPlane

"  etcd2:",
"    advertise-client-urls: http://$private_ipv4:2379",
"    data-dir: /var/lib/etcd2",
"    discovery: https://discovery.etcd.io/XXX",
"    initial-advertise-peer-urls: http://$private_ipv4:2380",
"    listen-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001",
"    listen-peer-urls: http://$private_ipv4:2380,http://$private_ipv4:7001",
"    proxy: on",
"  fleet:",
"    metadata: dataPlane=true",
"    public-ip: $private_ipv4",

Isolate the Application

?

References

Stateless Deis on AWS

By Juan Pizarro

Stateless Deis on AWS

  • 1,144