Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Managing containers: requirements, options and best practices

Managing containers: requirements, options and best practices

Michael Hausenblas

December 16, 2015
Tweet

More Decks by Michael Hausenblas

Other Decks in Technology

Transcript

  1. © 2015 Mesosphere, Inc. All Rights Reserved. MANAGING CONTAINERS: REQUIREMENTS,

    OPTIONS AND BEST PRACTICES 1 Michael Hausenblas | Docker Katowice | 2015-12-16
  2. © 2015 Mesosphere, Inc. All Rights Reserved. CONTENDERS 7 •

    Docker Swarm • Kubernetes • Apache Mesos+Marathon • Nomad • Firmament
  3. © 2015 Mesosphere, Inc. All Rights Reserved. DOCKER SWARM 9

    http://www.slideshare.net/snrism/swarm-container-cluster-service
  4. © 2015 Mesosphere, Inc. All Rights Reserved. APACHE MESOS +

    MARATHON 14 http://mesos.berkeley.edu/mesos_tech_report.pdf Marathon
 scheduler Spark
 scheduler Spark
 executor Marathon
 executor Spark
 executor Marathon
 executor Mesos Agent Mesos Agent Mesos Agent Mesos
 Master Standby
 Master Standby
 Master Framework
  5. © 2015 Mesosphere, Inc. All Rights Reserved. MARATHON
 APP SPEC

    15 { "id": "webserver", "cmd": "python3 -m http.server 8080", "cpus": 0.5, "mem": 32.0, "container": { "type": "DOCKER", "docker": { "image": "python:3", "network": "BRIDGE", "portMappings": [ { "containerPort": 8080, "hostPort": 0 } ] } }, "acceptedResourceRoles": [ "slave_public" ], "constraints": [ [ "hostname", "UNIQUE" ] ] }
  6. © 2015 Mesosphere, Inc. All Rights Reserved. STATEFUL SERVICES 24

    # a stateless, centralized service cat /dev/random # a stateless, distributed service http PUT http://1.2.3.4:8080/v2/apps < app.json # a stateful, centralized service echo 'lolwut' > ./some.dat # a stateful, distributed service hadoop fs -put ./some.dat hdfs:///user/me/some.dat
  7. © 2015 Mesosphere, Inc. All Rights Reserved. OK SMARTY-PANTS, WHICH

    CONTAINER MANAGEMENT SYSTEM SHOULD I USE? 27
  8. © 2015 Mesosphere, Inc. All Rights Reserved. 28 I don't

    really mind, just DON'T WRITE IT YOURSELF. Pretty please. With sugar on top of it.
  9. © 2015 Mesosphere, Inc. All Rights Reserved. 32 Use Marathon,

    Kubernetes, etc. >>
 write your own container manager >>
 manually managing containers http://www.cloudtp.com/2015/11/30/docker-container-landscape/
  10. © 2015 Mesosphere, Inc. All Rights Reserved. 35 WHERE CAN


    I LEARN MORE? http://shop.oreilly.com/product/9781939902184.do 35 http://shop.oreilly.com/product/0636920035671.do
  11. © 2015 Mesosphere, Inc. All Rights Reserved. 36 WHERE CAN


    I LEARN MORE? http://shop.oreilly.com/product/0636920039952.do https://manning.com/books/mesos-in-action 36
  12. © 2015 Mesosphere, Inc. All Rights Reserved. 37 WHERE CAN


    I LEARN MORE? 37 http://shop.oreilly.com/product/0636920043874.do http://www.oreilly.com/webops-perf/free/kubernetes.csp http://mhausenblas.info/dnsd/toc.pdf
  13. © 2015 Mesosphere, Inc. All Rights Reserved. 38 WHERE CAN


    I LEARN MORE? http://p24e.io 38 http://k8s.info